I removed the Log4J from my classpath and could produce debug info. Attached is the trace I got when authenticating for Diegest on Tomcat. As per what I understand, Tomcat supports connection reuse. What I would like to see is that HttpClient store the Authorization header for a URL and resend it whenever it is invoking the URL again. If the server does not authenticate, it should re-authenticate the connection/url. Please let me know if I can set it up that way. Also is there a way to tell client,state or method about the scheme being used for pre-emptive authentication? This is so that it sends the right Authorization header even for the first time.
Thanks. >>> [EMAIL PROTECTED] 6/10/2003 2:17:54 PM >>> Zulfi Both Digest & NTLM authentication schemes are connection oriented. Every time a new connection is open to a Digest & NTLM protected resource, the user has to be re-authenticated. Per default HttpClient does its best to keep connections alive, provided that the server supports connection reuse, thus eliminating the need to re-authenticate the user. Since you are using Log4J toolkit you have to ensure it's been configured to log 'httpclient.wire' and 'org.apache.commons.httpclient' category of events at DEBUG verbosity. Please refer to commons-logging & Log4J documentation for details Oleg -----Original Message----- From: Zulfi Umrani [mailto:[EMAIL PROTECTED] Sent: Tuesday, June 10, 2003 17:03 To: Kalnichevski, Oleg; [EMAIL PROTECTED] Subject: RE: preemptive What do you mean by "eliminating the authentication overhead"? Does this mean keeping the already Authenticated header and adding it next time the URL is being invoked? I am using Apache Tomcat Server to host a couple of protected URLs. One more Basic and other for Digest. I believe it does the necessary connection management specified by the HTTP 1.0/1.1. For logging I execute the following before I do anything. log4j-1.2.8 and commons-logging-1.0.2. I do not any other documentation for logging. If you have a sample code which enables logging even to a file, please send that to me. I am using JDK1.4 on Sun Solaris without any container to run the client. So I do not think it is redirecting stdout or stderr to somewhere else. System.setProperty("org.apache.commons.logging.simplelog.defaultlog", "debug"); System.setProperty("org.apache.commons.logging.Log", "org.apache.commons.logging.impl.SimpleLog"); System.setProperty("org.apache.commons.logging.simplelog.showdatetime", "true"); System.setProperty("org.apache.commons.logging.simplelog.log.httpclient.wire", "debug"); System.setProperty("org.apache.commons.logging.simplelog.log.org.apache.commons.httpclient", "trace"); >>> [EMAIL PROTECTED] 6/10/2003 1:36:57 PM >>> Zulfi, Only Basic authentication scheme can be used preemptively. If you want to eliminate the authentication overhead associated with Digest or NTLM schemes you have to ensure that the HTTP server keeps connections alive when possible. Please get logging to work. That should not be too difficult. Please note that application servers and servlet engines usually redirect standard output and standard error. If you are unable to figure out what is going you might want to use Log4j toolkit that allows greater control over logging (for instance, you can specify a separate log file for a specific category of events). We will not be able to help you unless we can see the logs. Oleg -----Original Message----- From: Zulfi Umrani [mailto:[EMAIL PROTECTED] Sent: Tuesday, June 10, 2003 16:27 To: [EMAIL PROTECTED] Subject: RE: preemptive By setting realm as null, the pre-emptive authentication worked! But, it sends a Basic Authorization header even if the URL is protected by Digest! For Digest it is still making 2 trips in order to authenticate. Which is fine for the first request, but it repeats the same thing for the second request as well. Is there a way to tell the state, method or client what kind of scheme is desired for pre-emptive authentication. Sorry, no logs here as log did not work. >>> [EMAIL PROTECTED] 6/10/2003 3:47:32 AM >>> Zulfi, Try setting both realm & host to null. That should do the trick HttpClient hc = new HttpClient(); HttpState state = hc.getState(); state.setAuthenticationPreemptive(true); // Set default credentials (realm & host are null) state.setCredentials(null, null, new UsernamePasswordCredentials("zulfi", "zulfi")); Folks, The present convention for setting a default set of credentials is utterly confusing and needs to be redesigned in 2.1. I believe we should be using HttpState#setCredentials(HttpAuthRealm, Credentials) instead of HttpState#setCredentials(String, String, Credentials). We should also provide a static final class to represent the default set of credentials: public static final HttpAuthRealm DEFAULT_AUTH_CREDENTIALS = new HttpAuthRealm(null, null); The end user code might look similar to that below state.setCredentials(DEFAULT_AUTH_CREDENTIALS, new UsernamePasswordCredentials("zulfi", "zulfi")); Cheers Oleg -----Original Message----- From: Zulfi Umrani [mailto:[EMAIL PROTECTED] Sent: Tuesday, June 10, 2003 00:44 To: [EMAIL PROTECTED] Subject: preemptive Tried to use the Preemptive Authentication feature. Could not get it to work. I used the HttpState.setAuthenticationPreemptive(true); to set the preemptive authentication ON. It still send the first request without the Authorization header. Code sample is below. Would like to know, how to set up the Pre-emptive Authentication. package test; import java.io.*; import java.net.URL; import org.apache.commons.httpclient.*; import org.apache.commons.httpclient.methods.*; import org.apache.commons.httpclient.auth.*; import org.apache.commons.httpclient.util.*; public class JCTest { public static void main(String[] args) throws Exception { test0(); test0(); return; } public static void test0() throws Exception { System.out.println("running test0"); String urlstr = "http://localhost:9999/services1/test"; URL url = new URL(urlstr); HttpClient hc = new HttpClient(); HttpState state = hc.getState(); state.setAuthenticationPreemptive(true); state.setCredentials("", url.getHost(), new UsernamePasswordCredentials("zulfi", "zulfi")); PostMethod post = new PostMethod(urlstr); post.setDoAuthentication(true); post.addRequestHeader("Connection", "Keep-Alive"); post.addRequestHeader("Content-Length", ""+msg.length()); post.addRequestHeader("Content-Type", "text/xml; charset=utf-8"); InputStream reqis = new ByteArrayInputStream(msg.getBytes()); post.setRequestBody(reqis); HostConfiguration hconfig = new HostConfiguration(); hconfig.setHost(new URI(urlstr)); hc.executeMethod(hconfig, post); System.out.println(post.getResponseBodyAsString()); System.out.println(); } private static String msg = "Text Message"; } Thanks. --------------------------------------------------------------------- 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] --------------------------------------------------------------------- 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] --------------------------------------------------------------------- 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]
running test0 [DEBUG] HttpClient - -Java version: 1.3.1_06 [DEBUG] HttpClient - -Java vendor: Sun Microsystems Inc. [DEBUG] HttpClient - -Java class path: :/export/home/zumrani/work/web/lib:/export/home/zumrani/work/web/lib/activation.jar:/export/home/zumrani/work/web/lib/agrootca.jar:/export/home/zumrani/work/web/lib/jakarta-regexp-1.2.jar:/export/home/zumrani/work/web/lib/jaxp-api.jar:/export/home/zumrani/work/web/lib/jbroker-ssl.jar:/export/home/zumrani/work/web/lib/jbroker-web.jar:/export/home/zumrani/work/web/lib/mail.jar:/export/home/zumrani/work/web/lib/servlet.jar:/export/home/zumrani/work/web/lib/xercesImpl.jar:/export/home/zumrani/work/web/lib/xmlParserAPIs.jar:/jbroker/env/java1.3/lib/tools.jar:/jbroker/env/jakarta-regexp-1.2/jakarta-regexp-1.2.jar:WEB-INF/classes:/jbroker/downloads/httpclient/commons-httpclient-2.0-beta1/commons-httpclient-2.0-beta1.jar:/jbroker/downloads/httpclient/commons-logging-1.0.2/commons-logging-api.jar [DEBUG] HttpClient - -Operating system name: SunOS [DEBUG] HttpClient - -Operating system architecture: sparc [DEBUG] HttpClient - -Operating system version: 5.7 [DEBUG] HttpClient - -SUN 1.2: SUN (DSA key/parameter generation; DSA signing; SHA-1, MD5 digests; SecureRandom; X.509 certificates; JKS keystore) [DEBUG] HttpClient - -SunRsaSign 1.0: SUN's provider for RSA signatures [DEBUG] HttpConnection - -Creating connection for localhost using protocol http:80 [DEBUG] HttpConnection - -HttpConnection.setSoTimeout(0) [DEBUG] HttpMethod - -Preemptively sending default basic credentials [DEBUG] HttpMethod - -Default basic credentials applied [DEBUG] HttpMethod - -Execute loop try 1 [DEBUG] wire - ->> "POST /services2/test HTTP/1.1[\r][\n]" [DEBUG] HttpMethod - -Adding Host request header [DEBUG] wire - ->> "Connection: Keep-Alive[\r][\n]" [DEBUG] wire - ->> "Content-Length: 421[\r][\n]" [DEBUG] wire - ->> "Content-Type: text/xml; charset=utf-8[\r][\n]" [DEBUG] wire - ->> "Authorization: Basic enVsZmk6enVsZmk=[\r][\n]" [DEBUG] wire - ->> "User-Agent: Jakarta Commons-HttpClient/2.0beta1[\r][\n]" [DEBUG] wire - ->> "Host: localhost:9999[\r][\n]" [DEBUG] wire - ->> "[\r][\n]" [DEBUG] EntityEnclosingMethod - -Using buffered request body [DEBUG] wire - ->> "<SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/'><SOAP-ENV:Body><ns1:sayHello SOAP-ENV:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns='' xmlns:ns1='http://www.hello'></ns1:sayHello></SOAP-ENV:Body></SOAP-ENV:Envelope>" [DEBUG] EntityEnclosingMethod - -Request body sent [DEBUG] wire - -<< "HTTP/1.1 401 Unauthorized[\r][\n]" [DEBUG] wire - -<< "Content-Type: text/html[\r][\n]" [DEBUG] wire - -<< "Date: Tue, 10 Jun 2003 18:24:30 GMT[\r][\n]" [DEBUG] wire - -<< "Pragma: No-cache[\r][\n]" [DEBUG] wire - -<< "Transfer-Encoding: chunked[\r][\n]" [DEBUG] wire - -<< "Server: Apache Tomcat/4.0.4 (HTTP/1.1 Connector)[\r][\n]" [DEBUG] wire - -<< "Cache-Control: no-cache[\r][\n]" [DEBUG] wire - -<< "WWW-Authenticate: Digest realm="", qop="auth", nonce="3edc9bf68495d89882d6da8353d1d671", opaque="87942207362689a2abbee15fa915535a"[\r][\n]" [DEBUG] wire - -<< "Expires: Thu, 01 Jan 1970 00:00:00 GMT[\r][\n]" [DEBUG] HttpConnection - -HttpConnection.getSoTimeout() [DEBUG] HttpMethod - -Authorization required [DEBUG] HttpAuthenticator - -Using '' authentication realm [DEBUG] HttpMethod - -HttpMethodBase.execute(): Server demanded authentication credentials, will try again. [DEBUG] wire - -<< "2" [DEBUG] wire - -<< "6" [DEBUG] wire - -<< "3" [DEBUG] wire - -<< "[\r]" [DEBUG] wire - -<< "[\n]" [DEBUG] wire - -<< "<html><head><title>Apache Tomcat/4.0.4 - Error report</title><STYLE><!--H1{font-family : sans-serif,Arial,Tahoma;color : white;background-color : #0086b2;} BODY{font-family : sans-serif,Arial,Tahoma;color : black;background-color : white;} B{color : white;background-color : #0086b2;} HR{color : #0086b2;} --></STYLE> </head><body><h1>Apache Tomcat/4.0.4 - HTTP Status 401 - Unauthorized</h1><HR size="1" noshade><p><b>type</b> Status report</p><p><b>message</b> <u>Unauthorized</u></p><p><b>description</b> <u>This request requires HTTP authentication (Unauthorized).</u></p><HR size="1" noshade></body></html>" [DEBUG] wire - -<< "[\r]" [DEBUG] wire - -<< "[\n]" [DEBUG] wire - -<< "0" [DEBUG] wire - -<< "[\r]" [DEBUG] wire - -<< "[\n]" [DEBUG] wire - -<< "[\r]" [DEBUG] wire - -<< "[\n]" [DEBUG] HttpMethod - -Resorting to protocol version default close connection policy [DEBUG] HttpMethod - -Should NOT close connection, using HTTP/1.1. [DEBUG] HttpMethod - -Execute loop try 2 [DEBUG] wire - ->> "POST /services2/test HTTP/1.1[\r][\n]" [DEBUG] HttpMethod - -Request to add Host header ignored: header already added [DEBUG] wire - ->> "Connection: Keep-Alive[\r][\n]" [DEBUG] wire - ->> "Content-Length: 421[\r][\n]" [DEBUG] wire - ->> "Content-Type: text/xml; charset=utf-8[\r][\n]" [DEBUG] wire - ->> "User-Agent: Jakarta Commons-HttpClient/2.0beta1[\r][\n]" [DEBUG] wire - ->> "Host: localhost:9999[\r][\n]" [DEBUG] wire - ->> "Authorization: Digest username="zulfi", realm="", nonce="3edc9bf68495d89882d6da8353d1d671", uri="/services2/test", qop="auth", algorithm="MD5", nc=00000001, cnonce="7ce99bd259c965b0ba683f46bbe7e4bc", response="5ee2101b980780787f48b98053c06d68", opaque="87942207362689a2abbee15fa915535a"[\r][\n]" [DEBUG] wire - ->> "[\r][\n]" [DEBUG] EntityEnclosingMethod - -Using buffered request body [DEBUG] wire - ->> "<SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/'><SOAP-ENV:Body><ns1:sayHello SOAP-ENV:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns='' xmlns:ns1='http://www.hello'></ns1:sayHello></SOAP-ENV:Body></SOAP-ENV:Envelope>" [DEBUG] EntityEnclosingMethod - -Request body sent [DEBUG] wire - -<< "HTTP/1.1 200 OK[\r][\n]" [DEBUG] wire - -<< "Content-Length: 547[\r][\n]" [DEBUG] wire - -<< "Date: Tue, 10 Jun 2003 18:24:30 GMT[\r][\n]" [DEBUG] wire - -<< "Pragma: No-cache[\r][\n]" [DEBUG] wire - -<< "Server: Apache Tomcat/4.0.4 (HTTP/1.1 Connector)[\r][\n]" [DEBUG] wire - -<< "Cache-Control: no-cache[\r][\n]" [DEBUG] wire - -<< "Content-Type: text/xml; charset=utf-8[\r][\n]" [DEBUG] wire - -<< "Expires: Thu, 01 Jan 1970 00:00:00 GMT[\r][\n]" [DEBUG] wire - -<< "<SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/'><SOAP-ENV:Body><ns1:sayHelloResponse SOAP-ENV:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns='' xmlns:ns1='http://www.hello'><arg0 xmlns="" xsi:type="xsd:string" xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>Hello World!</arg0></ns1:sayHelloResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>" [DEBUG] HttpMethod - -Resorting to protocol version default close connection policy [DEBUG] HttpMethod - -Should NOT close connection, using HTTP/1.1. [DEBUG] HttpMethod - -buffering response body <SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/'><SOAP-ENV:Body><ns1:sayHelloResponse SOAP-ENV:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns='' xmlns:ns1='http://www.hello'><arg0 xmlns="" xsi:type="xsd:string" xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>Hello World!</arg0></ns1:sayHelloResponse></SOAP-ENV:Body></SOAP-ENV:Envelope> running test0 [DEBUG] HttpConnection - -Creating connection for localhost using protocol http:80 [DEBUG] HttpConnection - -HttpConnection.setSoTimeout(0) [DEBUG] HttpMethod - -Preemptively sending default basic credentials [DEBUG] HttpMethod - -Default basic credentials applied [DEBUG] HttpMethod - -Execute loop try 1 [DEBUG] wire - ->> "POST /services2/test HTTP/1.1[\r][\n]" [DEBUG] HttpMethod - -Adding Host request header [DEBUG] wire - ->> "Connection: Keep-Alive[\r][\n]" [DEBUG] wire - ->> "Content-Length: 421[\r][\n]" [DEBUG] wire - ->> "Content-Type: text/xml; charset=utf-8[\r][\n]" [DEBUG] wire - ->> "Authorization: Basic enVsZmk6enVsZmk=[\r][\n]" [DEBUG] wire - ->> "User-Agent: Jakarta Commons-HttpClient/2.0beta1[\r][\n]" [DEBUG] wire - ->> "Host: localhost:9999[\r][\n]" [DEBUG] wire - ->> "[\r][\n]" [DEBUG] EntityEnclosingMethod - -Using buffered request body [DEBUG] wire - ->> "<SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/'><SOAP-ENV:Body><ns1:sayHello SOAP-ENV:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns='' xmlns:ns1='http://www.hello'></ns1:sayHello></SOAP-ENV:Body></SOAP-ENV:Envelope>" [DEBUG] EntityEnclosingMethod - -Request body sent [DEBUG] wire - -<< "HTTP/1.1 401 Unauthorized[\r][\n]" [DEBUG] wire - -<< "Content-Type: text/html[\r][\n]" [DEBUG] wire - -<< "Date: Tue, 10 Jun 2003 18:24:30 GMT[\r][\n]" [DEBUG] wire - -<< "Pragma: No-cache[\r][\n]" [DEBUG] wire - -<< "Transfer-Encoding: chunked[\r][\n]" [DEBUG] wire - -<< "Server: Apache Tomcat/4.0.4 (HTTP/1.1 Connector)[\r][\n]" [DEBUG] wire - -<< "Cache-Control: no-cache[\r][\n]" [DEBUG] wire - -<< "WWW-Authenticate: Digest realm="", qop="auth", nonce="a9ccb153148434c2dd4e77c13cc397e2", opaque="03e2af6f36b0f08e29631a3c3913bba9"[\r][\n]" [DEBUG] wire - -<< "Expires: Thu, 01 Jan 1970 00:00:00 GMT[\r][\n]" [DEBUG] HttpConnection - -HttpConnection.getSoTimeout() [DEBUG] HttpMethod - -Authorization required [DEBUG] HttpAuthenticator - -Using '' authentication realm [DEBUG] HttpMethod - -HttpMethodBase.execute(): Server demanded authentication credentials, will try again. [DEBUG] wire - -<< "2" [DEBUG] wire - -<< "6" [DEBUG] wire - -<< "3" [DEBUG] wire - -<< "[\r]" [DEBUG] wire - -<< "[\n]" [DEBUG] wire - -<< "<html><head><title>Apache Tomcat/4.0.4 - Error report</title><STYLE><!--H1{font-family : sans-serif,Arial,Tahoma;color : white;background-color : #0086b2;} BODY{font-family : sans-serif,Arial,Tahoma;color : black;background-color : white;} B{color : white;background-color : #0086b2;} HR{color : #0086b2;} --></STYLE> </head><body><h1>Apache Tomcat/4.0.4 - HTTP Status 401 - Unauthorized</h1><HR size="1" noshade><p><b>type</b> Status report</p><p><b>message</b> <u>Unauthorized</u></p><p><b>description</b> <u>This request requires HTTP authentication (Unauthorized).</u></p><HR size="1" noshade></body></html>" [DEBUG] wire - -<< "[\r]" [DEBUG] wire - -<< "[\n]" [DEBUG] wire - -<< "0" [DEBUG] wire - -<< "[\r]" [DEBUG] wire - -<< "[\n]" [DEBUG] wire - -<< "[\r]" [DEBUG] wire - -<< "[\n]" [DEBUG] HttpMethod - -Resorting to protocol version default close connection policy [DEBUG] HttpMethod - -Should NOT close connection, using HTTP/1.1. [DEBUG] HttpMethod - -Execute loop try 2 [DEBUG] wire - ->> "POST /services2/test HTTP/1.1[\r][\n]" [DEBUG] HttpMethod - -Request to add Host header ignored: header already added [DEBUG] wire - ->> "Connection: Keep-Alive[\r][\n]" [DEBUG] wire - ->> "Content-Length: 421[\r][\n]" [DEBUG] wire - ->> "Content-Type: text/xml; charset=utf-8[\r][\n]" [DEBUG] wire - ->> "User-Agent: Jakarta Commons-HttpClient/2.0beta1[\r][\n]" [DEBUG] wire - ->> "Host: localhost:9999[\r][\n]" [DEBUG] wire - ->> "Authorization: Digest username="zulfi", realm="", nonce="a9ccb153148434c2dd4e77c13cc397e2", uri="/services2/test", qop="auth", algorithm="MD5", nc=00000001, cnonce="0fd6ae8f38eeda3daceb5f62805e4c91", response="7dd069dd09cae70feeb0d610fbb54f6e", opaque="03e2af6f36b0f08e29631a3c3913bba9"[\r][\n]" [DEBUG] wire - ->> "[\r][\n]" [DEBUG] EntityEnclosingMethod - -Using buffered request body [DEBUG] wire - ->> "<SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/'><SOAP-ENV:Body><ns1:sayHello SOAP-ENV:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns='' xmlns:ns1='http://www.hello'></ns1:sayHello></SOAP-ENV:Body></SOAP-ENV:Envelope>" [DEBUG] EntityEnclosingMethod - -Request body sent [DEBUG] wire - -<< "HTTP/1.1 200 OK[\r][\n]" [DEBUG] wire - -<< "Content-Length: 547[\r][\n]" [DEBUG] wire - -<< "Date: Tue, 10 Jun 2003 18:24:31 GMT[\r][\n]" [DEBUG] wire - -<< "Pragma: No-cache[\r][\n]" [DEBUG] wire - -<< "Server: Apache Tomcat/4.0.4 (HTTP/1.1 Connector)[\r][\n]" [DEBUG] wire - -<< "Cache-Control: no-cache[\r][\n]" [DEBUG] wire - -<< "Content-Type: text/xml; charset=utf-8[\r][\n]" [DEBUG] wire - -<< "Expires: Thu, 01 Jan 1970 00:00:00 GMT[\r][\n]" [DEBUG] wire - -<< "<SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/'><SOAP-ENV:Body><ns1:sayHelloResponse SOAP-ENV:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns='' xmlns:ns1='http://www.hello'><arg0 xmlns="" xsi:type="xsd:string" xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>Hello World!</arg0></ns1:sayHelloResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>" [DEBUG] HttpMethod - -Resorting to protocol version default close connection policy [DEBUG] HttpMethod - -Should NOT close connection, using HTTP/1.1. [DEBUG] HttpMethod - -buffering response body <SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/'><SOAP-ENV:Body><ns1:sayHelloResponse SOAP-ENV:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns='' xmlns:ns1='http://www.hello'><arg0 xmlns="" xsi:type="xsd:string" xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>Hello World!</arg0></ns1:sayHelloResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]