Return-Path: Mailing-List: contact soap-user-help@xml.apache.org; run by ezmlm Delivered-To: mailing list soap-user@xml.apache.org Received: (qmail 75501 invoked from network); 4 Jun 2002 17:18:03 -0000 Received: from unknown (HELO mail.cysive.com) (65.207.108.51) by daedalus.apache.org with SMTP; 4 Jun 2002 17:18:03 -0000 Received: from IZDEPSKIE82 ([10.2.3.72]) by mail.cysive.com with SMTP (Microsoft Exchange Internet Mail Service Version 5.5.2653.13) id KTJZGHCZ; Tue, 4 Jun 2002 13:16:18 -0400 Reply-To: From: "Erich Izdepski" To: Subject: RE: Using SSL and SOAP Date: Tue, 4 Jun 2002 13:16:54 -0400 Message-ID: <000301c20beb$a01ed330$4803020a@cysive.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook CWS, Build 9.0.2416 (9.0.2910.0) Importance: Normal X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 In-Reply-To: X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N If tomcat is using SSL (as configured in server.xml), then all deployed webapps can, too. Including soap and the rpcrouter servlet. What are the details of the problem you are having? Erich Izdepski Senior Software Engineer Cysive, Inc. -----Original Message----- From: CKortmann@heyde.de [mailto:CKortmann@heyde.de] Sent: Tuesday, June 04, 2002 1:04 PM To: soap-user@xml.apache.org Subject: RE: Using SSL and SOAP Hello! After some reconfiguring of keystore, Apache HTTP (1.3.20) and Tomcat (4.0.1) I got it working. My requests are being encrypted. Now there arose another problem, I can't deploy a webservice using the default rpcrouter, because it doesn't understand https. What do I do to deploy my WS using https? Or do I deploy it using the default rpcrouter and make changes in server.xml/web.xml? I'm using Apache SOAP 2.2 and JSSE 1.0.2 (for SSL). Thanks! -----Original Message----- From: Kortmann, Carsten Sent: Wednesday, May 29, 2002 8:18 PM To: 'soap-user@xml.apache.org' Subject: RE: Using SSL and SOAP Using the debugging option, I found out that I was using an invalid keystore... Now I replaced the keystore, but Tomcat now won't even display the splash page. This worked fine, when I was using invalid certs... Can you assist me a little further!? Thanx -----Original Message----- From: Joe Pruitt [mailto:j.pruitt@f5.com] Sent: Wednesday, May 29, 2002 5:06 PM To: 'soap-user@xml.apache.org' Subject: RE: Using SSL and SOAP This is most likely a un-trusted server certificate issue. Try adding the following to your runtime environment. -Djavax.net.debug=ssl If you see that it's a server cert issue, then you'll need to install the server cert into your local truststore. See the keytool documentation for this. -Joe -----Original Message----- From: CKortmann@heyde.de [ mailto:CKortmann@heyde.de ] Sent: Wednesday, May 29, 2002 6:52 AM To: soap-user@xml.apache.org Subject: Using SSL and SOAP Importance: High Hello, can someone help me? I try to do SOAP-Calls over HTTPS and I always get the following result: [SOAP-Exception: faultCode=SOAP-ENV:Client; msg=Error opening socket: null; targetException=java.lang.IllegalArgumentException: Error opening socket: null] The SOAP-Documentation says, that there's noone listening at the desired address & port, but when I point my browser to the address I get the response from the rpcrouter servlet... My client-side code looks like this: .... try { SOAPHTTPConnection shc = new SOAPHTTPConnection(); shc.setMaintainSession(false); Properties theProps = System.getProperties(); switch(object.getProxyTyp()) { case 1 : { if(object.sslEnabled()) { theProps.put("https.proxySet", "true"); theProps.put("https.proxyHost", pHost); theProps.put("https.proxyPort", pPort); } else { theProps.put("proxySet", "true"); theProps.put("proxyHost", pHost); theProps.put("proxyPort", pPort); } break; } case 2 : if(object.sslEnabled()) { theProps.put("https.socksProxySet", "true"); theProps.put("https.socksProxyHost", pHost); theProps.put("https.socksProxyPort", pPort); } else { theProps.put("socksProxySet", "true"); theProps.put("socksProxyHost", pHost); theProps.put("socksProxyPort", pPort); } break; default : { theProps.put("proxySet", "false"); theProps.put("socksProxySet", "false"); theProps.put("https.proxySet", "false"); theProps.put("https.socksProxySet", "false"); } } if(object.sslEnabled()) { theProps.put("java.protocol.handler.pkgs", "com.sun.net.ssl.internal.www.protocol"); Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider()); if(m_strServerPort.equals("443")) m_strServerURL = " https:// " + m_strServerIP + "/soap/servlet/rpcrouter"; else m_strServerURL = "https" + m_strServerURL; } else m_strServerURL = "http" + m_strServerURL; System.setProperties(theProps); Vector params = new Vector (); params.addElement(new Parameter("arg1", String.class, m_strRequest, null)); // making the SOAP-Call Call theCall = new Call(); theCall.setSOAPTransport(shc); theCall.setTargetObjectURI(m_strTargetObjectURI); theCall.setMethodName(web_service); theCall.setEncodingStyleURI(m_strEncodingStyleURI); theCall.setParams(params); URL ServerUrl = new URL(m_strServerURL); Response inquiry_response = theCall.invoke(ServerUrl, null); Parameter result = inquiry_response.getReturnValue(); if(inquiry_response.generatedFault()) { Fault theFault = inquiry_response.getFault(); inquiry_result_string = stringError("01", "Fehler beim Aufruf des WebService\n" + theFault.getFaultCode() + "\n" + theFault.getFaultString()); } else inquiry_result_string = inquiry_response.getReturnValue().getValue().toString(); ...... Can someone tell me where I'm going wrong and how I can correct the problem, please. I don't (and cannot) use client authentication, so I left that out. I'm working with Apache SOAP v.2.2 and JSSE 1.0.2, but it's no problem to change versions if that solves the problem! Thank you for your time! Sincerely, Carsten Kortmann