4 Replies Latest reply on Mar 3, 2008 11:02 AM by franky.b

    StackOverflow with Seam and @BeginTask

      Hello,

      I integrated the jBPM example from Seam reference (http://docs.jboss.com/seam/2.0.1.GA/reference/en/html/tutorial.html, Chapter 1.4) into my existing and working web application (this means, I simply added the two screens and the two java classes from the example and of course the needed libraries and configuration).

      The application uses JSF with Facelets, Seam and Spring.

      The jBPM engine seams to work in general, too. I am able to create process instances and to list tasks in the pooledTaskList etc. (I testet this with an example apart from the one from the seam reference).

      However, in any case, when I call a method that is annotated with a
      @BeginTask, it blows up with a StackOverflow. The stacktrace is very long, below you can find some fragments.

      The stackoverflow occurs both with JBoss AS (the one included in the jBPM 3.1.4 starterkit) and Tomcat.

      Any ideas? Is it because of Spring? Or is something wrong with el-api?


      part of stacktrace...

       at org.jboss.seam.Component.getInstance(Component.java:1829)
       at org.jboss.seam.Component.getInstance(Component.java:1824)
       at org.jboss.seam.bpm.ProcessInstance.instance(ProcessInstance.java:65)
       at org.jboss.seam.contexts.BusinessProcessContext.getProcessInstance(BusinessProcessContext.java:218)
       at org.jboss.seam.contexts.BusinessProcessContext.getContextInstance(BusinessProcessContext.java:205)
       at org.jboss.seam.contexts.BusinessProcessContext.get(BusinessProcessContext.java:56)
       at org.jboss.seam.contexts.Contexts.lookupInStatefulContexts(Contexts.java:209)
       at org.jboss.seam.Component.getInstance(Component.java:1839)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:55)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:50)
       at org.jboss.seam.el.SeamELResolver.resolveBase(SeamELResolver.java:166)
       at org.jboss.seam.el.SeamELResolver.getValue(SeamELResolver.java:53)
       at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
       at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:73)
       at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44)
       at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
       at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:111)
       at org.jboss.seam.ioc.spring.SpringTransaction.begin(SpringTransaction.java:70)
       at org.jboss.seam.util.Work.workInTransaction(Work.java:35)
       at org.jboss.seam.bpm.ProcessInstance.getProcessInstance(ProcessInstance.java:39)
       at sun.reflect.GeneratedMethodAccessor119.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.jboss.seam.util.Reflections.invoke(Reflections.java:21)
       at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:125)
       at org.jboss.seam.Component.callComponentMethod(Component.java:2082)
       at org.jboss.seam.Component.unwrap(Component.java:2108)
       at org.jboss.seam.Component.getInstance(Component.java:1887)
       at org.jboss.seam.Component.getInstance(Component.java:1852)
       at org.jboss.seam.Component.getInstance(Component.java:1829)
       at org.jboss.seam.Component.getInstance(Component.java:1824)
       at org.jboss.seam.bpm.ProcessInstance.instance(ProcessInstance.java:65)
       at org.jboss.seam.contexts.BusinessProcessContext.getProcessInstance(BusinessProcessContext.java:218)
       at org.jboss.seam.contexts.BusinessProcessContext.getContextInstance(BusinessProcessContext.java:205)
       at org.jboss.seam.contexts.BusinessProcessContext.get(BusinessProcessContext.java:56)
       at org.jboss.seam.contexts.Contexts.lookupInStatefulContexts(Contexts.java:209)
       at org.jboss.seam.Component.getInstance(Component.java:1839)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:55)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:50)
       at org.jboss.seam.el.SeamELResolver.resolveBase(SeamELResolver.java:166)
       at org.jboss.seam.el.SeamELResolver.getValue(SeamELResolver.java:53)
       at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
       at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:73)
       at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44)
       at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
       at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:111)
       at org.jboss.seam.ioc.spring.SpringTransaction.begin(SpringTransaction.java:70)
       at org.jboss.seam.util.Work.workInTransaction(Work.java:35)
       at org.jboss.seam.bpm.ProcessInstance.getProcessInstance(ProcessInstance.java:39)
       at sun.reflect.GeneratedMethodAccessor119.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.jboss.seam.util.Reflections.invoke(Reflections.java:21)
       at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:125)
       at org.jboss.seam.Component.callComponentMethod(Component.java:2082)
       at org.jboss.seam.Component.unwrap(Component.java:2108)
       at org.jboss.seam.Component.getInstance(Component.java:1887)
       at org.jboss.seam.Component.getInstance(Component.java:1852)
       at org.jboss.seam.Component.getInstance(Component.java:1829)
       at org.jboss.seam.Component.getInstance(Component.java:1824)
       at org.jboss.seam.bpm.ProcessInstance.instance(ProcessInstance.java:65)
       at org.jboss.seam.contexts.BusinessProcessContext.getProcessInstance(BusinessProcessContext.java:218)
       at org.jboss.seam.contexts.BusinessProcessContext.getContextInstance(BusinessProcessContext.java:205)
       at org.jboss.seam.contexts.BusinessProcessContext.get(BusinessProcessContext.java:56)
       at org.jboss.seam.contexts.Contexts.lookupInStatefulContexts(Contexts.java:209)
       at org.jboss.seam.Component.getInstance(Component.java:1839)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:55)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:50)
       at org.jboss.seam.el.SeamELResolver.resolveBase(SeamELResolver.java:166)
       at org.jboss.seam.el.SeamELResolver.getValue(SeamELResolver.java:53)
       at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
       at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:73)
       at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44)
       at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
       at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:111)
       at org.jboss.seam.ioc.spring.SpringTransaction.begin(SpringTransaction.java:70)
       at org.jboss.seam.util.Work.workInTransaction(Work.java:35)
       at org.jboss.seam.bpm.ProcessInstance.getProcessInstance(ProcessInstance.java:39)
       at sun.reflect.GeneratedMethodAccessor119.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.jboss.seam.util.Reflections.invoke(Reflections.java:21)
       at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:125)
       at org.jboss.seam.Component.callComponentMethod(Component.java:2082)
       at org.jboss.seam.Component.unwrap(Component.java:2108)
       at org.jboss.seam.Component.getInstance(Component.java:1887)
       at org.jboss.seam.Component.getInstance(Component.java:1852)
       at org.jboss.seam.Component.getInstance(Component.java:1829)
       at org.jboss.seam.Component.getInstance(Component.java:1824)
       at org.jboss.seam.bpm.ProcessInstance.instance(ProcessInstance.java:65)
       at org.jboss.seam.contexts.BusinessProcessContext.getProcessInstance(BusinessProcessContext.java:218)
       at org.jboss.seam.contexts.BusinessProcessContext.getContextInstance(BusinessProcessContext.java:205)
       at org.jboss.seam.contexts.BusinessProcessContext.get(BusinessProcessContext.java:56)
       at org.jboss.seam.contexts.Contexts.lookupInStatefulContexts(Contexts.java:209)
       at org.jboss.seam.Component.getInstance(Component.java:1839)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:55)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:50)
       at org.jboss.seam.el.SeamELResolver.resolveBase(SeamELResolver.java:166)
       at org.jboss.seam.el.SeamELResolver.getValue(SeamELResolver.java:53)
       at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
       at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:73)
       at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44)
       at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
       at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:111)
       at org.jboss.seam.ioc.spring.SpringTransaction.begin(SpringTransaction.java:70)
       at org.jboss.seam.util.Work.workInTransaction(Work.java:35)
       at org.jboss.seam.bpm.ProcessInstance.getProcessInstance(ProcessInstance.java:39)
       at sun.reflect.GeneratedMethodAccessor119.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at or
      :21,399 INFO [STDOUT] g.jboss.seam.util.Reflections.invoke(Reflections.java:21)
       at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:125)
       at org.jboss.seam.Component.callComponentMethod(Component.java:2082)
       at org.jboss.seam.Component.unwrap(Component.java:2108)
       at org.jboss.seam.Component.getInstance(Component.java:1887)
       at org.jboss.seam.Component.getInstance(Component.java:1852)
       at org.jboss.seam.Component.getInstance(Component.java:1829)
       at org.jboss.seam.Component.getInstance(Component.java:1824)
       at org.jboss.seam.bpm.ProcessInstance.instance(ProcessInstance.java:65)
       at org.jboss.seam.contexts.BusinessProcessContext.getProcessInstance(BusinessProcessContext.java:218)
       at org.jboss.seam.contexts.BusinessProcessContext.getContextInstance(BusinessProcessContext.java:205)
       at org.jboss.seam.contexts.BusinessProcessContext.get(BusinessProcessContext.java:56)
       at org.jboss.seam.contexts.Contexts.lookupInStatefulContexts(Contexts.java:209)
       at org.jboss.seam.Component.getInstance(Component.java:1839)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:55)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:50)
       at org.jboss.seam.el.SeamELResolver.resolveBase(SeamELResolver.java:166)
       at org.jboss.seam.el.SeamELResolver.getValue(SeamELResolver.java:53)
       at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
       at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:73)
       at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44)
       at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
       at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:111)
       at org.jboss.seam.ioc.spring.SpringTransaction.begin(SpringTransaction.java:70)
       at org.jboss.seam.util.Work.workInTransaction(Work.java:35)
       at org.jboss.seam.bpm.ProcessInstance.getProcessInstance(ProcessInstance.java:39)
       at sun.reflect.GeneratedMethodAccessor119.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.jboss.seam.util.Reflections.invoke(Reflections.java:21)
       at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:125)
       at org.jboss.seam.Component.callComponentMethod(Component.java:2082)
       at org.jboss.seam.Component.unwrap(Component.java:2108)
       at org.jboss.seam.Component.getInstance(Component.java:1887)
       at org.jboss.seam.Component.getInstance(Component.java:1852)
       at org.jboss.seam.Component.getInstance(Component.java:1829)
       at org.jboss.seam.Component.getInstance(Component.java:1824)
       at org.jboss.seam.bpm.ProcessInstance.instance(ProcessInstance.java:65)
       at org.jboss.seam.contexts.BusinessProcessContext.getProcessInstance(BusinessProcessContext.java:218)
       at org.jboss.seam.contexts.BusinessProcessContext.getContextInstance(BusinessProcessContext.java:205)
       at org.jboss.seam.contexts.BusinessProcessContext.get(BusinessProcessContext.java:56)
       at org.jboss.seam.contexts.Contexts.lookupInStatefulContexts(Contexts.java:209)
       at org.jboss.seam.Component.getInstance(Component.java:1839)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:55)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:50)
       at org.jboss.seam.el.SeamELResolver.resolveBase(SeamELResolver.java:166)
       at org.jboss.seam.el.SeamELResolver.getValue(SeamELResolver.java:53)
       at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
       at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:73)
       at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44)
       at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
       at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:111)
       at org.jboss.seam.ioc.spring.SpringTransaction.begin(SpringTransaction.java:70)
       at org.jboss.seam.util.Work.workInTransaction(Work.java:35)
       at org.jboss.seam.bpm.ProcessInstance.getProcessInstance(ProcessInstance.java:39)
       at sun.reflect.GeneratedMethodAccessor119.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.jboss.seam.util.Reflections.invoke(Reflections.java:21)
       at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:125)
       at org.jboss.seam.Component.callComponentMethod(Component.java:2082)
       at org.jboss.seam.Component.unwrap(Component.java:2108)
       at org.jboss.seam.Component.getInstance(Component.java:1887)
       at org.jboss.seam.Component.getInstance(Component.java:1852)
       at org.jboss.seam.Component.getInstance(Component.java:1829)
       at org.jboss.seam.Component.getInstance(Component.java:1824)
       at org.jboss.seam.bpm.ProcessInstance.instance(ProcessInstance.java:65)
       at org.jboss.seam.contexts.BusinessProcessContext.getProcessInstance(BusinessProcessContext.java:218)
       at org.jboss.seam.contexts.BusinessProcessContext.getContextInstance(BusinessProcessContext.java:205)
       at org.jboss.seam.contexts.BusinessProcessContext.get(BusinessProcessContext.java:56)
       at org.jboss.seam.contexts.Contexts.lookupInStatefulContexts(Contexts.java:209)
       at org.jboss.seam.Component.getInstance(Component.java:1839)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:55)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:50)
       at org.jboss.seam.el.SeamELResolver.resolveBase(SeamELResolver.java:166)
       at org.jboss.seam.el.SeamELResolver.getValue(SeamELResolver.java:53)
       at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
       at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:73)
       at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44)
       at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
       at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:111)
       at org.jboss.seam.ioc.spring.SpringTransaction.begin(SpringTransaction.java:70)
       at org.jboss.seam.util.Work.workInTransaction(Work.java:35)
       at org.jboss.seam.bpm.ProcessInstance.getProcessInstance(ProcessInstance.java:39)
       at sun.reflect.GeneratedMethodAccessor119.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.jboss.seam.util.Reflections.invoke(Reflections.java:21)
       at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:125)
       at org.jboss.seam.Component.callComponentMethod(Component.java:2082)
       at org.jboss.seam.Component.unwrap(Component.java:2108)
       at org.jboss.seam.Component.getInstance(Component.java:1887)
       at org.jboss.seam.Component.getInstance(Component.java:1852)
       at org.jboss.seam.Component.getInstance(Component.java:1829)
       at org.jboss.seam.Component.getInstance(Component.java:1824)
       at org.jboss.seam.bpm.ProcessInstance.instance(ProcessInstance.java:65)
       at org.jboss.seam.contexts.BusinessProcessContext.getProcessInstance(BusinessProcessContext.java:218)
       at org.jboss.seam.contexts.BusinessProcessContext.getContextInstance(BusinessProcessContext.java:205)
       at org.jboss.seam.contexts.BusinessProcessContext.get(BusinessProcessContext.java:56)
       at org.jboss.seam.contexts.Contexts.lookupInStatefulContexts(Contexts.java:209)
       at org.jboss.seam.Component.getInstance(Component.java:1839)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:55)
       at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:50)
       at org.jboss.seam.el.SeamELResolver.resolveBase(SeamELResolver.java:166)
       at org.jboss.seam.el.SeamELResolver.getValue(SeamELResolver.java:53)
       at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
       at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:73)
       at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44)
       at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
       at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:111)
       at org.jboss.seam.ioc.spring.SpringTransaction.begin(SpringTransaction.ja