hc-httpclient-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Anthony Bargnesi <abargn...@gmail.com>
Subject Re: ServletExec and Cookie compatibility
Date Wed, 14 Dec 2005 14:16:54 GMT
Oleg/Michael,

Thanks for your responses.  Oleg, for browser compatibility cookie policy,
do I use CookieSpecBase.class or some other class?

CookiePolicy.registerCookieSpec(CookiePolicy.BROWSER_COMPATIBILITY,
> CookieSpecBase.class);



Anthony


On 12/14/05, Oleg Kalnichevski <olegk@apache.org> wrote:
>
> On Tue, Dec 13, 2005 at 04:45:46PM -0500, Michael Becke wrote:
> > Hi Anthony,
> >
> > You will need to force HttpClient to send the cookies as a single
> header:
> >
> > http.protocol.single-cookie-header
> > at
> > <http://jakarta.apache.org/commons/httpclient/preference-api.html>
> >
> > Mike
> >
>
> And probably use the browser compatibility cookie policy. This will
> make $Version=0; attribute go away
>
> http://jakarta.apache.org/commons/httpclient/cookies.html
>
> Oleg
>
>
>
> > On 12/13/05, Anthony Bargnesi <abargnesi@gmail.com> wrote:
> > > Hello,
> > >
> > > I am using HtmlUnit to run testcases against my web application.  On
> the
> > > login page I do a form post containing the login
> information.  ServletExec
> > > generates
> > > a "sesessionid" that is set as a cookie.  This obviously works on a
> browser
> > > but using HttpClient for a client does not work.  I have examined the
> http
> > > requests
> > > and responses to get a better idea of what is happening.
> > >
> > > The browser does the post:
> > >
> > > POST /myaquent?APROC=Login HTTP/1.1
> > >
> > >
> > > and sets the cookies:
> > >
> > > > Set-Cookie: UserType=7
> > > > Set-Cookie: UserName=dperez
> > > > Set-Cookie: storeFilesInUBO=true
> > > > Set-Cookie: sesessionid=gsr2kEn5BATC8oHBKhcLC6Kf4Eo; path=/
> > >
> > >
> > > HttpClient does the post (I think...it doesn't explicitly say POST in
> the
> > > Header)
> > > and sets the cookies:
> > >
> > > Set-Cookie: UserType=7
> > > > Set-Cookie: UserName=dperez
> > > > Set-Cookie: storeFilesInUBO=true
> > > > Set-Cookie: sesessionid=0fWKNFTdZ4wanoGkODbXNNzSOXY; path=/
> > > >
> > > > Cookie accepted: "$Version=0; UserType=7"
> > > > Cookie accepted: "$Version=0; UserName=dperez"
> > > > Cookie accepted: "$Version=0; storeFilesInUBO=true"
> > > > Cookie accepted: "$Version=0;
> sesessionid=0fWKNFTdZ4wanoGkODbXNNzSOXY;
> > > > $Path=/"
> > > >
> > >
> > > The Cookie accepted lines add $Version=0 which I am not too sure why
> or
> > > even what that means.
> > >
> > > The interesting part is the next request I make for the main window of
> the
> > > webapp.
> > >
> > > The browser sends the same cookie values (THIS WORKS):
> > >
> > > Cookie: UserType=7; UserName=dperez; storeFilesInUBO=true;
> > > > sesessionid=gsr2kEn5BATC8oHBKhcLC6Kf4Eo
> > >
> > >
> > > but HttpClient sends them differently (DOES NOT WORK):
> > >
> > > > "Cookie: $Version=0; UserType=7
> > > > "Cookie: $Version=0; UserName=dperez
> > > > "Cookie: $Version=0; storeFilesInUBO=true
> > > > "Cookie: $Version=0; sesessionid=0fWKNFTdZ4wanoGkODbXNNzSOXY;
> $Path=/
> > >
> > >
> > > which results in the sessionId being reset on the server and erroring
> out
> > > with an error page
> > > because the user is no longer seen as logged in.
> > >
> > > Is it possible that ServletExec is setting the cookie values again
> because
> > > HttpClient is not
> > > specifying cookies in the right way?  How can I debug this or even
> force the
> > > the cookies to display
> > > in the header properlyl?
> > >
> > > Thanks,
> > >
> > > Anthony Bargnesi
> > >
> > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: httpclient-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: httpclient-user-help@jakarta.apache.org
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: httpclient-user-help@jakarta.apache.org
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message