ICEfaces
  1. ICEfaces
  2. ICE-2999

Seam/ejb3 transaction synchronization issue with UploadServlet

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.7.1
    • Fix Version/s: 1.7.2
    • Component/s: ICE-Components
    • Labels:
      None
    • Environment:
      Seam, ejb-transaction
    • Workaround Description:
      Hide
      The work-around, with ICEfaces 1.7.1, is for inputFile's progressListener to not use the RenderManager. Given ICE-2860, it will still render after the upload, even without progressListener using the RenderManager, so the users will still see upload completion, just not upload progress.
      Show
      The work-around, with ICEfaces 1.7.1, is for inputFile's progressListener to not use the RenderManager. Given ICE-2860 , it will still render after the upload, even without progressListener using the RenderManager, so the users will still see upload completion, just not upload progress.

      Description

      When using the ejb3 container's ability for synchronization of transactions, the fileupload component works, but get the following exception since the container specifies that the UploadServlet is not completing it's transaction properly.
      09:34:29,624 INFO [SeamPhaseListener] beforeRestoreView

      09:34:29,624 INFO [STDOUT] in finally clause

      09:34:29,624 INFO [STDOUT] InputFile: renderIFrame

      09:34:29,624 INFO [STDOUT] InputFile: upload Servlet path=/fileUpload/uploadHtml

      09:34:29,624 INFO [SeamPhaseListener] before begin(phaseId) phaseId=1 RESTORE_VIEW 1

      09:34:29,624 INFO [STDOUT] withing writeTo clause

      09:34:29,624 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator_4] TwoPhaseCoordinator.afterCompletion - returned failure for com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple@7a1904

      09:34:29,624 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator_4] TwoPhaseCoordinator.afterCompletion - returned failure for com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple@111e7ed

      09:34:29,624 ERROR [CachedConnectionValve] Application error: uploadServlet did not complete its transaction

      09:34:29,624 ERROR [SeamPhaseListener] uncaught exception

      java.lang.IllegalStateException: Could not start transaction

      at org.jboss.seam.jsf.SeamPhaseListener.begin(SeamPhaseListener.java:596)

      at org.jboss.seam.jsf.SeamPhaseListener.handleTransactionsBeforePhase(SeamPhaseListener.java:324)

      at org.jboss.seam.jsf.SeamPhaseListener.beforeServletPhase(SeamPhaseListener.java:140)

      at org.jboss.seam.jsf.SeamPhaseListener.beforePhase(SeamPhaseListener.java:114)

      at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:222)

      at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)

      at com.icesoft.faces.webapp.xmlhttp.PersistentFacesState.execute(PersistentFacesState.java:299)

      at com.icesoft.faces.webapp.xmlhttp.PersistentFacesState.executeAndRender(PersistentFacesState.java:347)

      at com.icesoft.faces.webapp.xmlhttp.PersistentFacesState$RenderRunner.run(PersistentFacesState.java:385)

      at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)

      at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)

      at java.lang.Thread.run(Unknown Source)

      Caused by: javax.ejb.NoSuchEJBException: Could not find stateful bean: ai1330-4ath1w-ff5gsgd0-1-ff5htjyu-w

      at org.jboss.ejb3.cache.simple.SimpleStatefulCache.get(SimpleStatefulCache.java:390)

      at org.jboss.ejb3.cache.simple.SimpleStatefulCache.get(SimpleStatefulCache.java:375)

      at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:61)

      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:110)

      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:206)

      at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:119)

      at $Proxy194.afterTransactionBegin(Unknown Source)

      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

      at java.lang.reflect.Method.invoke(Unknown Source)

      at org.jboss.seam.util.Reflections.invoke(Reflections.java:21)

      at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)

      at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:76)

      at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)

      at org.jboss.seam.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:54)

      at org.javassist.tmp.java.lang.Object_$$_javassist_0.afterTransactionBegin(Object_$$_javassist_0.java)

      at org.jboss.seam.transaction.UTTransaction.begin(UTTransaction.java:40)

      at org.jboss.seam.jsf.SeamPhaseListener.begin(SeamPhaseListener.java:591)

      ... 11 more

        Activity

        Judy Guglielmin created issue -
        Judy Guglielmin made changes -
        Field Original Value New Value
        Attachment fileUpload.zip [ 10923 ]
        Ken Fyten made changes -
        Fix Version/s 1.7.1 [ 10122 ]
        Assignee Judy Guglielmin [ judy.guglielmin ]
        Ken Fyten made changes -
        Assignee Priority P1
        Assignee Judy Guglielmin [ judy.guglielmin ] Mark Collette [ mark.collette ]
        Mark Collette made changes -
        Workaround Description The work-around, with ICEfaces 1.7.1, is for inputFile's progressListener to not use the RenderManager. Given ICE-2860, it will still render after the upload, even without progressListener using the RenderManager, so the users will still see upload completion, just not upload progress.
        Fix Version/s 1.7.1 [ 10122 ]
        Assignee Priority P1 P2
        Affects Version/s 1.7.1 [ 10122 ]
        Tyler Johnson made changes -
        Ken Fyten made changes -
        Fix Version/s 1.7.2 [ 10130 ]
        Assignee Priority P2 P1
        Assignee Mark Collette [ mark.collette ] Judy Guglielmin [ judy.guglielmin ]
        Judy Guglielmin made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Fix Version/s 1.7.2RC1 [ 10140 ]
        Fix Version/s 1.7.2 [ 10130 ]
        Ken Fyten made changes -
        Fix Version/s 1.7.2 [ 10130 ]
        Fix Version/s 1.7.2RC1 [ 10140 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Assignee Priority P1
        Assignee Judy Guglielmin [ judy.guglielmin ]

          People

          • Assignee:
            Unassigned
            Reporter:
            Judy Guglielmin
          • Votes:
            3 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: