Menu

#51 specification.xml in .unimodoc directory not read properly, XMLIOTest fails as well

0.0.5
open
nobody
None
medium
2015-11-02
2015-04-03
No

On server shutdown, the modules are properly written into the specification.xml-file in the home/.unimodoc directory. However, on the next server start up, it seems that UniMoDoc is unable to read the xml-file properly.

This causes a ServletException caused by a NullPointerException:

javax.servlet.ServletException: Klasse de.unimodoc.web.beans.ApplicationBean kann nicht     instanziiert werden.
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:659)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

 com.sun.faces.mgbean.ManagedBeanCreationException: Klasse de.unimodoc.web.beans.ApplicationBean kann nicht instanziiert werden.
    com.sun.faces.mgbean.BeanBuilder.newBeanInstance(BeanBuilder.java:191)
    com.sun.faces.mgbean.BeanBuilder.build(BeanBuilder.java:100)
    com.sun.faces.mgbean.BeanManager.createAndPush(BeanManager.java:409)
    com.sun.faces.mgbean.BeanManager.create(BeanManager.java:269)
    com.sun.faces.el.ManagedBeanELResolver.resolveBean(ManagedBeanELResolver.java:257)
    com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:117)
    com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
    com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
    org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:80)
        org.apache.el.parser.AstValue.getValue(AstValue.java:135)
        org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
        com.sun.faces.facelets.el.ELText$ELTextVariable.writeText(ELText.java:238)
    com.sun.faces.facelets.compiler.TextInstruction.write(TextInstruction.java:85)
    com.sun.faces.facelets.compiler.UIInstructions.encodeBegin(UIInstructions.java:82)
    com.sun.faces.facelets.compiler.UILeaf.encodeAll(UILeaf.java:183)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)

 com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:456)
    com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133)
        javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
    javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
org.apache.myfaces.tomahawk.application.ResourceViewHandlerWrapper.renderView(ResourceViewHandlerWrapper.java:169)
    com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

root cause

java.lang.NullPointerException
    de.unimodoc.data.project.Project.getModuleByQName(Project.java:154)
    de.unimodoc.data.project.Project.getRootModule(Project.java:205)
    de.unimodoc.data.project.Project.getName(Project.java:98)
    de.unimodoc.web.beans.ApplicationBean.updateProjectStrings(ApplicationBean.java:56)
    de.unimodoc.web.beans.ApplicationBean.<init>(ApplicationBean.java:49)
    sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    java.lang.reflect.Constructor.newInstance(Constructor.java:408)
    java.lang.Class.newInstance(Class.java:438)
    com.sun.faces.mgbean.BeanBuilder.newBeanInstance(BeanBuilder.java:186)
    com.sun.faces.mgbean.BeanBuilder.build(BeanBuilder.java:100)
    com.sun.faces.mgbean.BeanManager.createAndPush(BeanManager.java:409)
    com.sun.faces.mgbean.BeanManager.create(BeanManager.java:269)
    com.sun.faces.el.ManagedBeanELResolver.resolveBean(ManagedBeanELResolver.java:257)
    com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:117)
    com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
    com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
    org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:80)
    org.apache.el.parser.AstValue.getValue(AstValue.java:135)
    org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
    com.sun.faces.facelets.el.ELText$ELTextVariable.writeText(ELText.java:238)
    com.sun.faces.facelets.compiler.TextInstruction.write(TextInstruction.java:85)
    com.sun.faces.facelets.compiler.UIInstructions.encodeBegin(UIInstructions.java:82)
    com.sun.faces.facelets.compiler.UILeaf.encodeAll(UILeaf.java:183)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
    com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:456)
    com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133)
    javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
    javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
    org.apache.myfaces.tomahawk.application.ResourceViewHandlerWrapper.renderView(ResourceViewHandlerWrapper.java:169)
    com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

The test case "XMLIOTest" fails as well. I guess this correlates with the observed behaviour described above.

Discussion

  • Ivan Bogicevic

    Ivan Bogicevic - 2015-11-02

    Still occurs with Java 1.8. Occurence could depend on wrong Tomcat-Version (see Readme.txt for correct one), but I have not verified this.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.