[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