Hello All, I have performed deeper investigation and find out this code works as expected in wicket6 But NOT work in wicket7
quickstart: https://github.com/solomax/redirect-to-url wicket7.x branch == wicket 7.9.0 (also not working in 7.9.0) wicket6.x branch == wicket 6.28.0 Steps to reproduce: 1) start quickstart using `mvn jetty:run` 2) click "Redirect to Google" Redirect will happens in Chrome and not happens in FF Wicket code seems to be similar So I guess the issue might be in Jetty/Tomcat, will try to find working scenario/workaround for this On Sun, Oct 8, 2017 at 2:38 PM, Maxim Solodovnik <solomax...@gmail.com> wrote: > Maybe it is not allowed to redirect from Ajax handler? > > On Sat, Oct 7, 2017 at 1:07 PM, Maxim Solodovnik <solomax...@gmail.com> wrote: >> Here is the quick start: https://github.com/solomax/ajax-download >> >> On Sat, Oct 7, 2017 at 12:40 PM, Maxim Solodovnik <solomax...@gmail.com> >> wrote: >>> Thanks for the clarifications Martin, >>> >>> According to [1] 'Ajax-Location' is being set instead of 'Location' >>> (due to redirect happens on ajax button click) >>> This works as expected in Chrome but fails in FF :((( >>> >>> Will continue debugging and will try to create quickstart >>> >>> >>> [1] >>> https://github.com/apache/wicket/blob/master/wicket-core/src/main/java/org/apache/wicket/protocol/http/servlet/ServletWebResponse.java#L273 >>> >>> On Fri, Oct 6, 2017 at 9:59 PM, Martin Grigorov <mgrigo...@apache.org> >>> wrote: >>>> Maybe I was not clear enough. >>>> HttpServletResponse#sendRedirect() is supposed to set the Location header, >>>> i.e. Tomcat/Jetty. >>>> >>>> The other status codes do it manually because #sendRedirect() would >>>> override the status code. >>>> >>>> IMO you should ask at Tomcat forums why the Location is not being set. >>>> >>>> Martin Grigorov >>>> Wicket Training and Consulting >>>> https://twitter.com/mtgrigorov >>>> >>>> On Fri, Oct 6, 2017 at 4:10 PM, Maxim Solodovnik <solomax...@gmail.com> >>>> wrote: >>>> >>>>> This code: >>>>> https://github.com/apache/wicket/blob/master/wicket- >>>>> request/src/main/java/org/apache/wicket/request/http/handler/ >>>>> RedirectRequestHandler.java >>>>> >>>>> Has special handling of moved temporary >>>>> >>>>> WBR, Maxim >>>>> (from mobile, sorry for the typos) >>>>> >>>>> On Oct 6, 2017 20:05, "Maxim Solodovnik" <solomax...@gmail.com> wrote: >>>>> >>>>> > The status is being set correctly, Location is not being set :( >>>>> > >>>>> > WBR, Maxim >>>>> > (from mobile, sorry for the typos) >>>>> > >>>>> > On Oct 6, 2017 20:04, "Martin Grigorov" <mgrigo...@apache.org> wrote: >>>>> > >>>>> >> Hi, >>>>> >> >>>>> >> Isn't this something that the web container should do for us ? >>>>> >> >>>>> >> javax.servlet.http.HttpServletResponse#sendRedirect() sets the status >>>>> to >>>>> >> 302, that's the reason why the others do it "manually". >>>>> >> >>>>> >> Martin Grigorov >>>>> >> Wicket Training and Consulting >>>>> >> https://twitter.com/mtgrigorov >>>>> >> >>>>> >> On Fri, Oct 6, 2017 at 2:18 PM, Maxim Solodovnik <solomax...@gmail.com> >>>>> >> wrote: >>>>> >> >>>>> >> > Hello All, >>>>> >> > >>>>> >> > Recently I found RedirectToUrlException is not working in FF (works >>>>> >> > in >>>>> >> > Chrome) >>>>> >> > Redirect URL is being displayed for microsecond, then page is just >>>>> >> > being refreshed >>>>> >> > >>>>> >> > What I found during debugging: >>>>> >> > In case code is SC_MOVED_TEMPORARILY Location header is not set. >>>>> >> > >>>>> >> > FF site [1] clearly states Location should be set >>>>> >> > >>>>> >> > Tested on master branch. >>>>> >> > >>>>> >> > Should I prepare PR or this is done on purpose? >>>>> >> > >>>>> >> > [1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/302 >>>>> >> > >>>>> >> > -- >>>>> >> > WBR >>>>> >> > Maxim aka solomax >>>>> >> > >>>>> >> >>>>> > >>>>> >>> >>> >>> >>> -- >>> WBR >>> Maxim aka solomax >> >> >> >> -- >> WBR >> Maxim aka solomax > > > > -- > WBR > Maxim aka solomax -- WBR Maxim aka solomax