9 Replies Latest reply on Apr 1, 2008 5:09 AM by herqpapa

    Wrong tx on thread in UserModule

    herqpapa

      Hi,

      I am using jboss-portal-2.6.2.GA in cygwin env, MySQL backend.

      I have the following method which I use to check whether a user already exists:

      public User findUserByUserName(String userName) throws IdentityException{
       try {
       UserTransaction ut = (UserTransaction) (new InitialContext()
       .lookup("java:comp/UserTransaction"));
       ut.begin();
       User user = ((UserModule) (new InitialContext() ).lookup("java:/portal/UserModule")).findUserByUserName(userName);
       ut.commit();
       return user;
       } catch (NamingException ex) {
       ex.printStackTrace();
       } catch (NotSupportedException ex) {
       ex.printStackTrace();
       } catch (SystemException ex) {
       ex.printStackTrace();
       } catch (SecurityException ex) {
       ex.printStackTrace();
       } catch (IllegalStateException ex) {
       ex.printStackTrace();
       } catch (RollbackException ex) {
       ex.printStackTrace();
       } catch (HeuristicMixedException ex) {
       ex.printStackTrace();
       } catch (HeuristicRollbackException ex) {
       ex.printStackTrace();
       } catch (IllegalArgumentException ex) {
       System.out.println("3333B");
       ex.printStackTrace();
       }
       return null;
       }
      


      If user does not exists I get the following Exception:

      2008-03-28 14:02:20,202 ERROR [org.jboss.portal.server.servlet.PortalServlet] Unexpected exception
      java.lang.IllegalStateException: Wrong tx on thread: expected TransactionImple < ac, BasicAction: a28778f:719:47ecf96c:27c status: ActionStatus.ABORT_ONLY >, actual TransactionImple < ac, BasicAction: a28778f:719:47ecf96c:285 status: ActionStatus.RUNNING >
       at org.jboss.aspects.tx.TxPolicy.endTransaction(TxPolicy.java:162)
       at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:87)
       at org.jboss.aspects.tx.TxInterceptor$RequiresNew.invoke(TxInterceptor.java:262)
       at org.jboss.portal.core.aspects.server.TransactionInterceptor$invoke_N5143606530999904530.invokeNext(TransactionInterceptor$invoke_N5143606530999904530.java)
       at org.jboss.portal.core.aspects.server.TransactionInterceptor.invoke(TransactionInterceptor.java)
       at org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
       at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
       at org.jboss.portal.server.aspects.LockInterceptor$InternalLock.invoke(LockInterceptor.java:70)
       at org.jboss.portal.server.aspects.LockInterceptor.invoke(LockInterceptor.java:131)
       at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
       at org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157)
       at org.jboss.portal.server.servlet.PortalServlet.service(PortalServlet.java:380)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       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.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
       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:157)
       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:595)
      2008-03-28 14:02:20,202 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/portal].[PortalServletWithPathMapping]] Servlet.service() for servlet PortalServletWithPathMapping threw exception
      java.lang.IllegalStateException: Wrong tx on thread: expected TransactionImple < ac, BasicAction: a28778f:719:47ecf96c:27c status: ActionStatus.ABORT_ONLY >, actual TransactionImple < ac, BasicAction: a28778f:719:47ecf96c:285 status: ActionStatus.RUNNING >
       at org.jboss.aspects.tx.TxPolicy.endTransaction(TxPolicy.java:162)
       at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:87)
       at org.jboss.aspects.tx.TxInterceptor$RequiresNew.invoke(TxInterceptor.java:262)
       at org.jboss.portal.core.aspects.server.TransactionInterceptor$invoke_N5143606530999904530.invokeNext(TransactionInterceptor$invoke_N5143606530999904530.java)
       at org.jboss.portal.core.aspects.server.TransactionInterceptor.invoke(TransactionInterceptor.java)
       at org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
       at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
       at org.jboss.portal.server.aspects.LockInterceptor$InternalLock.invoke(LockInterceptor.java:70)
       at org.jboss.portal.server.aspects.LockInterceptor.invoke(LockInterceptor.java:131)
       at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
       at org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157)
       at org.jboss.portal.server.servlet.PortalServlet.service(PortalServlet.java:380)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       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.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
       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:157)
       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:595)
      2008-03-28 14:02:20,264 ERROR [org.jboss.web.tomcat.service.jca.CachedConnectionValve] Application error: PortalServletWithPathMapping did not complete its transaction
      


      Even though I catch the IdentityException my page is not rendered again, but has the following output:

      HTTP Status 500 -
      type Exception report
      message
      description The server encountered an internal error () that prevented it from fulfilling this request.
      exception
      javax.servlet.ServletException: java.lang.IllegalStateException: Wrong tx on thread: expected TransactionImple < ac, BasicAction: a28778f:719:47ecf96c:27c status: ActionStatus.ABORT_ONLY >, actual TransactionImple < ac, BasicAction: a28778f:719:47ecf96c:285 status: ActionStatus.RUNNING >
      org.jboss.portal.server.servlet.PortalServlet.service(PortalServlet.java:406)
       javax.servlet.http.HttpServlet.service(HttpServlet.java:803) org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
      root cause
      java.lang.IllegalStateException: Wrong tx on thread: expected TransactionImple < ac, BasicAction: a28778f:719:47ecf96c:27c status: ActionStatus.ABORT_ONLY >, actual TransactionImple < ac, BasicAction: a28778f:719:47ecf96c:285 status: ActionStatus.RUNNING >
       org.jboss.aspects.tx.TxPolicy.endTransaction(TxPolicy.java:162)
       org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:87) org.jboss.aspects.tx.TxInterceptor$RequiresNew.invoke(TxInterceptor.java:262) org.jboss.portal.core.aspects.server.TransactionInterceptor$invoke_N5143606530999904530.invokeNext(TransactionInterceptor$invoke_N5143606530999904530.java) org.jboss.portal.core.aspects.server.TransactionInterceptor.invoke(TransactionInterceptor.java) org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38) org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115) org.jboss.portal.server.aspects.LockInterceptor$InternalLock.invoke(LockInterceptor.java:70) org.jboss.portal.server.aspects.LockInterceptor.invoke(LockInterceptor.java:131) org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115) org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157) org.jboss.portal.server.servlet.PortalServlet.service(PortalServlet.java:380)
       javax.servlet.http.HttpServlet.service(HttpServlet.java:803) org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
      note The full stack trace of the root cause is available in the JBossWeb/2.0.0.GA logs.
      

      I found this JIRA http://jira.jboss.com/jira/browse/JBPORTAL-1315 but I think it is a different problem although might be the same issue.

      Anybody any idea how to work around? Or how to check without exception if a user exists?

        • 1. Re: Wrong tx on thread in UserModule
          rcarmichael

          Could it be that because it throws an exception when the user does not exist you never get to the ut.commit() and that's why that particular exception is being thrown? Just a wild shot in the dark.

          • 2. Re: Wrong tx on thread in UserModule
            prabhat.jha

            I know of a similar issue which has been fixed in 2.6.4.GA which is our latest stable release. Can you see if your problem is resolved there?

            • 3. Re: Wrong tx on thread in UserModule
              je.a.le

              look like the exception is from the transaction ;

              andif i'm correct, findUserByUserName return null when user not found. On my own code i use bean instead and throw the exception by myself :

              ....
              MBeanServer mbeanServer = MBeanServerLocator.locateJBoss();
              UserModule userModule = (UserModule) MBeanProxy.get(UserModule.class, new ObjectName("portal:service=Module,type=User"), mbeanServer);
              User user = userModule.findUserByUserName(userEvent.getUserId());
              
              if (user == null) {
               throw new IdentityException();
              }
              ...
              


              btw, I have to put my code inside a valid session/transaction, even I only doing read only transaction (!?)

              • 4. Re: Wrong tx on thread in UserModule

                I use Transaction Manager obtained with the jndi name java:/TransactionManager

                • 5. Re: Wrong tx on thread in UserModule
                  herqpapa

                   

                  I use Transaction Manager obtained with the jndi name java:/TransactionManager


                  PMN: what do you mean by this?

                  • 6. Re: Wrong tx on thread in UserModule

                    I mean that UserTransaction is a subset of the TransactionManager and is not suitable in all environments, I think. That maybe teh cause of teh roblem but I am not an expert on the topic... Try to use directly the TransactionManager.
                    Hope this helps ...

                    • 7. Re: Wrong tx on thread in UserModule
                      herqpapa

                      PMN,

                      could you show how you get the TransactionManager? I tried with different jndis (java:comp/TransactionManager, TransactionManager, javax.transaction.TransactionManager)but to no avail. :(
                      Sorry for the pain I cause with my beginner's questions.

                      • 8. Re: Wrong tx on thread in UserModule

                        The AS must be running

                        TransactionManager tm= (TransactionManager) new InitialContext().lookup("java:/TransactionManager");


                        In 2.6.4 sources there is a test portlet that get the current transaction like this. (I never tried it)

                        private Transaction getCurrentTransaction()
                         {
                         try
                         {
                         return TransactionManagerProvider.JBOSS_PROVIDER.getTransactionManager().getTransaction();
                         }
                         catch (Exception e)
                         {
                         return null;
                         }
                         }


                        • 9. Re: Wrong tx on thread in UserModule
                          herqpapa

                          Thanks for your help!

                          the first solution with the context lookup is working just fine!

                          the latter solution does not work and it throws a NullPointerException in both use cases (for existing and non existing user).
                          I only tried it in portal 2.6.2.

                          ex.getMessage() : null
                          ex.getLocalizedMessage() : null
                          java.lang.NullPointerException
                          at portal.portlet.useradminportlet.ServiceBean.findUserByUserName(Unknown Source)
                          at portal.portlet.useradminportlet.ServiceBean.checkUserNameAvailability(Unknown Source)
                          at portal.portlet.useradminportlet.ServiceBean.checkUserDetailsForEntry(Unknown Source)
                          at portal.portlet.useradminportlet.ServiceBean.toAddUserAccess(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:585)
                          at org.apache.el.parser.AstValue.invoke(AstValue.java:131)
                          at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
                          at org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:68)
                          at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:77)
                          at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:91)
                          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 teamdev.jsf.m.processApplication(SourceFile:146)
                          at com.sun.faces.portlet.LifecycleImpl$InvokeApplicationPhase.execute(LifecycleImpl.java:664)
                          at com.sun.faces.portlet.LifecycleImpl.phase(LifecycleImpl.java:330)
                          at com.sun.faces.portlet.LifecycleImpl.execute(LifecycleImpl.java:246)
                          at com.sun.faces.portlet.FacesPortlet.processAction(FacesPortlet.java:220)
                          at org.jboss.portal.portlet.impl.jsr168.PortletContainerImpl.invokeAction(PortletContainerImpl.java:458)
                          at org.jboss.portal.portlet.impl.jsr168.PortletContainerImpl.dispatch(PortletContainerImpl.java:401)
                          at org.jboss.portal.portlet.container.PortletContainerInvoker$1.invoke(PortletContainerInvoker.java:86)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:131)
                          at org.jboss.portal.core.aspects.portlet.TransactionInterceptor.org$jboss$portal$core$aspects$portlet$TransactionInterceptor$invokeNotSupported$aop(TransactionInterceptor.java:86)
                          at org.jboss.portal.core.aspects.portlet.TransactionInterceptor$invokeNotSupported_N4547270787964792031.invokeNext(TransactionInterceptor$invokeNotSupported_N4547270787964792031.java)
                          at org.jboss.aspects.tx.TxPolicy.invokeInNoTx(TxPolicy.java:66)
                          at org.jboss.aspects.tx.TxInterceptor$NotSupported.invoke(TxInterceptor.java:112)
                          at org.jboss.portal.core.aspects.portlet.TransactionInterceptor$invokeNotSupported_N4547270787964792031.invokeNext(TransactionInterceptor$invokeNotSupported_N4547270787964792031.java)
                          at org.jboss.aspects.tx.TxPolicy.invokeInNoTx(TxPolicy.java:66)
                          at org.jboss.aspects.tx.TxInterceptor$NotSupported.invoke(TxInterceptor.java:102)
                          at org.jboss.portal.core.aspects.portlet.TransactionInterceptor$invokeNotSupported_N4547270787964792031.invokeNext(TransactionInterceptor$invokeNotSupported_N4547270787964792031.java)
                          at org.jboss.portal.core.aspects.portlet.TransactionInterceptor.invokeNotSupported(TransactionInterceptor.java)
                          at org.jboss.portal.core.aspects.portlet.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.aspects.portlet.HeaderInterceptor.invoke(HeaderInterceptor.java:50)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.portlet.aspects.portlet.ProducerCacheInterceptor.invoke(ProducerCacheInterceptor.java:53)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.aspects.portlet.AjaxInterceptor.invoke(AjaxInterceptor.java:51)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.portlet.aspects.portlet.ModesInterceptor.invoke(ModesInterceptor.java:62)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.portlet.bridge.BridgeInterceptor.invoke(BridgeInterceptor.java:47)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.portlet.aspects.portlet.WindowStatesInterceptor.invoke(WindowStatesInterceptor.java:55)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.portlet.aspects.portlet.PortletSessionSynchronizationInterceptor.invoke(PortletSessionSynchronizationInterceptor.java:80)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.portlet.aspects.portlet.ContextTrackerInterceptor.invoke(ContextTrackerInterceptor.java:46)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.portlet.aspects.portlet.ContextDispatcherInterceptor$1.doCallback(ContextDispatcherInterceptor.java:104)
                          at org.jboss.portal.web.command.CommandDispatcher$CallbackCommand.execute(CommandDispatcher.java:74)
                          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:585)
                          at org.jboss.portal.web.command.CommandServlet.doGet(CommandServlet.java:131)
                          at org.jboss.portal.web.command.CommandServlet.doPost(CommandServlet.java:162)
                          at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
                          at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
                          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                          at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
                          at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:590)
                          at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:505)
                          at org.jboss.portal.web.command.CommandServlet.include(CommandServlet.java:80)
                          at org.jboss.portal.web.command.CommandDispatcher.include(CommandDispatcher.java:50)
                          at org.jboss.portal.web.jboss.JBossWebContext.include(JBossWebContext.java:65)
                          at org.jboss.portal.web.ServletContainer.include(ServletContainer.java:182)
                          at org.jboss.portal.portlet.impl.spi.AbstractRequestContext.dispatch(AbstractRequestContext.java:81)
                          at org.jboss.portal.portlet.aspects.portlet.ContextDispatcherInterceptor.invoke(ContextDispatcherInterceptor.java:76)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.portlet.aspects.portlet.SecureTransportInterceptor.invoke(SecureTransportInterceptor.java:68)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.portlet.aspects.portlet.ValveInterceptor.invoke(ValveInterceptor.java:60)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157)
                          at org.jboss.portal.portlet.container.PortletContainerInvoker.invoke(PortletContainerInvoker.java:198)
                          at org.jboss.portal.portlet.state.producer.ProducerPortletInvoker.invoke(ProducerPortletInvoker.java:233)
                          at org.jboss.portal.core.impl.portlet.state.ProducerPortletInvoker.org$jboss$portal$core$impl$portlet$state$ProducerPortletInvoker$invoke$aop(ProducerPortletInvoker.java:53)
                          at org.jboss.portal.core.impl.portlet.state.ProducerPortletInvoker$invoke_N8654503705355129869.invokeNext(ProducerPortletInvoker$invoke_N8654503705355129869.java)
                          at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
                          at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
                          at org.jboss.portal.core.impl.portlet.state.ProducerPortletInvoker$invoke_N8654503705355129869.invokeNext(ProducerPortletInvoker$invoke_N8654503705355129869.java)
                          at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
                          at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
                          at org.jboss.portal.core.impl.portlet.state.ProducerPortletInvoker$invoke_N8654503705355129869.invokeNext(ProducerPortletInvoker$invoke_N8654503705355129869.java)
                          at org.jboss.portal.core.impl.portlet.state.ProducerPortletInvoker.invoke(ProducerPortletInvoker.java)
                          at org.jboss.portal.portlet.federation.impl.FederatedPortletInvokerService.invoke(FederatedPortletInvokerService.java:147)
                          at org.jboss.portal.portlet.federation.impl.FederatingPortletInvokerService.invoke(FederatingPortletInvokerService.java:150)
                          at org.jboss.portal.core.impl.model.instance.InstanceContainerImpl$1.invoke(InstanceContainerImpl.java:98)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:131)
                          at org.jboss.portal.portlet.management.PortletContainerManagementInterceptorImpl.invoke(PortletContainerManagementInterceptorImpl.java:58)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.portlet.aspects.portlet.PortalSessionSynchronizationInterceptor.invoke(PortalSessionSynchronizationInterceptor.java:116)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.model.instance.InstanceSecurityInterceptor.invoke(InstanceSecurityInterceptor.java:91)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.portlet.aspects.portlet.ConsumerCacheInterceptor.invoke(ConsumerCacheInterceptor.java:175)
                          at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157)
                          at org.jboss.portal.core.impl.model.instance.InstanceContainerImpl.org$jboss$portal$core$impl$model$instance$InstanceContainerImpl$invoke$aop(InstanceContainerImpl.java:413)
                          at org.jboss.portal.core.impl.model.instance.InstanceContainerImpl$invoke_N8654503705355129869.invokeNext(InstanceContainerImpl$invoke_N8654503705355129869.java)
                          at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
                          at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
                          at org.jboss.portal.core.impl.model.instance.InstanceContainerImpl$invoke_N8654503705355129869.invokeNext(InstanceContainerImpl$invoke_N8654503705355129869.java)
                          at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
                          at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
                          at org.jboss.portal.core.impl.model.instance.InstanceContainerImpl$invoke_N8654503705355129869.invokeNext(InstanceContainerImpl$invoke_N8654503705355129869.java)
                          at org.jboss.portal.core.impl.model.instance.InstanceContainerImpl.invoke(InstanceContainerImpl.java)
                          at org.jboss.portal.core.impl.model.instance.AbstractInstance.invoke(AbstractInstance.java:234)
                          at org.jboss.portal.core.model.portal.command.action.InvokePortletWindowActionCommand.execute(InvokePortletWindowActionCommand.java:174)
                          at org.jboss.portal.core.controller.ControllerCommand$1.invoke(ControllerCommand.java:68)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:131)
                          at org.jboss.portal.core.aspects.controller.node.EventBroadcasterInterceptor.invoke(EventBroadcasterInterceptor.java:123)
                          at org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.aspects.controller.ControlInterceptor.invoke(ControlInterceptor.java:57)
                          at org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.aspects.controller.PageCustomizerInterceptor.invoke(PageCustomizerInterceptor.java:133)
                          at org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.aspects.controller.PolicyEnforcementInterceptor.invoke(PolicyEnforcementInterceptor.java:77)
                          at org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.aspects.controller.node.PortalNodeInterceptor.invoke(PortalNodeInterceptor.java:81)
                          at org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.aspects.controller.NavigationalStateInterceptor.invoke(NavigationalStateInterceptor.java:42)
                          at org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.controller.ajax.AjaxInterceptor.invoke(AjaxInterceptor.java:51)
                          at org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.aspects.controller.ResourceAcquisitionInterceptor.invoke(ResourceAcquisitionInterceptor.java:50)
                          at org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157)
                          at org.jboss.portal.core.controller.ControllerContext.execute(ControllerContext.java:134)
                          at org.jboss.portal.core.controller.Controller.processCommand(Controller.java:235)
                          at org.jboss.portal.core.controller.Controller.handle(Controller.java:218)
                          at org.jboss.portal.server.RequestControllerDispatcher.invoke(RequestControllerDispatcher.java:51)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:131)
                          at org.jboss.portal.core.cms.aspect.IdentityBindingInterceptor.invoke(IdentityBindingInterceptor.java:47)
                          at org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.server.aspects.server.ContentTypeInterceptor.invoke(ContentTypeInterceptor.java:68)
                          at org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.aspects.server.LocaleInterceptor.invoke(LocaleInterceptor.java:96)
                          at org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.aspects.server.UserInterceptor.invoke(UserInterceptor.java:245)
                          at org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.server.aspects.server.SignOutInterceptor.invoke(SignOutInterceptor.java:98)
                          at org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.impl.api.user.UserEventBridgeTriggerInterceptor.invoke(UserEventBridgeTriggerInterceptor.java:65)
                          at org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.core.aspects.server.TransactionInterceptor.org$jboss$portal$core$aspects$server$TransactionInterceptor$invoke$aop(TransactionInterceptor.java:49)
                          at org.jboss.portal.core.aspects.server.TransactionInterceptor$invoke_N5143606530999904530.invokeNext(TransactionInterceptor$invoke_N5143606530999904530.java)
                          at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
                          at org.jboss.aspects.tx.TxInterceptor$RequiresNew.invoke(TxInterceptor.java:253)
                          at org.jboss.portal.core.aspects.server.TransactionInterceptor$invoke_N5143606530999904530.invokeNext(TransactionInterceptor$invoke_N5143606530999904530.java)
                          at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
                          at org.jboss.aspects.tx.TxInterceptor$RequiresNew.invoke(TxInterceptor.java:262)
                          at org.jboss.portal.core.aspects.server.TransactionInterceptor$invoke_N5143606530999904530.invokeNext(TransactionInterceptor$invoke_N5143606530999904530.java)
                          at org.jboss.portal.core.aspects.server.TransactionInterceptor.invoke(TransactionInterceptor.java)
                          at org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.server.aspects.LockInterceptor$InternalLock.invoke(LockInterceptor.java:70)
                          at org.jboss.portal.server.aspects.LockInterceptor.invoke(LockInterceptor.java:131)
                          at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
                          at org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157)
                          at org.jboss.portal.server.servlet.PortalServlet.service(PortalServlet.java:380)
                          at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
                          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                          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.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
                          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:157)
                          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:595)


                          Again, thx for ur help!