Marshall Shi created SHINDIG-1893:
-------------------------------------

             Summary: Null pointer exception in gadget template processing
                 Key: SHINDIG-1893
                 URL: https://issues.apache.org/jira/browse/SHINDIG-1893
             Project: Shindig
          Issue Type: Bug
          Components: Java
    Affects Versions: 2.5.0-beta5
            Reporter: Marshall Shi


During our gadget development, several gadgets are referring to the same gadget 
template. The rendering of those gadgets is problematic sometimes.

When the problem occur, the Java stack trace look like this:

Stack Dump = java.lang.NullPointerException 
       at org.apache.xerces.dom.ParentNode.nodeListItem(Unknown Source) 
       at org.apache.xerces.dom.ParentNode.item(Unknown Source) 
       at 
org.apache.shindig.gadgets.templates.DefaultTemplateProcessor.processChildNodes(DefaultTemplateProcessor.java:134)
 
       at 
org.apache.shindig.gadgets.templates.tags.TemplateBasedTagHandler.processTemplate(TemplateBasedTagHandler.java:68)
 
       at 
org.apache.shindig.gadgets.templates.tags.TemplateBasedTagHandler.process(TemplateBasedTagHandler.java:58)
 
       at 
org.apache.shindig.gadgets.templates.XmlTemplateLibrary$LibraryTagHandler.process(XmlTemplateLibrary.java:305)
 
       at 
org.apache.shindig.gadgets.templates.DefaultTemplateProcessor.processElementInner(DefaultTemplateProcessor.java:341)
 
       at 
org.apache.shindig.gadgets.templates.DefaultTemplateProcessor.processElement(DefaultTemplateProcessor.java:246)
 
       at 
org.apache.shindig.gadgets.templates.DefaultTemplateProcessor.processNode(DefaultTemplateProcessor.java:154)
 
       at 
org.apache.shindig.gadgets.templates.DefaultTemplateProcessor.processChildNodes(DefaultTemplateProcessor.java:134)
 
       at 
org.apache.shindig.gadgets.templates.DefaultTemplateProcessor.processTemplate(DefaultTemplateProcessor.java:126)
 
       at 
org.apache.shindig.gadgets.rewrite.TemplateRewriter.executeTemplates(TemplateRewriter.java:357)
 
       at 
org.apache.shindig.gadgets.rewrite.TemplateRewriter.rewriteImpl(TemplateRewriter.java:177)
 
       at 
org.apache.shindig.gadgets.rewrite.TemplateRewriter.rewrite(TemplateRewriter.java:129)
 
       at 
org.apache.shindig.gadgets.render.HtmlRenderer.render(HtmlRenderer.java:88) 
       at org.apache.shindig.gadgets.render.Renderer.render(Renderer.java:101) 
       at 
org.apache.shindig.gadgets.servlet.GadgetRenderingServlet.render(GadgetRenderingServlet.java:112)
 
       at 
org.apache.shindig.gadgets.servlet.GadgetRenderingServlet.doGet(GadgetRenderingServlet.java:90)
 
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:575) 

It should be a concurrent issue of xerces API when parsing the template. 
Proposed fix is to add synchronized to the key XML element.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to