0 Replies Latest reply on Aug 4, 2008 11:02 PM by darthmaul

    Pageflow Not Creating JBPM Context Midway Thru Flow

    darthmaul

      I have created a pageflow that fails when a page contains controls like a converter and a rich:calendar.  By fails, I mean the pageflow simply rerenders the current page and loses the conversation.  Removing these controls allows the pageflow to proceed just fine.  I have compared the logs in the two situations and found something interesting.


      Here is when things fail:


      04 Aug 2008 15:59:38,541: DEBUG org.jbpm.graph.def.GraphElement - event 'before-signal' on 'Page(selection)' for 'Token(/)'
      04 Aug 2008 15:59:38,541: DEBUG org.jbpm.graph.def.GraphElement - event 'node-leave' on 'Page(selection)' for 'Token(/)'
      04 Aug 2008 15:59:38,541: DEBUG org.jbpm.graph.def.GraphElement - event 'transition' on 'Transition(setShippingPayment)' for 'Token(/)'
      04 Aug 2008 15:59:38,541: DEBUG org.jbpm.graph.def.GraphElement - event 'node-enter' on 'Page(setShippingPayment)' for 'Token(/)'
      04 Aug 2008 15:59:38,541: DEBUG org.jbpm.graph.def.GraphElement - event 'after-signal' on 'Page(selection)' for 'Token(/)'
      04 Aug 2008 15:59:38,541: DEBUG org.jbpm.JbpmContext - closing JbpmContext
      04 Aug 2008 15:59:38,811: DEBUG gov.nist.srm.persistence.Order - Order.getItems
      04 Aug 2008 16:00:13,602: DEBUG gov.nist.srm.persistence.Order - Order.getItems
      



      Here is when things work:


      04 Aug 2008 16:14:37,130: DEBUG org.jbpm.graph.def.GraphElement - event 'before-signal' on 'Page(selection)' for 'Token(/)'
      04 Aug 2008 16:14:37,130: DEBUG org.jbpm.graph.def.GraphElement - event 'node-leave' on 'Page(selection)' for 'Token(/)'
      04 Aug 2008 16:14:37,130: DEBUG org.jbpm.graph.def.GraphElement - event 'transition' on 'Transition(setShippingPayment)' for 'Token(/)'
      04 Aug 2008 16:14:37,130: DEBUG org.jbpm.graph.def.GraphElement - event 'node-enter' on 'Page(setShippingPayment)' for 'Token(/)'
      04 Aug 2008 16:14:37,130: DEBUG org.jbpm.graph.def.GraphElement - event 'after-signal' on 'Page(selection)' for 'Token(/)'
      04 Aug 2008 16:14:37,130: DEBUG org.jbpm.JbpmContext - closing JbpmContext
      04 Aug 2008 16:14:37,440: DEBUG gov.nist.srm.persistence.Order - Order.getItems
      04 Aug 2008 16:14:43,439: DEBUG gov.nist.srm.persistence.Order - Order.getItems
      04 Aug 2008 16:14:43,439: DEBUG org.jbpm.configuration.JbpmContextInfo - creating jbpm context with service factories '[]'
      04 Aug 2008 16:14:43,439: DEBUG org.jbpm.JbpmContext - creating org.jbpm.JbpmContext@10d4ae5
      04 Aug 2008 16:14:43,439: DEBUG org.jbpm.graph.def.GraphElement - event 'before-signal' on 'Page(setShippingPayment)' for 'Token(/)'
      04 Aug 2008 16:14:43,439: DEBUG org.jbpm.graph.def.GraphElement - event 'node-leave' on 'Page(setShippingPayment)' for 'Token(/)'
      04 Aug 2008 16:14:43,439: DEBUG org.jbpm.graph.def.GraphElement - event 'transition' on 'Transition(confirm)' for 'Token(/)'
      04 Aug 2008 16:14:43,439: DEBUG org.jbpm.graph.def.GraphElement - executing action 'action[#{paymentAction.addPaymentToOrder}]'
      04 Aug 2008 16:14:43,439: DEBUG org.jbpm.graph.exe.Token - token[0] is locked by token[0]
      



      As you can see, the issue seems to be this:


      DEBUG org.jbpm.configuration.JbpmContextInfo - creating jbpm context with service factories '[]'


      When things work, the JBPM context is created, but for some reason, the presence of components like f:converter and rich:calendar cause this not to happen.  Just to see what happens, I substituted my own converter for the standard converter, and things worked great.  But the calendar continues to cause me trouble.


      Of course, the presence of the offending components is just a symptom of something else.  Can anyone tell me what would stop the creation of a JBPM context midflow?  How could components interfere with the context?


      Any insight is appreciated.


      Thanks.