10 Replies Latest reply on Jul 3, 2007 12:30 PM by Pete Muir

    jbpm and exception handling

    zenon kowalski Newbie

      Hi,

      What should I do to be able to use declarative (XML) exception handling together with pageflows?
      I've got very simple pageflow where I have

       <start-page name="setRevokeDetails" view-id="/setRevokeDetails.jspx" no-conversation-view-id="/main.jspx">
       <redirect/>
       <transition name="cancel" to="revokeCancelled"/>
       <transition name="process" to="checkRevokeResult">
       <action expression="#{transactionRevoker.revokeTransaction}"/>
       </transition>
       </start-page>
      
      <decision name="checkRevokeResult" expression="#{transactionRevoker.forceRevoke}">
       <transition name="false" to="revokeResult"/>
       <transition name="true" to="forceRevoke"/>
       </decision>
      
      ...
      


      My pages.xml exceptions section looks as follows:
       <exception>
       <end-conversation/>
       <redirect view-id="/generalError.jspx">
       <message>Unexpected failure</message>
       </redirect>
       </exception>
      
      

      Now method called transactionRevoker.revokeTransaction() throws Exception. It's a method that calls external EJB service. I catch only one exception in this method, and when it throws RuntimeException I get very long stack trace and bad redirect message in browser.

      Stack trace says that jPDL can't resolve #{transactionRevoker.forceRevoke}. And I don't know how to cope with exception in this case. I'd like to be able to redirect user to general error page without coding it every time I do something potentially exception-prone.

        • 1. Re: jbpm and exception handling
          zenon kowalski Newbie

          Hey, say something. I believe there is simple way to do this, but I can't find it, and now my project can't be finished because of this.

          • 2. Re: jbpm and exception handling
            zenon kowalski Newbie

            Up.

            Maybe somebody help me this time? I'm sure you know how to do it.

            • 3. Re: jbpm and exception handling
              Alexei none Apprentice

               

              "leezard" wrote:
              Hi,

              What should I do to be able to use declarative (XML) exception handling together with pageflows?


              You should use another process definition language based on pi-calculations. Because exception handling, as far as I know, is not available for petri-net based languages.

              • 4. Re: jbpm and exception handling
                Alexei none Apprentice

                You can read more about that here http://workflowpatterns.com/

                • 5. Re: jbpm and exception handling
                  zenon kowalski Newbie

                  So it's not possible to handle exception thrown during pageflow excecution in seam? If it is so, pageflow seems to be completely useless, because every time I get seam debug page and ugly exception stack.

                  The only way I see is to code exception handling by myself. So I'm afraid I need to go back to pages.xml - based navigation :(

                  • 6. Re: jbpm and exception handling
                    Alexei none Apprentice

                    If I'm not mistaken, there are embedded in seam ways to handle that (but not in jbpm). I meant, that there is no exception/compensation mechanism in jpdl.

                    • 7. Re: jbpm and exception handling
                      zenon kowalski Newbie

                      But embedded Seam exception handling (I mean this defined using section in pages.xml) doesn't work. Even though there is apropriate exception class section, I get this ugly result (bad redirect and stacktrace)

                      • 8. Re: jbpm and exception handling
                        Pete Muir Master

                        Can you post an example stack trace. Thanks!

                        • 9. Re: jbpm and exception handling
                          zenon kowalski Newbie

                          This is my whole stacktrace (it's very long). I invoked external business bean's method with bad transaction Id and it threw WrongClassException (kind of RuntimeException). Thanks in advance.

                          16:41:59,718 INFO [DefaultLoadEventListener] Error performing load command
                          org.hibernate.WrongClassException: Object with id: 1180102935495 was not of the specified subclass: my.app.tr.Transaction (Discriminator: 2)
                           at org.hibernate.loader.Loader.getInstanceClass(Loader.java:1453)
                           at org.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:1284)
                           at org.hibernate.loader.Loader.getRow(Loader.java:1206)
                           at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:580)
                           at org.hibernate.loader.Loader.doQuery(Loader.java:701)
                           at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
                           at org.hibernate.loader.Loader.loadEntity(Loader.java:1860)
                           at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:48)
                           at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:42)
                           at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3042)
                           at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:395)
                           at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:375)
                           at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:139)
                           at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:195)
                           at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:103)
                           at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:878)
                           at org.hibernate.impl.SessionImpl.get(SessionImpl.java:815)
                           at org.hibernate.impl.SessionImpl.get(SessionImpl.java:808)
                           at org.hibernate.ejb.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:174)
                           at org.jboss.ejb3.entity.TransactionScopedEntityManager.find(TransactionScopedEntityManager.java:171)
                           at my.app.tr.history.TransactionHistoryServiceBean.getTransaction(TransactionHistoryServiceBean.java:25)
                           at my.app.tr.history.TransactionHistoryServiceBean.getTransaction(TransactionHistoryServiceBean.java:19)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
                           at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
                           at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
                           at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessContainer.localInvoke(StatelessContainer.java:214)
                           at org.jboss.ejb3.stateless.StatelessContainer.localInvoke(StatelessContainer.java:184)
                           at org.jboss.ejb3.stateless.StatelessLocalProxy.invoke(StatelessLocalProxy.java:81)
                           at $Proxy91.getTransaction(Unknown Source)
                           at my.app.tr.impl.TransactionRevokeServiceBean.canTransactionBeRevoked(TransactionRevokeServiceBean.java:67)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
                           at my.app.util.logging.LoggerInterceptor.log(LoggerInterceptor.java:18)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
                           at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
                           at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
                           at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:278)
                           at org.jboss.ejb3.remoting.IsLocalInterceptor.invokeLocal(IsLocalInterceptor.java:79)
                           at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:70)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:103)
                           at $Proxy186.canTransactionBeRevoked(Unknown Source)
                           at my.app.tr.gui.beans.TransactionRevokerBean.isTransactionRevokable(TransactionRevokerBean.java:63)
                           at my.app.tr.gui.beans.TransactionRevokerBean.revokeTransaction(TransactionRevokerBean.java:73)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
                           at org.jboss.seam.intercept.EJBInvocationContext.proceed(EJBInvocationContext.java:37)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:57)
                           at org.jboss.seam.interceptors.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:47)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.interceptors.ManagedEntityIdentityInterceptor.aroundInvoke(ManagedEntityIdentityInterceptor.java:37)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.interceptors.ConversationInterceptor.aroundInvoke(ConversationInterceptor.java:63)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.interceptors.BusinessProcessInterceptor.aroundInvoke(BusinessProcessInterceptor.java:51)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.interceptors.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:27)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103)
                           at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:53)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
                           at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:57)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
                           at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:83)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
                           at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContainer.java:204)
                           at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:100)
                           at $Proxy187.revokeTransaction(Unknown Source)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.seam.util.Reflections.invoke(Reflections.java:20)
                           at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
                           at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:72)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:57)
                           at org.jboss.seam.interceptors.RemoveInterceptor.aroundInvoke(RemoveInterceptor.java:40)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103)
                           at org.jboss.seam.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:50)
                           at org.javassist.tmp.java.lang.Object_$$_javassist_6.revokeTransaction(Object_$$_javassist_6.java)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jbpm.jpdl.el.impl.BeanMethod.invoke(BeanMethod.java:19)
                           at org.jbpm.jpdl.el.impl.ArraySuffix.evaluate(ArraySuffix.java:287)
                           at org.jbpm.jpdl.el.impl.ComplexValue.evaluate(ComplexValue.java:146)
                           at org.jbpm.jpdl.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:264)
                           at org.jbpm.jpdl.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:191)
                           at org.jbpm.jpdl.el.impl.JbpmExpressionEvaluator.evaluate(JbpmExpressionEvaluator.java:34)
                           at org.jbpm.graph.def.Action.execute(Action.java:119)
                           at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:235)
                           at org.jbpm.graph.def.GraphElement.executeActions(GraphElement.java:212)
                           at org.jbpm.graph.def.GraphElement.fireAndPropagateEvent(GraphElement.java:182)
                           at org.jbpm.graph.def.GraphElement.fireEvent(GraphElement.java:166)
                           at org.jbpm.graph.def.Transition.take(Transition.java:106)
                           at org.jbpm.graph.def.Node.leave(Node.java:383)
                           at org.jbpm.graph.exe.Token.signal(Token.java:178)
                           at org.jbpm.graph.exe.Token.signal(Token.java:141)
                           at org.jbpm.graph.exe.ProcessInstance.signal(ProcessInstance.java:229)
                           at org.jboss.seam.pageflow.PageflowHelper.signal(PageflowHelper.java:47)
                           at org.jboss.seam.core.Pageflow.navigate(Pageflow.java:298)
                           at org.jboss.seam.jsf.SeamNavigationHandler.handleNavigation(SeamNavigationHandler.java:30)
                           at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:119)
                           at javax.faces.component.UICommand.broadcast(UICommand.java:383)
                           at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:447)
                           at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:752)
                           at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
                           at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
                           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:290)
                           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63)
                           at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84)
                           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                           at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
                           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
                           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                           at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
                           at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
                           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
                           at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
                           at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
                           at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                           at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
                           at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
                           at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
                           at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
                           at java.lang.Thread.run(Thread.java:619)
                          16:42:00,015 ERROR [GraphElement] action threw exception: couldn't evaluate expression '#{transactionRevoker.revokeTransaction}'
                          org.jbpm.JbpmException: couldn't evaluate expression '#{transactionRevoker.revokeTransaction}'
                           at org.jbpm.jpdl.el.impl.JbpmExpressionEvaluator.evaluate(JbpmExpressionEvaluator.java:38)
                           at org.jbpm.graph.def.Action.execute(Action.java:119)
                           at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:235)
                           at org.jbpm.graph.def.GraphElement.executeActions(GraphElement.java:212)
                           at org.jbpm.graph.def.GraphElement.fireAndPropagateEvent(GraphElement.java:182)
                           at org.jbpm.graph.def.GraphElement.fireEvent(GraphElement.java:166)
                           at org.jbpm.graph.def.Transition.take(Transition.java:106)
                           at org.jbpm.graph.def.Node.leave(Node.java:383)
                           at org.jbpm.graph.exe.Token.signal(Token.java:178)
                           at org.jbpm.graph.exe.Token.signal(Token.java:141)
                           at org.jbpm.graph.exe.ProcessInstance.signal(ProcessInstance.java:229)
                           at org.jboss.seam.pageflow.PageflowHelper.signal(PageflowHelper.java:47)
                           at org.jboss.seam.core.Pageflow.navigate(Pageflow.java:298)
                           at org.jboss.seam.jsf.SeamNavigationHandler.handleNavigation(SeamNavigationHandler.java:30)
                           at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:119)
                           at javax.faces.component.UICommand.broadcast(UICommand.java:383)
                           at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:447)
                           at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:752)
                           at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
                           at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
                           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:290)
                           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63)
                           at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84)
                           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                           at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
                           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
                           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                           at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
                           at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
                           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
                           at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
                           at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
                           at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                           at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
                           at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
                           at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
                           at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
                           at java.lang.Thread.run(Thread.java:619)
                          Caused by: javax.ejb.EJBTransactionRolledbackException: org.hibernate.WrongClassException: Object with id: 1180102935495 was not of the specified subclass: my.app.tr.Transaction (Discriminator: 2)
                           at org.jboss.ejb3.tx.Ejb3TxPolicy.handleInCallerTx(Ejb3TxPolicy.java:87)
                           at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:130)
                           at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
                           at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessContainer.localInvoke(StatelessContainer.java:214)
                           at org.jboss.ejb3.stateless.StatelessContainer.localInvoke(StatelessContainer.java:184)
                           at org.jboss.ejb3.stateless.StatelessLocalProxy.invoke(StatelessLocalProxy.java:81)
                           at $Proxy91.getTransaction(Unknown Source)
                           at my.app.tr.impl.TransactionRevokeServiceBean.canTransactionBeRevoked(TransactionRevokeServiceBean.java:67)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
                           at my.app.util.logging.LoggerInterceptor.log(LoggerInterceptor.java:18)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
                           at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
                           at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
                           at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:278)
                           at org.jboss.ejb3.remoting.IsLocalInterceptor.invokeLocal(IsLocalInterceptor.java:79)
                           at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:70)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:103)
                           at $Proxy186.canTransactionBeRevoked(Unknown Source)
                           at my.app.tr.gui.beans.TransactionRevokerBean.isTransactionRevokable(TransactionRevokerBean.java:63)
                           at my.app.tr.gui.beans.TransactionRevokerBean.revokeTransaction(TransactionRevokerBean.java:73)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
                           at org.jboss.seam.intercept.EJBInvocationContext.proceed(EJBInvocationContext.java:37)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:57)
                           at org.jboss.seam.interceptors.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:47)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.interceptors.ManagedEntityIdentityInterceptor.aroundInvoke(ManagedEntityIdentityInterceptor.java:37)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.interceptors.ConversationInterceptor.aroundInvoke(ConversationInterceptor.java:63)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.interceptors.BusinessProcessInterceptor.aroundInvoke(BusinessProcessInterceptor.java:51)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.interceptors.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:27)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103)
                           at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:53)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
                           at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:57)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
                           at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:83)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
                           at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContainer.java:204)
                           at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:100)
                           at $Proxy187.revokeTransaction(Unknown Source)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.seam.util.Reflections.invoke(Reflections.java:20)
                           at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
                           at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:72)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:57)
                           at org.jboss.seam.interceptors.RemoveInterceptor.aroundInvoke(RemoveInterceptor.java:40)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103)
                           at org.jboss.seam.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:50)
                           at org.javassist.tmp.java.lang.Object_$$_javassist_6.revokeTransaction(Object_$$_javassist_6.java)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jbpm.jpdl.el.impl.BeanMethod.invoke(BeanMethod.java:19)
                           at org.jbpm.jpdl.el.impl.ArraySuffix.evaluate(ArraySuffix.java:287)
                           at org.jbpm.jpdl.el.impl.ComplexValue.evaluate(ComplexValue.java:146)
                           at org.jbpm.jpdl.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:264)
                           at org.jbpm.jpdl.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:191)
                           at org.jbpm.jpdl.el.impl.JbpmExpressionEvaluator.evaluate(JbpmExpressionEvaluator.java:34)
                           ... 51 more
                          Caused by: javax.persistence.PersistenceException: org.hibernate.WrongClassException: Object with id: 1180102935495 was not of the specified subclass: my.app.tr.Transaction (Discriminator: 2)
                           at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:629)
                           at org.hibernate.ejb.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:194)
                           at org.jboss.ejb3.entity.TransactionScopedEntityManager.find(TransactionScopedEntityManager.java:171)
                           at my.app.tr.history.TransactionHistoryServiceBean.getTransaction(TransactionHistoryServiceBean.java:25)
                           at my.app.tr.history.TransactionHistoryServiceBean.getTransaction(TransactionHistoryServiceBean.java:19)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
                           at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
                           ... 182 more
                          Caused by: org.hibernate.WrongClassException: Object with id: 1180102935495 was not of the specified subclass: my.app.tr.Transaction (Discriminator: 2)
                           at org.hibernate.loader.Loader.getInstanceClass(Loader.java:1453)
                           at org.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:1284)
                           at org.hibernate.loader.Loader.getRow(Loader.java:1206)
                           at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:580)
                           at org.hibernate.loader.Loader.doQuery(Loader.java:701)
                           at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
                           at org.hibernate.loader.Loader.loadEntity(Loader.java:1860)
                           at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:48)
                           at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:42)
                           at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3042)
                           at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:395)
                           at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:375)
                           at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:139)
                           at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:195)
                           at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:103)
                           at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:878)
                           at org.hibernate.impl.SessionImpl.get(SessionImpl.java:815)
                           at org.hibernate.impl.SessionImpl.get(SessionImpl.java:808)
                           at org.hibernate.ejb.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:174)
                           ... 198 more
                          16:42:00,265 WARN [lifecycle] executePhase(INVOKE_APPLICATION 5,com.sun.faces.context.FacesContextImpl@416cf7) threw exception
                          javax.faces.FacesException
                           at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:105)
                           at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
                           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:290)
                           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63)
                           at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84)
                           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                           at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
                           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
                           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                           at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
                           at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
                           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
                           at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
                           at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
                           at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                           at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
                           at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
                           at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
                           at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
                           at java.lang.Thread.run(Thread.java:619)
                          Caused by: org.jbpm.graph.def.DelegationException
                           at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:352)
                           at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:346)
                           at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:249)
                           at org.jbpm.graph.def.GraphElement.executeActions(GraphElement.java:212)
                           at org.jbpm.graph.def.GraphElement.fireAndPropagateEvent(GraphElement.java:182)
                           at org.jbpm.graph.def.GraphElement.fireEvent(GraphElement.java:166)
                           at org.jbpm.graph.def.Transition.take(Transition.java:106)
                           at org.jbpm.graph.def.Node.leave(Node.java:383)
                           at org.jbpm.graph.exe.Token.signal(Token.java:178)
                           at org.jbpm.graph.exe.Token.signal(Token.java:141)
                           at org.jbpm.graph.exe.ProcessInstance.signal(ProcessInstance.java:229)
                           at org.jboss.seam.pageflow.PageflowHelper.signal(PageflowHelper.java:47)
                           at org.jboss.seam.core.Pageflow.navigate(Pageflow.java:298)
                           at org.jboss.seam.jsf.SeamNavigationHandler.handleNavigation(SeamNavigationHandler.java:30)
                           at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:119)
                           at javax.faces.component.UICommand.broadcast(UICommand.java:383)
                           at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:447)
                           at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:752)
                           at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
                           ... 33 more
                          Caused by: org.jbpm.JbpmException: couldn't evaluate expression '#{transactionRevoker.revokeTransaction}'
                           at org.jbpm.jpdl.el.impl.JbpmExpressionEvaluator.evaluate(JbpmExpressionEvaluator.java:38)
                           at org.jbpm.graph.def.Action.execute(Action.java:119)
                           at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:235)
                           ... 49 more
                          Caused by: javax.ejb.EJBTransactionRolledbackException: org.hibernate.WrongClassException: Object with id: 1180102935495 was not of the specified subclass: my.app.tr.Transaction (Di
                          scriminator: 2)
                           at org.jboss.ejb3.tx.Ejb3TxPolicy.handleInCallerTx(Ejb3TxPolicy.java:87)
                           at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:130)
                           at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
                           at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessContainer.localInvoke(StatelessContainer.java:214)
                           at org.jboss.ejb3.stateless.StatelessContainer.localInvoke(StatelessContainer.java:184)
                           at org.jboss.ejb3.stateless.StatelessLocalProxy.invoke(StatelessLocalProxy.java:81)
                           at $Proxy91.getTransaction(Unknown Source)
                           at my.app.tr.impl.TransactionRevokeServiceBean.canTransactionBeRevoked(TransactionRevokeServiceBean.java:67)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
                           at my.app.util.logging.LoggerInterceptor.log(LoggerInterceptor.java:18)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
                           at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
                           at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
                           at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:278)
                           at org.jboss.ejb3.remoting.IsLocalInterceptor.invokeLocal(IsLocalInterceptor.java:79)
                           at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:70)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateless.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:103)
                           at $Proxy186.canTransactionBeRevoked(Unknown Source)
                           at my.app.tr.gui.beans.TransactionRevokerBean.isTransactionRevokable(TransactionRevokerBean.java:63)
                           at my.app.tr.gui.beans.TransactionRevokerBean.revokeTransaction(TransactionRevokerBean.java:73)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
                           at org.jboss.seam.intercept.EJBInvocationContext.proceed(EJBInvocationContext.java:37)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:57)
                           at org.jboss.seam.interceptors.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:47)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.interceptors.ManagedEntityIdentityInterceptor.aroundInvoke(ManagedEntityIdentityInterceptor.java:37)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.interceptors.ConversationInterceptor.aroundInvoke(ConversationInterceptor.java:63)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.interceptors.BusinessProcessInterceptor.aroundInvoke(BusinessProcessInterceptor.java:51)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.interceptors.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:27)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103)
                           at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:53)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
                           at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:57)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
                           at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:83)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
                           at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContainer.java:204)
                           at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:100)
                           at $Proxy187.revokeTransaction(Unknown Source)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.seam.util.Reflections.invoke(Reflections.java:20)
                           at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
                           at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:72)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:57)
                           at org.jboss.seam.interceptors.RemoveInterceptor.aroundInvoke(RemoveInterceptor.java:40)
                           at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                           at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103)
                           at org.jboss.seam.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:50)
                           at org.javassist.tmp.java.lang.Object_$$_javassist_6.revokeTransaction(Object_$$_javassist_6.java)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jbpm.jpdl.el.impl.BeanMethod.invoke(BeanMethod.java:19)
                           at org.jbpm.jpdl.el.impl.ArraySuffix.evaluate(ArraySuffix.java:287)
                           at org.jbpm.jpdl.el.impl.ComplexValue.evaluate(ComplexValue.java:146)
                           at org.jbpm.jpdl.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:264)
                           at org.jbpm.jpdl.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:191)
                           at org.jbpm.jpdl.el.impl.JbpmExpressionEvaluator.evaluate(JbpmExpressionEvaluator.java:34)
                           ... 51 more
                          Caused by: javax.persistence.PersistenceException: org.hibernate.WrongClassException: Object with id: 1180102935495 was not of the specified subclass: my.app.tr.Transaction (Discrim
                          inator: 2)
                           at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:629)
                           at org.hibernate.ejb.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:194)
                           at org.jboss.ejb3.entity.TransactionScopedEntityManager.find(TransactionScopedEntityManager.java:171)
                           at my.app.tr.history.TransactionHistoryServiceBean.getTransaction(TransactionHistoryServiceBean.java:25)
                           at my.app.tr.history.TransactionHistoryServiceBean.getTransaction(TransactionHistoryServiceBean.java:19)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                           at java.lang.reflect.Method.invoke(Method.java:597)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
                           at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
                           at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                           at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                           at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
                           ... 182 more
                          Caused by: org.hibernate.WrongClassException: Object with id: 1180102935495 was not of the specified subclass: my.app.tr.Transaction (Discriminator: 2)
                           at org.hibernate.loader.Loader.getInstanceClass(Loader.java:1453)
                           at org.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:1284)
                           at org.hibernate.loader.Loader.getRow(Loader.java:1206)
                           at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:580)
                           at org.hibernate.loader.Loader.doQuery(Loader.java:701)
                           at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
                           at org.hibernate.loader.Loader.loadEntity(Loader.java:1860)
                           at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:48)
                           at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:42)
                           at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3042)
                           at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:395)
                           at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:375)
                           at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:139)
                           at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:195)
                           at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:103)
                           at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:878)
                           at org.hibernate.impl.SessionImpl.get(SessionImpl.java:815)
                           at org.hibernate.impl.SessionImpl.get(SessionImpl.java:808)
                           at org.hibernate.ejb.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:174)
                           ... 198 more
                          16:42:00,515 ERROR [ExceptionFilter] uncaught exception
                          javax.servlet.ServletException
                           at javax.faces.webapp.FacesServlet.service(FacesServlet.java:256)
                           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63)
                           at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79)
                           at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                           at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84)
                           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                           at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
                           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
                           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                           at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
                           at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
                           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
                           at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
                           at or


                          • 10. Re: jbpm and exception handling
                            Pete Muir Master

                            I just tested this in Seam2 - working correctly there, so I suggest you upgrade.