Another finding: Redirect from AjaxEventBehavior works as expected in FF in case <div> is used instead of <button> (quickstart is updated)
On Mon, Oct 9, 2017 at 1:42 PM, Maxim Solodovnik <solomax...@gmail.com> wrote: > This can be work-arounded by using normal, non-ajax submit. > > > On Mon, Oct 9, 2017 at 10:27 AM, Maxim Solodovnik <solomax...@gmail.com> > wrote: >> 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 > > > > -- > WBR > Maxim aka solomax -- WBR Maxim aka solomax