Empty redirect on redirect to home page if home page already shown
Hi all, I have a web app with an empty fallback home page which is of no use most of the times, only if the wrong people login to my app they get this home page presented. Every other user is redirected to another page with some meaningful content. If all users logout, they normally get redirected to the home page, which needs authentication, so users get redirected to the sign in page and afterwards to some other page depending on which user logged in. In some rare cases this is the homepage again. The problem no is for those rare users sitting at the home page: If those logout they should get redirected to the home page and afterwards to the sign in page again like all other users. But Wicket renders some empty redirect, I guess because the users are already at the home page, and the browser does nothing, especially it doesn't send another request. If I issue the request manually in the browser I get redirected to the sign in page properly. The following are the URLs involved: > http://localhost:8081/org.example.frontend/?3 > http://localhost:8081/org.example.frontend/?3-1.ILinkListener-html-body-pnNav-home.signOut The first one is after successful authentication and presents the content of the home page, the second one is the sign out url and stays in the browser with empty content, because of the empty "Location" header in the generated 302 response. > Request > URL:http://localhost:8081/org.example.frontend/?3-1.ILinkListener-html-body-pnNav-home.signOut > Request Method:GET > Status Code:302 Found > Remote Address:127.0.0.1:8081 > Cache-Control:no-cache, no-store > Content-Length:0 > Date:Sun, 06 Mar 2016 19:34:40 GMT > Expires:Thu, 01 Jan 1970 00:00:00 GMT > Location: > Pragma:no-cache > Server:Apache-Coyote/1.1 > Set-Cookie:JSESSIONID=[...]; Path=/org.example.frontend/; HttpOnly My sign out logic ends with the following, after making some custom things: > RequestCycle.get().setResponsePage(Application.get().getHomePage(), params); Any ideas of what I'm doing wrong and what needs to be done to get my behavior? I want to redirect always to getHomePage(), even if it's already shown and Wicket tries to do it, it just renders an incomplete URL. Thanks for your help! Mit freundlichen Grüßen, Thorsten Schöning -- Thorsten Schöning E-Mail: thorsten.schoen...@am-soft.de AM-SoFT IT-Systeme http://www.AM-SoFT.de/ Telefon...05151- 9468- 55 Fax...05151- 9468- 88 Mobil..0178-8 9468- 04 AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: Empty redirect on redirect to home page if home page already shown
Hi Thorsten, > Location: I wouldn't expect Wicket to generate an empty location header. Can you reproduce this problem in a Wicket quickstart? Regards Sven On 06.03.2016 20:39, Thorsten Schöning wrote: Hi all, I have a web app with an empty fallback home page which is of no use most of the times, only if the wrong people login to my app they get this home page presented. Every other user is redirected to another page with some meaningful content. If all users logout, they normally get redirected to the home page, which needs authentication, so users get redirected to the sign in page and afterwards to some other page depending on which user logged in. In some rare cases this is the homepage again. The problem no is for those rare users sitting at the home page: If those logout they should get redirected to the home page and afterwards to the sign in page again like all other users. But Wicket renders some empty redirect, I guess because the users are already at the home page, and the browser does nothing, especially it doesn't send another request. If I issue the request manually in the browser I get redirected to the sign in page properly. The following are the URLs involved: http://localhost:8081/org.example.frontend/?3 http://localhost:8081/org.example.frontend/?3-1.ILinkListener-html-body-pnNav-home.signOut The first one is after successful authentication and presents the content of the home page, the second one is the sign out url and stays in the browser with empty content, because of the empty "Location" header in the generated 302 response. Request URL:http://localhost:8081/org.example.frontend/?3-1.ILinkListener-html-body-pnNav-home.signOut Request Method:GET Status Code:302 Found Remote Address:127.0.0.1:8081 Cache-Control:no-cache, no-store Content-Length:0 Date:Sun, 06 Mar 2016 19:34:40 GMT Expires:Thu, 01 Jan 1970 00:00:00 GMT Location: Pragma:no-cache Server:Apache-Coyote/1.1 Set-Cookie:JSESSIONID=[...]; Path=/org.example.frontend/; HttpOnly My sign out logic ends with the following, after making some custom things: RequestCycle.get().setResponsePage(Application.get().getHomePage(), params); Any ideas of what I'm doing wrong and what needs to be done to get my behavior? I want to redirect always to getHomePage(), even if it's already shown and Wicket tries to do it, it just renders an incomplete URL. Thanks for your help! Mit freundlichen Grüßen, Thorsten Schöning - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org