0 Replies Latest reply on Jul 19, 2007 12:35 PM by jakeherringbone

    NullPointer exception in /jbpm-console/sa/procins.jsf

    jakeherringbone

      Hi jBPM folks,

      I'm hoping to use the jbpm-console more or less out-of-box as an admin GUI for workflow. I'm working on an evaluation prototype, and I haven't done any JSF before, so you may consider me n00b.

      I deployed a process archive using the jbpm designer. I'm able to see my process definition in the console. But when I click the link to "Start" my process, I get a null pointer exception. Looks like a Gravel JSF component is trying to sort a list of things, but in the source file procins.xhtml, I only see two references to sorting, and they both have guards on a null condition. That said, there may be nulls in the object graph they're using which blow it up.

      I realize it's likely that my process definition is to blame, but I can't tell from the error what I would need to change in it. How do I debug this sort of thing? Can I get the JSF error to give me the line number in the source file? Can I modify some source to get more information?

      Also, I guess I'd file a bug in JIRA but thought I should post here first.

      jBPM-jPDL 3.2.1 web console, process designer 3.1.0beta1, jetty 6.1.1

      Stack:

      HTTP ERROR: 500
      
      INTERNAL_SERVER_ERROR
      
      RequestURI=/jbpm-console/sa/procins.jsf
      Caused by:
      
      java.lang.NullPointerException
       at java.lang.String.compareTo(String.java:997)
       at java.lang.String.compareTo(String.java:90)
       at org.jboss.gravel.data.action.SortActionListener$ELComparator.compare(SortActionListener.java:140)
       at java.util.Arrays.mergeSort(Arrays.java:1284)
       at java.util.Arrays.sort(Arrays.java:1223)
       at java.util.Collections.sort(Collections.java:159)
       at edu.emory.mathcs.backport.java.util.Collections.sort(Collections.java:31)
       at org.jboss.gravel.data.action.SortActionListener.processAction(SortActionListener.java:83)
       at javax.faces.event.ActionEvent.processListener(ActionEvent.java:77)
       at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:758)
       at javax.faces.component.UICommand.broadcast(UICommand.java:368)
       at org.jboss.gravel.action.handler.ResponseActionsHandler.onComponentPopulated(ResponseActionsHandler.java:24)
       at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:180)
       at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
       at com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.java:314)
       at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
       at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
       at com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.java:314)
       at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
       at org.jboss.gravel.common.handler.CollectionHandler.applyNextHandler(CollectionHandler.java:155)
       at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
       at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
       at com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.java:314)
       at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
       at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
       at com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.java:314)
       at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
       at com.sun.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:49)
       at com.sun.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:25)
       at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:248)
       at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:294)
       at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:273)
       at com.sun.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:143)
       at com.sun.facelets.tag.ui.DecorateHandler.apply(DecorateHandler.java:105)
       at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
       at com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.java:314)
       at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
       at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
       at com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.java:314)
       at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
       at com.sun.facelets.tag.ui.DefineHandler.apply(DefineHandler.java:58)
       at com.sun.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:128)
       at com.sun.facelets.impl.DefaultFaceletContext$TemplateManager.apply(DefaultFaceletContext.java:306)
       at com.sun.facelets.impl.DefaultFaceletContext.includeDefinition(DefaultFaceletContext.java:279)
       at com.sun.facelets.tag.ui.InsertHandler.apply(InsertHandler.java:68)
       at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
       at com.sun.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:49)
       at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
       at com.sun.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:25)
       at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:248)
       at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:294)
       at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:273)
       at com.sun.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:143)
       at com.sun.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:113)
       at com.sun.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:49)
       at com.sun.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:25)
       at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:248)
       at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:294)
       at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:273)
       at com.sun.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:143)
       at com.sun.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:113)
       at com.sun.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:49)
       at com.sun.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:25)
       at com.sun.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:95)
       at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:503)
       at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:546)
       at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:178)
       at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
       at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:248)
       at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
       at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)
       at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:367)
       at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)
       at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
       at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)
       at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)
       at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:146)
       at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
       at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
       at org.mortbay.jetty.Server.handle(Server.java:285)
       at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)
       at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:751)
       at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500)
       at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)
       at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)
       at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329)
       at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
      
      Powered by Jetty://