wicket-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Martin Grigorov <mgrigo...@apache.org>
Subject Re: How to write an HTTP header (to detect cookie disablement)?
Date Wed, 22 Feb 2012 17:20:38 GMT
Hi,

Headers are not cookies.
By setting a header in the response you should not expect that it will
come in the next request.

A request header is set by the client (the browser in this case). You
can use UrlConnection or Apache HttpClient to set header request
which will be available thru WebRequest.getHeader().

Cookies work as you want - set it once in the response and then it
will travel around in the next requests/responses until expire.

On Wed, Feb 22, 2012 at 6:09 PM, Ian Marshall <IanMarshall.UK@gmail.com> wrote:
> Hi Martin,
>
>
> COOKIES
> -------
> I'm fine for this. My cookie code actually works. (But if the user's browser
> disables cookies, then I want to use HTTP headers to be able to say "The
> user is on his/her second page, and still no cookie, so cookies are
> definitely disabled (I cannot tell this on the first page).")
>
>
> HTTP HEADERS
> ------------
> Many thanks for your tip about FireBug! Grand. (I had never thought about
> that.)
>
> All my web pages are descended from my PageBase class, which in turn
> descends from Wicket's WebPage. I set my HTTP header in code in my PageBase
> constructor using
>
>  org.apache.wicket.request.http.WebResponse.addHeader(...);
>
> In the first call to the app (which shows the home page), I can see this
> header in the response headers using FireBug under "GET PageHome?0". Sadly,
> I cannot detect this in my PageBase constructor using
>
>  import org.apache.wicket.request.cycle.RequestCycle;
>  import org.apache.wicket.request.http.WebRequest;
>
>  RequestCycle rcRequestCycle = getRequestCycle();
>  WebRequest wreqRequest = (WebRequest)rcRequestCycle.getRequest();
>  String sHeaderValue = wreqRequest.getHeader("X-MyApp-NotFirstPageBase-1");
>
> since I get sHeaderValue to be null. Also, I cannot see this header in the
> request headers using FireBug.
>
> After clicking the link on my home page to the "About us" page, I can see
> this header in the response headers using FireBug under "GET PageAbout?1",
> but nowhere else (including request headers even though I believe that I add
> this to each web request unconditionally).
>
> If I add
>
>  org.apache.wicket.request.http.WebResponse.addHeader(...);
>
> to my PageHome's form's onSubmit() method, then after form submission I do
> see this header, but in the response only in
>
>  POST page?1-1.IFormSubmitListener-frmForm
>
> of
>
>  http://localhost:8080/wicket/page?1-1.IFormSubmitListener-frmForm
>
> (I am running locally).
>
> Am I looking in the wrong place in my code (and thus in the request cycle)
> to find my header in a request?
>
>
>
> Martin Grigorov-4 wrote
>>
>> Hi Ian,
>>
>> If you add/set a header in the HttpServletResponse (even thru Wicket's
>> WebResponse) then it will be written to the browser. You can verify
>> that by investigating the request in Firebug's Net panel.
>>
>> If you want to send a cookie you should either use #addCookie() or
>> set/addHeader("Set-Cookie"). Check in google for more info.
>> So you set the cookie in the current response and if not expired it
>> should be available in the next *request* (HttpServletRequest or
>> Wicket's WebRequest).
>>
>
> --
> View this message in context: http://apache-wicket.1842946.n4.nabble.com/How-to-write-an-HTTP-header-to-detect-cookie-disablement-tp4397827p4411061.html
> Sent from the Users forum mailing list archive at Nabble.com.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> For additional commands, e-mail: users-help@wicket.apache.org
>



-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
For additional commands, e-mail: users-help@wicket.apache.org


Mime
View raw message