9 Replies Latest reply on Sep 11, 2009 1:37 AM by Nick Belaevski

    Launching new tab from rich:menuItem

    Paul Pantages Novice

      Hello forum. I have posted this to the seam forum also.

      I am using:

      jboss_version=5.0.1.GA
      seam_version=2.1.2.GA
      richfaces_version=3.3.1.GA

      I am trying to launch a new tab from a context menu.
      I want new tab to start its own long running conversation
      so I have set "conversationPropagation" value="none".

      The action endPointPm.init returns a different page
      "page2.xhtml" from the current "page1.xhtml".

      The following works, but does not open a new tab. I.e., the
      target="_blank" is ignored. No conversation or other
      errors, occur. The new pages is rendered in a new conversation
      exactly as I expect.

      <rich:menuItem
       style="display: {pe};"
       value="PM _blank single no prop"
       ajaxSingle="true"
       target="_blank"
       action="#{endPointPm.init}">
       <f:param name="conversationPropagation" value="none" />
       <f:param name="id" value="{id}"/>
       <f:param name="profile" value="{pmp}"/>
      </rich:menuItem>
      

      If I add
      submitMode="server"
      

      I get my new tab; unfortunately this is accompanied (in the log) with
      an assortemnt of seam conversation errors, which indicate that the new
      tab is trying to render the original page "page1.xhtml", not the outcome
      of the action "page2.xhtml". These errors make sense: since I did not
      propagate the conversation, the seam components used to render the
      original page are not available in the new conversation.

      The action always returns "page2.xhtml" (it is hard coded)
      so it appears as if the target="_blank" and switchmode="server"
      confuse the navigation...? It seems like a navigation error
      to me;

      Any ideas? I have tried everything I can think of.



        • 1. Re: Launching new tab from rich:menuItem
          Nick Belaevski Master

          Hi,

          Have you checked if the action is called with submitMode="server" or not?

          • 2. Re: Launching new tab from rich:menuItem
            Paul Pantages Novice

            Hello Nick, thank you for the reply.

            Yes, I have checked the action method.

            It is not called when I add submitMode="server" to the component.

            PdP

            • 3. Re: Launching new tab from rich:menuItem
              Nick Belaevski Master

              Can you please post stack traces (if any) for the conversation errors you've mentioned?

              • 4. Re: Launching new tab from rich:menuItem
                Paul Pantages Novice

                OK here is an example of what I see....

                Thank you for taking the time to wade through this....
                Note the "Client:" debug statements at the beginning. These
                refer to conversation id: 11. This new cid is created as I have
                specified propagation=none.

                The original page was rendered with a (long running) conversation id 10.

                As you can see, Seam is trying to re-create the
                the components it needs to render alarmdetails.xhtml. (This it what I called page1.xhtml in my earlier post) .

                2009-09-09 19:03:09,953 TRACE [http-0.0.0.0-8080-1] centina.sa.client.network.SubnetTreeImpl
                Client: [networkAlarmDetailTreeImpl] Status change counter 25
                
                2009-09-09 19:03:10,033 INFO [http-0.0.0.0-8080-1] centina.sa.client.network.SubnetTreeImpl
                Client: [networkAlarmDetailTreeImpl] (11) Create
                
                2009-09-09 19:03:10,034 INFO [http-0.0.0.0-8080-1] centina.sa.client.fault.AlarmEditBean
                Client: [eventEditor] (11) Create
                
                2009-09-09 19:03:10,038 DEBUG [http-0.0.0.0-8080-1] centina.sa.server.security.session.SecuritySessionBean
                Request to getAllUsers()
                
                2009-09-09 19:03:10,046 DEBUG [http-0.0.0.0-8080-1] centina.sa.server.security.session.SecuritySessionBean
                Request to getAllUserGroups()
                
                2009-09-09 19:03:10,101 WARN [http-0.0.0.0-8080-1] javax.enterprise.resource.webcontainer.jsf.lifecycle
                javax.el.ELException: /view/fault/alarmdetails.xhtml @208,144 rendered="#{ eventEditor.isAlarmActive and ( s:hasRole('OPERATOR') || s:hasRole('NETWORK_ADMIN') || s:hasRole('ADMIN') ) }": Error reading 'isAlarmActive' on type org.javassist.tmp.java.lang.Object_$$_javassist_seam_17
                
                javax.faces.FacesException: javax.el.ELException: /view/fault/alarmdetails.xhtml @208,144 rendered="#{ eventEditor.isAlarmActive and ( s:hasRole('OPERATOR') || s:hasRole('NETWORK_ADMIN') || s:hasRole('ADMIN') ) }": Error reading 'isAlarmActive' on type org.javassist.tmp.java.lang.Object_$$_javassist_seam_17
                 at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:393)
                 at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1018)
                 at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1026)
                 at javax.faces.component.UIForm.processDecodes(UIForm.java:209)
                 at org.ajax4jsf.component.UIAjaxRegion.processDecodes(UIAjaxRegion.java:103)
                 at org.ajax4jsf.component.AjaxViewRoot$1.invokeContextCallback(AjaxViewRoot.java:392)
                 at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:238)
                 at org.ajax4jsf.component.AjaxViewRoot.processDecodes(AjaxViewRoot.java:409)
                 at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:78)
                 at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
                 at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
                 at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
                 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
                 at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                 at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                 at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                 at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                 at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
                 at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
                 at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:368)
                 at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:495)
                 at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                 at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:60)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                 at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
                 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:235)
                 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
                 at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
                 at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
                 at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
                 at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
                 at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
                 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
                 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
                 at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
                 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
                 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
                 at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601)
                 at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
                 at java.lang.Thread.run(Thread.java:619)
                Caused by: javax.el.ELException: /view/fault/alarmdetails.xhtml @208,144 rendered="#{ eventEditor.isAlarmActive and ( s:hasRole('OPERATOR') || s:hasRole('NETWORK_ADMIN') || s:hasRole('ADMIN') ) }": Error reading 'isAlarmActive' on type org.javassist.tmp.java.lang.Object_$$_javassist_seam_17
                 at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:76)
                 at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:390)
                 ... 52 more
                Caused by: javax.ejb.EJBException: org.jboss.seam.NoConversationException: no long-running conversation for @Conversational bean: eventEditor
                 at org.jboss.ejb3.tx.Ejb3TxPolicy.handleExceptionInOurTx(Ejb3TxPolicy.java:77)
                 at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:83)
                 at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:190)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.security.RoleBasedAuthorizationInterceptorv2.invoke(RoleBasedAuthorizationInterceptorv2.java:201)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke(Ejb3AuthenticationInterceptorv2.java:186)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:41)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.BlockContainerShutdownInterceptor.invoke(BlockContainerShutdownInterceptor.java:67)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.session.SessionSpecContainer.invoke(SessionSpecContainer.java:219)
                 at org.jboss.ejb3.proxy.handler.ProxyInvocationHandlerBase.invoke(ProxyInvocationHandlerBase.java:261)
                 at org.jboss.ejb3.proxy.handler.session.SessionSpecProxyInvocationHandlerBase.invoke(SessionSpecProxyInvocationHandlerBase.java:101)
                 at $Proxy420.getIsAlarmActive(Unknown Source)
                 at sun.reflect.GeneratedMethodAccessor1228.invoke(Unknown Source)
                 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:22)
                 at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:32)
                 at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:76)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
                 at org.jboss.seam.ejb.RemoveInterceptor.aroundInvoke(RemoveInterceptor.java:43)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                 at org.jboss.seam.core.SynchronizationInterceptor.aroundInvoke(SynchronizationInterceptor.java:32)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                 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_seam_17.getIsAlarmActive(Object_$$_javassist_seam_17.java)
                 at sun.reflect.GeneratedMethodAccessor1227.invoke(Unknown Source)
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                 at java.lang.reflect.Method.invoke(Method.java:597)
                 at javax.el.BeanELResolver.getValue(BeanELResolver.java:62)
                 at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
                 at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:72)
                 at org.jboss.el.parser.AstPropertySuffix.getValue(AstPropertySuffix.java:53)
                 at org.jboss.el.parser.AstValue.getValue(AstValue.java:67)
                 at org.jboss.el.parser.AstAnd.getValue(AstAnd.java:21)
                 at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
                 at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
                 ... 53 more
                Caused by: org.jboss.seam.NoConversationException: no long-running conversation for @Conversational bean: eventEditor
                 at org.jboss.seam.core.ConversationalInterceptor.aroundInvoke(ConversationalInterceptor.java:40)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                 at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                 at org.jboss.seam.persistence.EntityManagerProxyInterceptor.aroundInvoke(EntityManagerProxyInterceptor.java:29)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                 at org.jboss.seam.persistence.HibernateSessionProxyInterceptor.aroundInvoke(HibernateSessionProxyInterceptor.java:30)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                 at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
                 at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:50)
                 at sun.reflect.GeneratedMethodAccessor508.invoke(Unknown Source)
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                 at java.lang.reflect.Method.invoke(Method.java:597)
                 at org.jboss.ejb3.interceptors.aop.EJB3InterceptorInterceptor.invoke(EJB3InterceptorInterceptor.java:83)
                 at org.jboss.ejb3.interceptors.aop.EJB3InterceptorInterceptor.invoke(EJB3InterceptorInterceptor.java:70)
                 at org.jboss.ejb3.EJBContainerInvocationWrapper.invokeNext(EJBContainerInvocationWrapper.java:59)
                 at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.invoke(InterceptorSequencer.java:73)
                 at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.aroundInvoke(InterceptorSequencer.java:59)
                 at sun.reflect.GeneratedMethodAccessor507.invoke(Unknown Source)
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                 at java.lang.reflect.Method.invoke(Method.java:597)
                 at org.jboss.aop.advice.PerJoinpointAdvice.invoke(PerJoinpointAdvice.java:174)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.fillMethod(InvocationContextInterceptor.java:72)
                 at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_fillMethod_32261429.invoke(InvocationContextInterceptor_z_fillMethod_32261429.java)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.setup(InvocationContextInterceptor.java:88)
                 at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_setup_32261429.invoke(InvocationContextInterceptor_z_setup_32261429.java)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:62)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:60)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:56)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:81)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
                 ... 100 more
                2009-09-09 19:03:10,104 ERROR [http-0.0.0.0-8080-1] javax.enterprise.resource.webcontainer.jsf.lifecycle
                JSF1054: (Phase ID: APPLY_REQUEST_VALUES 2, View ID: /view/fault/alarmdetails.xhtml) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@913b6]
                
                2009-09-09 19:03:10,104 DEBUG [http-0.0.0.0-8080-1] javax.enterprise.resource.webcontainer.jsf.timing
                 [TIMING] - [267ms] : Execution time for phase (including any PhaseListeners) -> APPLY_REQUEST_VALUES 2
                
                2009-09-09 19:03:10,109 INFO [http-0.0.0.0-8080-1] centina.sa.client.network.SubnetTreeImpl
                Client: [networkAlarmDetailTreeImpl] (11) Destroy
                
                2009-09-09 19:03:10,147 ERROR [http-0.0.0.0-8080-1] org.jboss.seam.exception.Exceptions
                handled and logged exception
                
                javax.servlet.ServletException: javax.el.ELException: /view/fault/alarmdetails.xhtml @208,144 rendered="#{ eventEditor.isAlarmActive and ( s:hasRole('OPERATOR') || s:hasRole('NETWORK_ADMIN') || s:hasRole('ADMIN') ) }": Error reading 'isAlarmActive' on type org.javassist.tmp.java.lang.Object_$$_javassist_seam_17
                 at javax.faces.webapp.FacesServlet.service(FacesServlet.java:277)
                 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
                 at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                 at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                 at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                 at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                 at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
                 at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
                 at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:368)
                 at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:495)
                 at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                 at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:60)
                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                 at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
                 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:235)
                 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
                 at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
                 at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
                 at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
                 at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
                 at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
                 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
                 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
                 at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
                 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
                 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
                 at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601)
                 at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
                 at java.lang.Thread.run(Thread.java:619)
                Caused by: javax.faces.FacesException: javax.el.ELException: /view/fault/alarmdetails.xhtml @208,144 rendered="#{ eventEditor.isAlarmActive and ( s:hasRole('OPERATOR') || s:hasRole('NETWORK_ADMIN') || s:hasRole('ADMIN') ) }": Error reading 'isAlarmActive' on type org.javassist.tmp.java.lang.Object_$$_javassist_seam_17
                 at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:393)
                 at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1018)
                 at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1026)
                 at javax.faces.component.UIForm.processDecodes(UIForm.java:209)
                 at org.ajax4jsf.component.UIAjaxRegion.processDecodes(UIAjaxRegion.java:103)
                 at org.ajax4jsf.component.AjaxViewRoot$1.invokeContextCallback(AjaxViewRoot.java:392)
                 at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:238)
                 at org.ajax4jsf.component.AjaxViewRoot.processDecodes(AjaxViewRoot.java:409)
                 at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:78)
                 at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
                 at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
                 at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
                 ... 41 more
                Caused by: javax.el.ELException: /view/fault/alarmdetails.xhtml @208,144 rendered="#{ eventEditor.isAlarmActive and ( s:hasRole('OPERATOR') || s:hasRole('NETWORK_ADMIN') || s:hasRole('ADMIN') ) }": Error reading 'isAlarmActive' on type org.javassist.tmp.java.lang.Object_$$_javassist_seam_17
                 at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:76)
                 at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:390)
                 ... 52 more
                Caused by: javax.ejb.EJBException: org.jboss.seam.NoConversationException: no long-running conversation for @Conversational bean: eventEditor
                 at org.jboss.ejb3.tx.Ejb3TxPolicy.handleExceptionInOurTx(Ejb3TxPolicy.java:77)
                 at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:83)
                 at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:190)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.security.RoleBasedAuthorizationInterceptorv2.invoke(RoleBasedAuthorizationInterceptorv2.java:201)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke(Ejb3AuthenticationInterceptorv2.java:186)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:41)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.BlockContainerShutdownInterceptor.invoke(BlockContainerShutdownInterceptor.java:67)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.session.SessionSpecContainer.invoke(SessionSpecContainer.java:219)
                 at org.jboss.ejb3.proxy.handler.ProxyInvocationHandlerBase.invoke(ProxyInvocationHandlerBase.java:261)
                 at org.jboss.ejb3.proxy.handler.session.SessionSpecProxyInvocationHandlerBase.invoke(SessionSpecProxyInvocationHandlerBase.java:101)
                 at $Proxy420.getIsAlarmActive(Unknown Source)
                 at sun.reflect.GeneratedMethodAccessor1228.invoke(Unknown Source)
                 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:22)
                 at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:32)
                 at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:76)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
                 at org.jboss.seam.ejb.RemoveInterceptor.aroundInvoke(RemoveInterceptor.java:43)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                 at org.jboss.seam.core.SynchronizationInterceptor.aroundInvoke(SynchronizationInterceptor.java:32)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                 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_seam_17.getIsAlarmActive(Object_$$_javassist_seam_17.java)
                 at sun.reflect.GeneratedMethodAccessor1227.invoke(Unknown Source)
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                 at java.lang.reflect.Method.invoke(Method.java:597)
                 at javax.el.BeanELResolver.getValue(BeanELResolver.java:62)
                 at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
                 at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:72)
                 at org.jboss.el.parser.AstPropertySuffix.getValue(AstPropertySuffix.java:53)
                 at org.jboss.el.parser.AstValue.getValue(AstValue.java:67)
                 at org.jboss.el.parser.AstAnd.getValue(AstAnd.java:21)
                 at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
                 at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
                 ... 53 more
                Caused by: org.jboss.seam.NoConversationException: no long-running conversation for @Conversational bean: eventEditor
                 at org.jboss.seam.core.ConversationalInterceptor.aroundInvoke(ConversationalInterceptor.java:40)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                 at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                 at org.jboss.seam.persistence.EntityManagerProxyInterceptor.aroundInvoke(EntityManagerProxyInterceptor.java:29)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                 at org.jboss.seam.persistence.HibernateSessionProxyInterceptor.aroundInvoke(HibernateSessionProxyInterceptor.java:30)
                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                 at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
                 at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:50)
                 at sun.reflect.GeneratedMethodAccessor508.invoke(Unknown Source)
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                 at java.lang.reflect.Method.invoke(Method.java:597)
                 at org.jboss.ejb3.interceptors.aop.EJB3InterceptorInterceptor.invoke(EJB3InterceptorInterceptor.java:83)
                 at org.jboss.ejb3.interceptors.aop.EJB3InterceptorInterceptor.invoke(EJB3InterceptorInterceptor.java:70)
                 at org.jboss.ejb3.EJBContainerInvocationWrapper.invokeNext(EJBContainerInvocationWrapper.java:59)
                 at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.invoke(InterceptorSequencer.java:73)
                 at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.aroundInvoke(InterceptorSequencer.java:59)
                 at sun.reflect.GeneratedMethodAccessor507.invoke(Unknown Source)
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                 at java.lang.reflect.Method.invoke(Method.java:597)
                 at org.jboss.aop.advice.PerJoinpointAdvice.invoke(PerJoinpointAdvice.java:174)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.fillMethod(InvocationContextInterceptor.java:72)
                 at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_fillMethod_32261429.invoke(InvocationContextInterceptor_z_fillMethod_32261429.java)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.setup(InvocationContextInterceptor.java:88)
                 at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_setup_32261429.invoke(InvocationContextInterceptor_z_setup_32261429.java)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:62)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:60)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:56)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:81)
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
                 at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
                 ... 100 more
                2009-09-09 19:03:10,154 DEBUG [http-0.0.0.0-8080-3] javax.enterprise.resource.webcontainer.jsf.lifecycle
                execute(com.sun.faces.context.FacesContextImpl@f04db1)
                
                2009-09-09 19:03:10,154 DEBUG [http-0.0.0.0-8080-3] javax.enterprise.resource.webcontainer.jsf.lifecycle
                Entering RestoreViewPhase
                
                2009-09-09 19:03:10,155 DEBUG [http-0.0.0.0-8080-3] javax.enterprise.resource.webcontainer.jsf.lifecycle
                New request: creating a view for /view/error.seam
                
                


                • 5. Re: Launching new tab from rich:menuItem
                  Nick Belaevski Master

                  So, disabled conversation propagation is the problem. When you use "target", submit still occurs for the initial view and then server response is rendered in the new window. For your case page1.xhtml is being submitted and processed, but the action (that triggers navigation) is not called because decoding fails.

                  • 6. Re: Launching new tab from rich:menuItem
                    Paul Pantages Novice

                    OK Nick thank you.

                    This explanation is logical, however, I am certain that I was able to make it work w/o the target attribute. I.e., even though I had submitmode=server and propagation=none, I didn't run into this problem. I will retest this.

                    From you explanation, I think that I should have see the same errors w/o the target=_blank? I know the restore view phase must differ between the two cases, but I am not intuitive enough to figure out the consequence of this.

                    I will post if I find anything significant.

                    • 7. Re: Launching new tab from rich:menuItem
                      Nick Belaevski Master

                      Ok, please check and keep me posted.

                      • 8. Re: Launching new tab from rich:menuItem
                        Paul Pantages Novice

                        I was unable to make it work with submitmode=server and
                        propagation=none. I thought that I had, but I have tried so many
                        combos that I must have mixed this up with someting else...

                        However I was able get this mechanism to work from a different
                        location (view) in my application. I.e., I had submitmode=server and
                        propagation=none, target=_blank. It opened the tab & my new page
                        (view2) was there as expected.

                        So, I checked this "second case" with the Seam debugger and verified that you are correct:

                        What happened was that Seam simply recreated all the objects required
                        to render view1, and populated my new conversation (view2) with these. In this
                        case, Seam was able to create everything ( due to @Factory methods or other mechanisms ) w/o error.

                        I guess I misunderstood what propagation=none could do for me. I
                        thought that I could leave the current conversation, and all its
                        supporting objects, behind with this. In fact, I inherited the
                        entire complement of backing beans (new copies) in my new
                        view/conversation. This doesn't hurt anything, but is a bit of an unneccessary waste of resources.

                        My original idea/attempt was to use submitmode=ajax, target=_blank.
                        This works (and keeps the conversations clean) , but doesn't open the new tab as expected...

                        Is the target attribute only valid for submitmode=server?

                        Something else I just noticed.... I had not created an LRC in my new view, so I added @Begin to my action method,( endPointPm.init ). For my trouble, I am now presented with a "Already in a long running conv. " exception, despite the fact that I specify propagation=none. ( This, of course is in the "second case" test).

                        • 9. Re: Launching new tab from rich:menuItem
                          Nick Belaevski Master

                          Hi,

                          Is the target attribute only valid for submitmode=server?

                          Yes, it's only valid for for "server" mode. Also I've heard there are some issues switching conversations by AJAX, however I haven't dig into that and cannot advice, sorry.

                          Something else I just noticed.... I had not created an LRC in my new view, so I added @Begin to my action method,( endPointPm.init ). For my trouble, I am now presented with a "Already in a long running conv. " exception, despite the fact that I specify propagation=none. ( This, of course is in the "second case" test).

                          Maybe try this then instead:
                          <s:conversationPropagation type="end"/>
                          ?