[jboss-user] [JBoss Seam] - pages.xml, @Restrict and exception not working for me
monkeyden
do-not-reply at jboss.com
Wed Apr 25 15:01:40 EDT 2007
I'm trying to use the @Restrict annotation in an app originating from seam-gen (Seam 1.1.6). The org.jboss.seam.security.NotLoggedInException exception is correctly thrown but it looks like the page is half rendered, rather than redirecting to "/login.xhtml". Because it's half rendered, this presumably happens upon first access of the action, in which case it's too late to redirect. I also tried <restrict>#{identity.loggedIn}</restrict> in pages.xml. I am also using ICEFaces. Thanks for any pointers.
@Name("editProfileAction")
| @Stateful
| @Scope(SESSION)
| @Restrict("#{identity.loggedIn}")
| public class EditProfileAction implements EditProfile {
| ....
| }
<exception class="org.jboss.seam.security.NotLoggedInException">
| <end-conversation />
| <redirect view-id="/login.xhtml">
| <message>#{messages['please.login.first']}</message>
| </redirect>
| </exception>
14:58:44,208 ERROR [D2DFaceletViewHandler] Problem in renderResponse: Error evaluating expression [#{identity.loggedIn}] - User not logged in
| org.jboss.seam.security.NotLoggedInException: Error evaluating expression [#{identity.loggedIn}] - User not logged in
| at org.jboss.seam.security.Identity.checkRestriction(Identity.java:169)
| at org.jboss.seam.interceptors.SecurityInterceptor.checkSecurity(SecurityInterceptor.java:44)
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:597)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
| at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
| at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
| at org.jboss.seam.interceptors.BijectionInterceptor.bijectNonreentrantComponent(BijectionInterceptor.java:79)
| at org.jboss.seam.interceptors.BijectionInterceptor.bijectComponent(BijectionInterceptor.java:58)
| at sun.reflect.GeneratedMethodAccessor3816.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:18)
| at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
| at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
| at org.jboss.seam.interceptors.OutcomeInterceptor.interceptOutcome(OutcomeInterceptor.java:21)
| at sun.reflect.GeneratedMethodAccessor3818.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:18)
| at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
| at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
| at org.jboss.seam.interceptors.ConversationInterceptor.endOrBeginLongRunningConversation(ConversationInterceptor.java:52)
| at sun.reflect.GeneratedMethodAccessor3815.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:18)
| at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
| 14:58:44,255 INFO [STDOUT] afterPhase: PhaseEvent in JSFPhaseListener::javax.faces.event.PhaseEvent[source=org.apache.myfaces.lifecycle.LifecycleImpl at 1af03a0]
| 14:58:44,255 INFO [STDOUT] afterPhase: phaseEvent.getPhaseId(): RENDER_RESPONSE(6)
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4040717#4040717
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4040717
More information about the jboss-user
mailing list