Le 4 nov. 05, à 08:41, Merico Raffaele a écrit :
Ciao Bertrand, ciao Upayavira
After studying and changing the code of the WebServiceProxyGenerator I
have
discovered that the Set-Cookie application is handled correctly by the
underlying Jakarta HttpClient 2.0.2 according to RFC 2109.
The problem I had was caused by the MSIE 6.0 that does not accepts the
Set-Cookie header if the response contains just XML. Therefore on
every HTTP
request a new session was created. And since the
WebServiceProxyGenerator
stores its HttpClient in the session he could not reuse the HttpClient
that
correctly handled the initial Set-Cookie of the requested
Web-Service-Server.
1) The solution for the MSIE is, that you have initially request a
HTML page
(to accept the Set-Cookie of the Coocon application) and then go on
with any
WebServiceProxyGenerators.
2) Anyway I learned a lot about Java and Cocoon and - that the Firefox
does
not has this problem. Firefox remembers a cookie (Set-Cookie:)
independent
of the response.
Hope this helps.
Many thanks for your support ... Raffaele
Merico Raffaele wrote:
Ciao Bertrand
Thanks a lot for the inspection of the source code and your
suggestion
how
to fix the problem. How do we proceed now - does anybody of the
developers
will improve the WebServiceProxyGenerator according to your analysis.
If you are capable with Java, then I think it is an invitation for you
to improve it yourself and give us a patch.
Regards,
Upayavira
...Does anybody knows if there is any possibility to make the Web
Service Proxy
Generator remember a session with an invoked system?..
The Set-Cookie: directive of the invoked Web-Service-Server is
ignored
by
Web Service Proxy Generator. Is there any HTTP header information
that
the
Web Service Proxy Generator would remember for an invoked URL? Or
do I
have
to write an own Generator?..
I'm no WebServiceProxyGenerator expert, but I think you're right
that
the current version doesn't store cookies.
Looking at the WebServiceProxyGenerator source code, the
getHttpClient() method uses a separate HttpClient instance for each
session of your Cocoon application, so it should be possible to
configure this HttpClient to store cookies. It might be just a
matter
of configuring the HttpClient differently in the getHttpClient()
method.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--
Bertrand Delacretaz
independent consultant, Lausanne, Switzerland
http://www.codeconsult.ch
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]