1 2 Previous Next 17 Replies Latest reply on Jan 30, 2007 9:41 AM by David Lloyd

    web console problem

    Tom Baeyens Master

      hi david,

      could you check out this problem ?

      when i do a full build of the jpdl suite from head, i can create and deploy a process from the designer. but when i start a new process instance from this definition, i get the following exception. Could you have a look asap ?

      Also, can i just take HEAD to build the 3.2.Beta2 ? (after this problem is fixed ?)

      11:37:18,656 DEBUG [Bind] (Re-)binding org.jbpm.webapp.tag.jbpm.ui.Bind@1a99295
      11:37:18,656 DEBUG [Bind] No request parameter '/common/template.xhtml @60,63 name="tdid": ValueExpression[tdid]' found
      11:37:18,656 DEBUG [Bind] In restoreState! org.jbpm.webapp.tag.jbpm.ui.Bind@1d694da
      11:37:18,656 DEBUG [Bind] (Re-)binding org.jbpm.webapp.tag.jbpm.ui.Bind@1d694da
      11:37:18,656 DEBUG [Bind] No request parameter '/common/template.xhtml @61,74 name="piid": ValueExpression[piid]' found
      11:37:18,656 DEBUG [Bind] In restoreState! org.jbpm.webapp.tag.jbpm.ui.Bind@c67f69
      11:37:18,656 DEBUG [Bind] (Re-)binding org.jbpm.webapp.tag.jbpm.ui.Bind@c67f69
      11:37:18,656 DEBUG [Bind] No request parameter '/common/template.xhtml @62,66 name="pdid": ValueExpression[pdid]' found
      11:37:18,671 ERROR [STDERR] 29-jan-2007 11:37:18 com.sun.faces.lifecycle.LifecycleImpl phase
      WARNING: executePhase(RESTORE_VIEW 1,com.sun.faces.context.FacesContextImpl@54864c) threw exception
      java.lang.IllegalStateException: org.jbpm.webapp.bean.ProcessBean$1
       at javax.faces.component.StateHolderSaver.restore(StateHolderSaver.java:98)
       at javax.faces.component.UIComponentBase.restoreAttachedState(UIComponentBase.java:1394)
       at javax.faces.component.UIComponentBase.restoreState(UIComponentBase.java:1260)
       at javax.faces.component.UICommand.restoreState(UICommand.java:332)
       at javax.faces.component.html.HtmlCommandLink.restoreState(HtmlCommandLink.java:876)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1129)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1145)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1145)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1145)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1145)
       at org.jbpm.webapp.tag.jbpm.ui.Search.processRestoreState(Search.java:126)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1145)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1145)
       at com.sun.faces.application.StateManagerImpl.restoreView(StateManagerImpl.java:173)
       at org.ajax4jsf.framework.ajax.AjaxStateManager.restoreView(AjaxStateManager.java:76)
       at com.sun.faces.application.ViewHandlerImpl.restoreView(ViewHandlerImpl.java:290)
       at org.jbpm.webapp.application.JbpmViewHandler.restoreView(JbpmViewHandler.java:62)
       at com.sun.facelets.FaceletViewHandler.restoreView(FaceletViewHandler.java:317)
       at org.ajax4jsf.framework.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:109)
       at org.ajax4jsf.framework.ajax.AjaxViewHandler.restoreView(AjaxViewHandler.java:140)
       at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:142)
       at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:248)
       at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
       at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:75)
       at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:213)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
       at org.jbpm.webapp.filter.LogFilter.doFilter(LogFilter.java:59)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
       at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
       at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
       at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
       at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
       at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)
       at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
       at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
       at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
       at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
       at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
       at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
       at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
       at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
       at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
       at java.lang.Thread.run(Thread.java:595)
      11:37:18,671 DEBUG [JbpmPhaseListener] After phase RESTORE_VIEW 1
      11:37:18,671 DEBUG [AjaxPhaseListener] Process after phase RESTORE_VIEW 1
      11:37:18,671 ERROR [[FacesServlet]] Servlet.service() for servlet FacesServlet threw exception
      java.lang.IllegalStateException: org.jbpm.webapp.bean.ProcessBean$1
       at javax.faces.component.StateHolderSaver.restore(StateHolderSaver.java:98)
       at javax.faces.component.UIComponentBase.restoreAttachedState(UIComponentBase.java:1394)
       at javax.faces.component.UIComponentBase.restoreState(UIComponentBase.java:1260)
       at javax.faces.component.UICommand.restoreState(UICommand.java:332)
       at javax.faces.component.html.HtmlCommandLink.restoreState(HtmlCommandLink.java:876)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1129)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1145)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1145)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1145)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1145)
       at org.jbpm.webapp.tag.jbpm.ui.Search.processRestoreState(Search.java:126)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1145)
       at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1145)
       at com.sun.faces.application.StateManagerImpl.restoreView(StateManagerImpl.java:173)
       at org.ajax4jsf.framework.ajax.AjaxStateManager.restoreView(AjaxStateManager.java:76)
       at com.sun.faces.application.ViewHandlerImpl.restoreView(ViewHandlerImpl.java:290)
       at org.jbpm.webapp.application.JbpmViewHandler.restoreView(JbpmViewHandler.java:62)
       at com.sun.facelets.FaceletViewHandler.restoreView(FaceletViewHandler.java:317)
       at org.ajax4jsf.framework.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:109)
       at org.ajax4jsf.framework.ajax.AjaxViewHandler.restoreView(AjaxViewHandler.java:140)
       at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:142)
       at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:248)
       at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
       at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:75)
       at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:213)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
       at org.jbpm.webapp.filter.LogFilter.doFilter(LogFilter.java:59)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
       at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
       at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
       at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
       at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
       at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)
       at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
       at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
       at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
       at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
       at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
       at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
       at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
       at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
       at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
       at java.lang.Thread.run(Thread.java:595)



        • 1. Re: web console problem
          Tom Baeyens Master

          skype me in case you have problems reproducing this.

          • 2. Re: web console problem
            Tom Baeyens Master

            another thing is that i added jakarta-io references in the build/base.project.build.xml. first in the up-to-date check and second in the libs classpath.

            please, keep this in mind for next classpath updates.

            (yes i know i should document this better :-)

            • 3. Re: web console problem
              David Lloyd Master

              Ok, I'm checking this out - looking at it I'm suddenly 100% sure that it is because these action listener classes are anonymous inner classes. I'll do up a quick fix...

              • 4. Re: web console problem
                Tom Baeyens Master

                cool. when your fix is done, try if you can do a full suite build.

                look at the jpdl.test.buld target in build/build.xml that should give you an idea on how to build and test the suite bundle. you can even use the script. the exec tasks won't work on linux and you'll have to do those by hand.

                let me know how it goes.

                • 5. Re: web console problem
                  David Lloyd Master

                  Ok, should be fixed now. Sorry about the library deps problem.

                  • 6. Re: web console problem
                    Tom Baeyens Master

                    the initial problem is resolved.

                    now i found a new problem: i created a minimal process with a start task with 2 variables, a and b. then, i first pressed save in the task form that was presented after creation of the process instance. then i pressed the end task task button and this jbpm console error message (not a stacktrace) appeared :


                    Error
                    Show detailsError taking transition: task node does not have leaving transition 'End Task'


                    please build the suite and make a few processes, deploy and test them in the console.

                    • 7. Re: web console problem
                      Tom Baeyens Master

                      also it appears that the console has become very slow. do you see the same ? do you think the cause is the navigation layout and increased page contents ?

                      • 8. Re: web console problem
                        David Lloyd Master

                         

                        "tom.baeyens@jboss.com" wrote:
                        the initial problem is resolved.

                        now i found a new problem: i created a minimal process with a start task with 2 variables, a and b. then, i first pressed save in the task form that was presented after creation of the process instance. then i pressed the end task task button and this jbpm console error message (not a stacktrace) appeared :

                        Error
                        Show detailsError taking transition: task node does not have leaving transition 'End Task'


                        please build the suite and make a few processes, deploy and test them in the console.


                        This happens when you have a transition button that uses a to="" attribute that does not match the name of any actual trasition in the process definition. Older versions of the websale example had this problem. The latest one in CVS works for me.

                        If you have only one exiting transition, don't specify a destination transition and the default one should be taken.

                        • 9. Re: web console problem
                          David Lloyd Master

                           

                          "tom.baeyens@jboss.com" wrote:
                          also it appears that the console has become very slow. do you see the same ? do you think the cause is the navigation layout and increased page contents ?


                          My laptop is pretty fast so I didn't notice anything too slow. But I think I'm going to run the console with a profiler just to see if there are any bits that can be optimized.

                          • 10. Re: web console problem
                            bazoo Newbie

                            If you use the Designer to build a transition from one node to another it creates an unnamed transition with an attribute of to="" which is by default filled out with the name of the node the transition is pointing to. It seems a bit strange to then force the user to then go in and delete the to="" attribute? Anyway, wouldn't that mean that the transition doesn't actually go anywhere?

                            Shouldn't it look up the transition name="" attribute instead?

                            • 11. Re: web console problem
                              David Lloyd Master

                              I agree this is a problem. The current logic of the transition button is that if the attribute is not there, or if its value is "default", then the default transition will be taken. A value of "" will translate into a lookup for a transition named ""... this is not really optimal.

                              Koen, is it possible to modify the GPD so that if there is only one transition, that the "to" attribute is not emitted?

                              • 12. Re: web console problem
                                Tom Baeyens Master

                                 

                                "david.lloyd@jboss.com" wrote:
                                "tom.baeyens@jboss.com" wrote:
                                also it appears that the console has become very slow. do you see the same ? do you think the cause is the navigation layout and increased page contents ?


                                My laptop is pretty fast so I didn't notice anything too slow. But I think I'm going to run the console with a profiler just to see if there are any bits that can be optimized.


                                then this will probably be something else on my system. i'll try again tomorrow. before the navigation rework, it took approx .5 second for a page to show. now it was approx 7-10 seconds. if you don't have this problem, it will be something local. i'll figure it out first.

                                profiling should not be necessary at this point.

                                • 13. Re: web console problem
                                  Tom Baeyens Master

                                   

                                  "david.lloyd@jboss.com" wrote:
                                  I agree this is a problem. The current logic of the transition button is that if the attribute is not there, or if its value is "default", then the default transition will be taken. A value of "" will translate into a lookup for a transition named ""... this is not really optimal.

                                  Koen, is it possible to modify the GPD so that if there is only one transition, that the "to" attribute is not emitted?


                                  i don't quite get the point you're trying to make. 'to' is a required attribute on the transition. only the name is optional. it should be unique in case there are multiple leaving transitions.

                                  afaik, the designer already left out the name in case there is only 1. but in case the designer should put in name="", that should work as well.

                                  mayeb the problem is in the forms.xml generation...

                                  if you want to reproduce this, just build the suite from head and create a simple new process with a start state and 1 task node. add a task to the start state. generate a minimal form for it, deploy the process, start it and end the start task.

                                  • 14. Re: web console problem
                                    David Lloyd Master

                                     

                                    "tom.baeyens@jboss.com" wrote:
                                    i don't quite get the point you're trying to make. 'to' is a required attribute on the transition. only the name is optional. it should be unique in case there are multiple leaving transitions.


                                    I'm not talking about the process definition, I'm talking about the task form buttons (the actual XHTML being produced). Sorry if I was unclear.


                                    1 2 Previous Next