5 Replies Latest reply on Jul 29, 2011 6:41 PM by Jason Porter

    Catch exception handler not invoked before exception trace sent to log

    Bill Elliot Newbie

      I am trying to use Catch to catch an AuthorizationException. But, the stack trace of this error is dumped to the log before the exception handler is invoked. Also, once the handler is invoked the page specified in the @ViewConfig using:
      @AccessDeniedView(/notAuthorized.xhtml) is not redirected to. I am using AS6.


      What might I be missing?



      @ViewConfig
      public interface Pages {
      
           static enum Pages1 {
                @ViewPattern("/scaffold/user/*.xhtml")
                @RestrictAtPhase(PhaseIdType.RESTORE_VIEW)
                @Admin
                ADMIN,
                
                @FacesRedirect
                @ViewPattern("/*")
                @AccessDeniedView("/index.xhtml")
                @LoginView("/login.xhtml")
                ALL;
           }
      }





      @HandlesExceptions
      public class ExceptionHandler
      {
         @Inject FacesContext facesContext;
            public void handleAuthorizationException(@Handles CaughtException<AuthorizationException> evt)
         {
            facesContext.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR,
                  "You do not have the necessary permissions to perform that operation", ""));
            evt.unmute();
            evt.markHandled();      
         }
      }



          

        • 1. Re: Catch exception handler not invoked before exception trace sent to log
          Jason Porter Master

          I think there are a couple of things here. The logged exception is more than likely coming from Seam Security (maybe you could verify in the logs as to which class logged it). The Faces redirect not happening is possibly a bug, I'm not sure how it works. Does it work correctly if you don't have Catch, or aren't using the handlers?


          In your handler you may find it a little easier to have Messages be a parameter and use the Message API from Faces/International. Also not sure why you're marking the event as unmute.


          A workaround my be to inject (via a parameter on the handler method) Pages, figure out what view you are on and manually do the redirect. I know that's really nasty, but until we're able to figure it out a bit more that may be your best solution.


          Do you have a test or is the code publicly available for us to try?

          • 2. Re: Catch exception handler not invoked before exception trace sent to log
            Bill Elliot Newbie

            The reason for the unmute, is only that I was trying the various examples in the example code trying to get this to work. The documentation talks about using handle() and markHandled(). But, it is not clear as to when to use one over the other. The same with the use of unmute/markHandled from the example.


            Likewise with the message. It was just a copy from the example until I got it to work. Then I was going to clean it up to use Faces/I18N.


            The code is not public. But, let me know of anything else you need and I can post the relevant pieces.


            I'm not crazy about trying to parse the Pages bean. I'm not even sure how to parse out the annotations. Plus duplicating the filtering on the pattern would mean I'm basically rewriting a major portion of what Pages is suppose to be doing.


            I may have to try falling back to raw JSF to catch errors and redirect to the relevant error page.


            I also have the authorization annotation on the userBean that is being used to display the page being requested. Here is the stack trace from the error:




            10:05:31,899 ERROR [org.jboss.ejb3.tx2.impl.CMTTxInterceptor] javax.ejb.EJBTransactionRolledbackException: Authorization check failed
            10:05:31,909 SEVERE [javax.enterprise.resource.webcontainer.jsf.application] Error Rendering View[/scaffold/user/list.xhtml]: javax.el.ELException: /s
            caffold/user/list.xhtml @35,56 value="#{userBean.list}": javax.ejb.EJBTransactionRolledbackException: Authorization check failed
                 at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:111) [:2.0.3-]
                 at com.sun.faces.facelets.component.UIRepeat.getValue(UIRepeat.java:268) [:2.0.3-]
                 at com.sun.faces.facelets.component.UIRepeat.getDataModel(UIRepeat.java:244) [:2.0.3-]
                 at com.sun.faces.facelets.component.UIRepeat.setIndex(UIRepeat.java:434) [:2.0.3-]
                 at com.sun.faces.facelets.component.UIRepeat.process(UIRepeat.java:468) [:2.0.3-]
                 at com.sun.faces.facelets.component.UIRepeat.encodeChildren(UIRepeat.java:953) [:2.0.3-]
                 at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1643) [:2.0.3-SNAPSHOT]
                 at javax.faces.render.Renderer.encodeChildren(Renderer.java:164) [:2.0.3-SNAPSHOT]
                 at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:849) [:2.0.3-SNAPSHOT]
                 at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1643) [:2.0.3-SNAPSHOT]
                 at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1646) [:2.0.3-SNAPSHOT]
                 at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1646) [:2.0.3-SNAPSHOT]
                 at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:389) [:2.0.3-]
                 at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:127) [:2.0.3-]
                 at com.ocpsoft.pretty.faces.application.PrettyViewHandler.renderView(PrettyViewHandler.java:163) [:]
                 at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:269) [:2.0.3-SNAPSHOT]
                 at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:269) [:2.0.3-SNAPSHOT]
                 at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:117) [:2.0.3-]
                 at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97) [:2.0.3-]
                 at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:135) [:2.0.3-]
                 at javax.faces.webapp.FacesServlet.service(FacesServlet.java:309) [:2.0.3-SNAPSHOT]
                 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:324) [:6.0.0.Final]
                 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:242) [:6.0.0.Final]
                 at com.ocpsoft.pretty.PrettyFilter.doFilter(PrettyFilter.java:118) [:]
                 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:274) [:6.0.0.Final]
                 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:242) [:6.0.0.Final]
                 at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:734) [:6.0.0.Final]
                 at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:541) [:6.0.0.Final]
                 at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:479) [:6.0.0.Final]
                 at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:407) [:6.0.0.Final]
                 at com.ocpsoft.pretty.PrettyFilter.doFilter(PrettyFilter.java:110) [:]
                 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:274) [:6.0.0.Final]
                 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:242) [:6.0.0.Final]
                 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [:6.0.0.Final]
                 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) [:6.0.0.Final]
                 at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:181) [:6.0.0.Final]
                 at org.jboss.modcluster.catalina.CatalinaContext$RequestListenerValve.event(CatalinaContext.java:285) [:1.1.0.Final]
                 at org.jboss.modcluster.catalina.CatalinaContext$RequestListenerValve.invoke(CatalinaContext.java:261) [:1.1.0.Final]
                 at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:88) [:6.0.0.Final]
                 at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:100) [:6.0.0.Final]
                 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) [:6.0.0.Final]
                 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [:6.0.0.Final]
                 at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) [:6.0.0.Final]
                 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [:6.0.0.Final]
                 at org.jboss.web.tomcat.service.request.ActiveRequestResponseCacheValve.invoke(ActiveRequestResponseCacheValve.java:53) [:6.0.0.Final]
                 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:362) [:6.0.0.Final]
                 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) [:6.0.0.Final]
                 at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:654) [:6.0.0.Final]
                 at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:951) [:6.0.0.Final]
                 at java.lang.Thread.run(Thread.java:619) [:1.6.0_13]
            Caused by: javax.ejb.EJBTransactionRolledbackException: Authorization check failed
                 at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.handleInCallerTx(CMTTxInterceptor.java:148) [:0.0.1]
                 at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invokeInCallerTx(CMTTxInterceptor.java:227) [:0.0.1]
                 at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.required(CMTTxInterceptor.java:353) [:0.0.1]
                 at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invoke(CMTTxInterceptor.java:209) [:0.0.1]
                 at org.jboss.ejb3.tx2.aop.CMTTxInterceptorWrapper.invoke(CMTTxInterceptorWrapper.java:52) [:0.0.1]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76) [:1.0.0.GA]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42) [:1.0.3]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke(Ejb3AuthenticationInterceptorv2.java:182) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:41) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.BlockContainerShutdownInterceptor.invoke(BlockContainerShutdownInterceptor.java:67) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.core.context.CurrentInvocationContextInterceptor.invoke(CurrentInvocationContextInterceptor.java:47) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67) [:1.0.1]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.interceptor.EJB3TCCLInterceptor.invoke(EJB3TCCLInterceptor.java:86) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.session.SessionSpecContainer.invoke(SessionSpecContainer.java:323) [:1.7.17]
                 at org.jboss.ejb3.session.SessionSpecContainer.invoke(SessionSpecContainer.java:156) [:1.7.17]
                 at org.jboss.ejb3.nointerface.impl.invocationhandler.NoInterfaceViewInvocationHandler.invokeEndpoint(NoInterfaceViewInvocationHandler.java:143) [:6.0
            .0.Final]
                 at org.jboss.ejb3.nointerface.impl.invocationhandler.NoInterfaceViewInvocationHandler.access$000(NoInterfaceViewInvocationHandler.java:54) [:6.0.0.Fi
            nal]
                 at org.jboss.ejb3.nointerface.impl.invocationhandler.NoInterfaceViewInvocationHandler$1.invoke(NoInterfaceViewInvocationHandler.java:103) [:6.0.0.Fin
            al]
                 at org.jboss.ejb3.sis.reflect.InterceptorInvocationHandler$1.proceed(InterceptorInvocationHandler.java:84) [:1.0.0-alpha-1]
                 at org.jboss.ejb3.sis.InterceptorAssembly$1.proceed(InterceptorAssembly.java:82) [:1.0.0-alpha-1]
                 at org.jboss.ejb3.nointerface.impl.async.AsyncClientInterceptor.invoke(AsyncClientInterceptor.java:119) [:6.0.0.Final]
                 at org.jboss.ejb3.sis.InterceptorAssembly$1.proceed(InterceptorAssembly.java:74) [:1.0.0-alpha-1]
                 at org.jboss.ejb3.nointerface.impl.invocationhandler.ObjectMethodsInterceptor.invoke(ObjectMethodsInterceptor.java:78) [:6.0.0.Final]
                 at org.jboss.ejb3.sis.InterceptorAssembly$1.proceed(InterceptorAssembly.java:74) [:1.0.0-alpha-1]
                 at org.jboss.ejb3.sis.InterceptorAssembly.invoke(InterceptorAssembly.java:90) [:1.0.0-alpha-1]
                 at org.jboss.ejb3.sis.reflect.InterceptorInvocationHandler.invoke(InterceptorInvocationHandler.java:110) [:1.0.0-alpha-1]
                 at org.jboss.ejb3.nointerface.impl.invocationhandler.NoInterfaceViewInvocationHandler.invoke(NoInterfaceViewInvocationHandler.java:115) [:6.0.0.Final
            ]
                 at org.jboss.ejb3.proxy.javassist.JavassistInvocationHandlerAdapter.invoke(JavassistInvocationHandlerAdapter.java:71) [:1.0.0-alpha-1]
                 at com.ngo.view.UserBean_$$_javassist_13.getList(UserBean_$$_javassist_13.java) [:]
                 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_13]
                 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_13]
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_13]
                 at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_13]
                 at org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:305) [:6.0.0.Final]
                 at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:54) [:6.0.0.Final]
                 at org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:163) [:6.0.0.Final]
                 at org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:299) [:6.0.0.Final]
                 at org.jboss.weld.bean.proxy.EnterpriseBeanProxyMethodHandler.invoke(EnterpriseBeanProxyMethodHandler.java:126) [:6.0.0.Final]
                 at org.jboss.weld.bean.proxy.EnterpriseTargetBeanInstance.invoke(EnterpriseTargetBeanInstance.java:62) [:6.0.0.Final]
                 at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:125) [:6.0.0.Final]
                 at com.ngo.view.org$jboss$weld$bean-jboss$classloader:id="vfs:$$$W:$jboss-6$0$0$Final$server$default$deploy$ngo$war"-SessionBean-UserBeancom$ngo$view
            $UserBean[@javax$ejb$Stateful(description=,mappedName=,name=)@javax$enterprise$context$RequestScoped()@javax$inject$Named(value=)@org$jboss$seam$trans
            action$Transactional(value=REQUIRED)@org$jboss$seam$transaction$TransactionalInterceptorBinding()]{org$jboss$seam$forge$persistence$PersistenceUtil$en
            tityManager[@javax$inject$Inject()]$com$ngo$view$UserBean$getList[@com$ngo$security$annotations$Admin()@org$jboss$seam$security$extension$SecurityInte
            rceptorBinding()]()$}_$$_WeldProxy.getList(org$jboss$weld$bean-jboss$classloader:id="vfs:$$$W:$jboss-6$0$0$Final$server$default$deploy$ngo$war"-Sessio
            nBean-UserBeancom$ngo$view$UserBean[@javax$ejb$Stateful(description=,mappedName=,name=)@javax$enterprise$context$RequestScoped()@javax$inject$Named(va
            lue=)@org$jboss$seam$transaction$Transactional(value=REQUIRED)@org$jboss$seam$transaction$TransactionalInterceptorBinding()]{org$jboss$seam$forge$pers
            istence$PersistenceUtil$entityManager[@javax$inject$Inject()]$com$ngo$view$UserBean$getList[@com$ngo$security$annotations$Admin()@org$jboss$seam$secur
            ity$extension$SecurityInterceptorBinding()]()$}_$$_WeldProxy.java)
                 at com.ngo.view.org$jboss$weld$bean-jboss$classloader:id="vfs:$$$W:$jboss-6$0$0$Final$server$default$deploy$ngo$war"-SessionBean-UserBeancom$ngo$view
            $UserBean[@javax$ejb$Stateful(description=,mappedName=,name=)@javax$enterprise$context$RequestScoped()@javax$inject$Named(value=)@org$jboss$seam$trans
            action$Transactional(value=REQUIRED)@org$jboss$seam$transaction$TransactionalInterceptorBinding()]{org$jboss$seam$forge$persistence$PersistenceUtil$en
            tityManager[@javax$inject$Inject()]$com$ngo$view$UserBean$getList[@com$ngo$security$annotations$Admin()@org$jboss$seam$security$extension$SecurityInte
            rceptorBinding()]()$}_$$_WeldClientProxy.getList(org$jboss$weld$bean-jboss$classloader:id="vfs:$$$W:$jboss-6$0$0$Final$server$default$deploy$ngo$war"-
            SessionBean-UserBeancom$ngo$view$UserBean[@javax$ejb$Stateful(description=,mappedName=,name=)@javax$enterprise$context$RequestScoped()@javax$inject$Na
            med(value=)@org$jboss$seam$transaction$Transactional(value=REQUIRED)@org$jboss$seam$transaction$TransactionalInterceptorBinding()]{org$jboss$seam$forg
            e$persistence$PersistenceUtil$entityManager[@javax$inject$Inject()]$com$ngo$view$UserBean$getList[@com$ngo$security$annotations$Admin()@org$jboss$seam
            $security$extension$SecurityInterceptorBinding()]()$}_$$_WeldClientProxy.java)
                 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_13]
                 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_13]
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_13]
                 at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_13]
                 at javax.el.BeanELResolver.getValue(BeanELResolver.java:302) [:1.0.0.Final]
                 at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:175) [:1.0.0.Final]
                 at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:71) [:2.0.3-]
                 at org.apache.el.parser.AstValue.getValue(AstValue.java:134) [:6.0.0.Final]
                 at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:187) [:6.0.0.Final]
                 at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:55) [:6.0.0.Final]
                 at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:55) [:6.0.0.Final]
                 at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:106) [:2.0.3-]
                 ... 49 more
            Caused by: org.jboss.weld.exceptions.WeldException: Authorization check failed
                 at org.jboss.weld.bean.InterceptorImpl.intercept(InterceptorImpl.java:101) [:6.0.0.Final]
                 at org.jboss.weld.integration.ejb.interceptor.DelegatingInterceptorInvocationContext.proceed(DelegatingInterceptorInvocationContext.java:77) [:6.0.0.
            Final]
                 at org.jboss.weld.integration.ejb.interceptor.Jsr299BindingsInterceptor.delegateInterception(Jsr299BindingsInterceptor.java:165) [:6.0.0.Final]
                 at org.jboss.weld.integration.ejb.interceptor.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:147) [:6.0.0.Final]
                 at org.jboss.weld.integration.ejb.interceptor.Jsr299BindingsInterceptor.doAroundInvoke(Jsr299BindingsInterceptor.java:122) [:6.0.0.Final]
                 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_13]
                 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_13]
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_13]
                 at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_13]
                 at org.jboss.ejb3.interceptors.aop.EJB3InterceptorInterceptor.invoke(EJB3InterceptorInterceptor.java:80) [:1.1.3]
                 at org.jboss.ejb3.interceptors.aop.EJB3InterceptorInterceptor.invoke(EJB3InterceptorInterceptor.java:71) [:1.1.3]
                 at org.jboss.ejb3.interceptors.container.ContainerMethodInvocationWrapper.invokeNext(ContainerMethodInvocationWrapper.java:62) [:1.1.3]
                 at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor$InvocationContext.proceed(InvocationContextInterceptor.java:127) [:1.1.3]
                 at org.jboss.weld.ejb.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:46) [:6.0.0.Final]
                 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_13]
                 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_13]
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_13]
                 at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_13]
                 at org.jboss.ejb3.interceptors.aop.EJB3InterceptorInterceptor.invoke(EJB3InterceptorInterceptor.java:80) [:1.1.3]
                 at org.jboss.ejb3.interceptors.aop.EJB3InterceptorInterceptor.invoke(EJB3InterceptorInterceptor.java:71) [:1.1.3]
                 at org.jboss.ejb3.interceptors.container.ContainerMethodInvocationWrapper.invokeNext(ContainerMethodInvocationWrapper.java:62) [:1.1.3]
                 at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.invoke(InterceptorSequencer.java:76) [:1.1.3]
                 at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.aroundInvoke(InterceptorSequencer.java:62) [:1.1.3]
                 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_13]
                 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_13]
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_13]
                 at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_13]
                 at org.jboss.aop.advice.PerJoinpointAdvice.invoke(PerJoinpointAdvice.java:174) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.fillMethod(InvocationContextInterceptor.java:74) [:1.1.3]
                 at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_fillMethod_27695473.invoke(InvocationContextInterceptor_z_fill
            Method_27695473.java) [:]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.setup(InvocationContextInterceptor.java:90) [:1.1.3]
                 at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_setup_27695473.invoke(InvocationContextInterceptor_z_setup_276
            95473.java) [:]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.async.impl.interceptor.AsynchronousServerInterceptor.invoke(AsynchronousServerInterceptor.java:128) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:62) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:60) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:56) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.stateful.SessionSynchronizationInterceptor.invoke(SessionSynchronizationInterceptor.java:252) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42) [:1.0.3]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.stateful.StatefulCacheInterceptor.invoke(StatefulCacheInterceptor.java:65) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.concurrency.aop.interceptor.ContainerManagedConcurrencyInterceptor.invoke(ContainerManagedConcurrencyInterceptor.java:181) [:1.0.0-
            alpha-4]
                 at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:86) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.stateful.StatefulInstanceAssociationInterceptor.invoke(StatefulInstanceAssociationInterceptor.java:55) [:1.7.17]
                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) [jboss-aop.jar:2.2.1.GA]
                 at org.jboss.ejb3.core.context.SessionInvocationContextAdapter.proceed(SessionInvocationContextAdapter.java:95) [:1.7.17]
                 at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invokeInCallerTx(CMTTxInterceptor.java:223) [:0.0.1]
                 ... 110 more
            Caused by: org.jboss.weld.exceptions.WeldException: Authorization check failed
                 at org.jboss.weld.bean.InterceptorImpl.intercept(InterceptorImpl.java:101) [:6.0.0.Final]
                 at org.jboss.weld.integration.ejb.interceptor.DelegatingInterceptorInvocationContext.proceed(DelegatingInterceptorInvocationContext.java:77) [:6.0.0.
            Final]
                 at org.jboss.seam.transaction.TransactionInterceptor$1.work(TransactionInterceptor.java:194) [:3.0.0.Final]
                 at org.jboss.seam.transaction.Work.workInTransaction(Work.java:54) [:3.0.0.Final]
                 at org.jboss.seam.transaction.TransactionInterceptor.aroundInvoke(TransactionInterceptor.java:188) [:3.0.0.Final]
                 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_13]
                 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_13]
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_13]
                 at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_13]
                 at org.jboss.interceptor.proxy.InterceptorInvocation$InterceptorMethodInvocation.invoke(InterceptorInvocation.java:72) [:2.0.0.CR1]
                 at org.jboss.interceptor.proxy.SimpleInterceptionChain.invokeNextInterceptor(SimpleInterceptionChain.java:82) [:2.0.0.CR1]
                 at org.jboss.weld.bean.InterceptorImpl.intercept(InterceptorImpl.java:98) [:6.0.0.Final]
                 ... 167 more
            Caused by: org.jboss.seam.security.AuthorizationException: Authorization check failed
                 at org.jboss.seam.security.extension.SecurityExtension$Authorizer.authorize(SecurityExtension.java:88) [:3.0.0.Final]
                 at org.jboss.seam.security.extension.SecurityInterceptor.aroundInvoke(SecurityInterceptor.java:38) [:3.0.0.Final]
                 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_13]
                 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_13]
                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_13]
                 at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_13]
                 at org.jboss.interceptor.proxy.InterceptorInvocation$InterceptorMethodInvocation.invoke(InterceptorInvocation.java:72) [:2.0.0.CR1]
                 at org.jboss.interceptor.proxy.SimpleInterceptionChain.invokeNextInterceptor(SimpleInterceptionChain.java:82) [:2.0.0.CR1]
                 at org.jboss.weld.bean.InterceptorImpl.intercept(InterceptorImpl.java:98) [:6.0.0.Final]
                 ... 178 more
            



            • 3. Re: Catch exception handler not invoked before exception trace sent to log
              Jason Porter Master

              Bill, I may have something similar in an example I can use to try and figure this out. It looks like you're using EJBs (in the stack trace). Please try using w/o EJBs or let me know where they're being used. Probably best to check back mid next week and see what progress I've been able to make.

              • 4. Re: Catch exception handler not invoked before exception trace sent to log
                Bill Elliot Newbie

                I'm not explicitly trying to use EJB's. I'm just using the code generated by Seam Forge. Is the code generated by Forge not compatible with Catch?


                Thank you for your efforts.

                • 5. Re: Catch exception handler not invoked before exception trace sent to log
                  Jason Porter Master

                  No, it's fine, just trying to get an idea of what I need to create / change to duplicate your project as it's not publicly accessible. Perhaps a forge script or commands run would also work.