Re: redirect request for Page A to page B without contructing A?
Implemented a SimplePageAuthorizationStrategy; works but there is a gotcha: Say the home page has a (non-ajax) login form: 1. unauthenticated users navigates to home page and is authorized 2. user submits valid login info. 3. At this point I'd assumed Home page would be re-requested (does wicket do Redirect-after-form-submit?) 4. However, Home page is redisplayed and isAuthorized method is never executed after form submit. Workaround seems to be doing setResponsePage in onSubmit method. This, however, seems to complicate creating a reusable LoginPanel which would return user to same page. -nikita public class HomePageAuthorizationStrategy extends SimplePageAuthorizationStrategy{ public HomePageAuthorizationStrategy(){ super(HomePage.class, ProfilePage.class); } /** * if user's signed-in redirect request for Home Page to user's dashboard/profile */ protected boolean isAuthorized() { this.getLogger().info(checking auth for home page access...); return ! ((MySession)Session.get()).isLoggedIn(); } public Logger getLogger() { return Logger.getLogger(this.getClass().getName()); } } Eelco Hillenius wrote: If an already logged-in user types in our home URL we'd like the site to redirect him/her to own profile page. If user's not logged in, they do land on home page. This is not to compel someone to sign in. So, for example below, PageA = site home page; PageB = user's own profile page Sounds like a custom authorization strategy would work great here. Eelco - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/redirect-request-for-Page-A-to-page-B-without-contructing-A--tf4636621.html#a13262795 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: redirect request for Page A to page B without contructing A?
Why do you want to do this? dukehoops wrote: Hi, I'd like to redirect requests for page A to page B without constructing page A. Typically I'd use URL parsing in a servlet filter to accomplish this but would like to figure out an OO way to do so. In my RequestCycle I tried: @Override protected void onBeginRequest() { if(PageA.class.equals(this.getResponsePageClass()) someCondition) { this.setResponsePage(pageB); } super.onBeginRequest(); } The problem is that this.getResponsePageClass() is null in onBeginRequest. Is overriding a RequestCycle method the right way to address this problem? If so which method should I override given that: -I need to ascertain that intended request target is PageA -I'd like to avoid constructing page A thanks -nikita - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: redirect request for Page A to page B without contructing A?
If it is intercepting what you're after (like you'd do when enforcing authorization), look at IComponentInstantiationListener. What is your use case? Eelco On 10/16/07, dukehoops [EMAIL PROTECTED] wrote: Hi, I'd like to redirect requests for page A to page B without constructing page A. Typically I'd use URL parsing in a servlet filter to accomplish this but would like to figure out an OO way to do so. In my RequestCycle I tried: @Override protected void onBeginRequest() { if(PageA.class.equals(this.getResponsePageClass()) someCondition) { this.setResponsePage(pageB); } super.onBeginRequest(); } The problem is that this.getResponsePageClass() is null in onBeginRequest. Is overriding a RequestCycle method the right way to address this problem? If so which method should I override given that: -I need to ascertain that intended request target is PageA -I'd like to avoid constructing page A thanks -nikita -- View this message in context: http://www.nabble.com/redirect-request-for-Page-A-to-page-B-without-contructing-A--tf4636621.html#a13241857 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: redirect request for Page A to page B without contructing A?
The use case is this: If an already logged-in user types in our home URL we'd like the site to redirect him/her to own profile page. If user's not logged in, they do land on home page. This is not to compel someone to sign in. So, for example below, PageA = site home page; PageB = user's own profile page -nikita Eelco Hillenius wrote: If it is intercepting what you're after (like you'd do when enforcing authorization), look at IComponentInstantiationListener. What is your use case? Eelco On 10/16/07, dukehoops [EMAIL PROTECTED] wrote: Hi, I'd like to redirect requests for page A to page B without constructing page A. Typically I'd use URL parsing in a servlet filter to accomplish this but would like to figure out an OO way to do so. In my RequestCycle I tried: @Override protected void onBeginRequest() { if(PageA.class.equals(this.getResponsePageClass()) someCondition) { this.setResponsePage(pageB); } super.onBeginRequest(); } The problem is that this.getResponsePageClass() is null in onBeginRequest. Is overriding a RequestCycle method the right way to address this problem? If so which method should I override given that: -I need to ascertain that intended request target is PageA -I'd like to avoid constructing page A thanks -nikita -- View this message in context: http://www.nabble.com/redirect-request-for-Page-A-to-page-B-without-contructing-A--tf4636621.html#a13241857 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/redirect-request-for-Page-A-to-page-B-without-contructing-A--tf4636621.html#a13244889 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: redirect request for Page A to page B without contructing A?
If an already logged-in user types in our home URL we'd like the site to redirect him/her to own profile page. If user's not logged in, they do land on home page. This is not to compel someone to sign in. So, for example below, PageA = site home page; PageB = user's own profile page Sounds like a custom authorization strategy would work great here. Eelco - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: redirect request for Page A to page B without contructing A?
What I have done is to check in MyApplication.getHomePage(): public Class getHomePage() { IUser user = getMySession().getCurrentUser(); return user == null ? Index.class : UserHome.class; } -- View this message in context: http://www.nabble.com/redirect-request-for-Page-A-to-page-B-without-contructing-A--tf4636621.html#a13246212 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: redirect request for Page A to page B without contructing A?
What I have done is to check in MyApplication.getHomePage(): public Class getHomePage() { IUser user = getMySession().getCurrentUser(); return user == null ? Index.class : UserHome.class; } That's another fine solution if the home page is only what you're after. Eelco - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]