Author: rwesten
Date: Mon Mar  2 09:44:33 2015
New Revision: 1663231

URL: http://svn.apache.org/r1663231
Log:
STANBOL-1413: NPE are now checked when looking for freemaker templates in 
bundles; In addition the BundleTemplateLoader and ViewableWriter services are 
now immediate

Modified:
    
stanbol/branches/release-0.12/commons/freemarker/src/main/java/org/apache/stanbol/commons/freemarker/impl/BundleTemplateLoader.java
    
stanbol/branches/release-0.12/commons/web/viewable-writer/src/main/java/org/apache/stanbol/commons/viewable/writer/impl/ViewableWriter.java

Modified: 
stanbol/branches/release-0.12/commons/freemarker/src/main/java/org/apache/stanbol/commons/freemarker/impl/BundleTemplateLoader.java
URL: 
http://svn.apache.org/viewvc/stanbol/branches/release-0.12/commons/freemarker/src/main/java/org/apache/stanbol/commons/freemarker/impl/BundleTemplateLoader.java?rev=1663231&r1=1663230&r2=1663231&view=diff
==============================================================================
--- 
stanbol/branches/release-0.12/commons/freemarker/src/main/java/org/apache/stanbol/commons/freemarker/impl/BundleTemplateLoader.java
 (original)
+++ 
stanbol/branches/release-0.12/commons/freemarker/src/main/java/org/apache/stanbol/commons/freemarker/impl/BundleTemplateLoader.java
 Mon Mar  2 09:44:33 2015
@@ -38,7 +38,7 @@ import org.slf4j.LoggerFactory;
  * This Service provides an {@link TemplateLoader} that provides templates
  * relative to the {@link #TEMPLATES_PATH_IN_BUNDLES}.
  */
-@Component
+@Component(immediate=true)
 @Service(TemplateLoader.class)
 public class BundleTemplateLoader implements TemplateLoader{
        
@@ -114,7 +114,21 @@ public class BundleTemplateLoader implem
        }
        
        private boolean containsTemplates(Bundle bundle) {
-               return bundle.getResource(TEMPLATES_PATH_IN_BUNDLES) != null;
+           try {
+               return bundle.getResource(TEMPLATES_PATH_IN_BUNDLES) != null;
+           } catch(NullPointerException e){
+               //sometimes this call caused a
+               //java.lang.NullPointerException
+               //    at 
org.apache.felix.framework.BundleRevisionImpl.getResourceLocal(BundleRevisionImpl.java:495)
+               //    at 
org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1472)
+               //    at 
org.apache.felix.framework.BundleWiringImpl.getResourceByDelegation(BundleWiringImpl.java:1400)
+               //    at 
org.apache.felix.framework.Felix.getBundleResource(Felix.java:1600)
+               //    at 
org.apache.felix.framework.BundleImpl.getResource(BundleImpl.java:639)
+               //    at 
org.apache.stanbol.commons.freemarker.impl.BundleTemplateLoader.containsTemplates(BundleTemplateLoader.java:117)
+               log.warn(" ... unable to check for Path 
"+TEMPLATES_PATH_IN_BUNDLES
+                   +" in Bundle "+ bundle, e);
+               return false;
+           }
        }
        
 }

Modified: 
stanbol/branches/release-0.12/commons/web/viewable-writer/src/main/java/org/apache/stanbol/commons/viewable/writer/impl/ViewableWriter.java
URL: 
http://svn.apache.org/viewvc/stanbol/branches/release-0.12/commons/web/viewable-writer/src/main/java/org/apache/stanbol/commons/viewable/writer/impl/ViewableWriter.java?rev=1663231&r1=1663230&r2=1663231&view=diff
==============================================================================
--- 
stanbol/branches/release-0.12/commons/web/viewable-writer/src/main/java/org/apache/stanbol/commons/viewable/writer/impl/ViewableWriter.java
 (original)
+++ 
stanbol/branches/release-0.12/commons/web/viewable-writer/src/main/java/org/apache/stanbol/commons/viewable/writer/impl/ViewableWriter.java
 Mon Mar  2 09:44:33 2015
@@ -40,7 +40,7 @@ import org.apache.felix.scr.annotations.
 import org.apache.felix.scr.annotations.Reference;
 import org.apache.felix.scr.annotations.Service;
 
-@Component
+@Component(immediate=true)
 @Service(Object.class)
 @Property(name="javax.ws.rs", boolValue=true)
 @Produces(MediaType.TEXT_HTML)


Reply via email to