I just came across a similar problem today. I have working code in a Swing app that uses import javax.net.ssl.*;
I copied the ssl connection code over to another app that happens to be a servlet, and I get the ClassCastException as seen below, at the line of code: connection = (HttpsURLConnection) url.openConnection(); Anybody know what is going on? Thanks, Mike ----- Original Message ----- From: "John Kammer" <[EMAIL PROTECTED]> To: "Tomcat Users List" <[EMAIL PROTECTED]> Sent: Wednesday, December 03, 2003 4:02 PM Subject: Re: Need Help getting SSL to work with HttpsURLConnections > An update.... and a correction... > > I was able to get the HttpsURLConnection to work by replacing: > > import javax.net.ssl.*; > > with: > > import com.sun.net.ssl.*; > > Contrary to what I had said below there is an java.lang.ClassCastException being thrown when making the call : > HttpsURLConnection conn = (HttpsURLConnection) myurl.openConnection(); > > Now the compiler warns me that I'm using deprecated code, but it does work. > Still, why would javax.net.ssl.* be having this problem ? > > Thanks again! > > > ----------------------------------------------------------- > > Forgive me, I'm new at this... > > > > I am using: Java v 1.4.2_02-b03 > > : Tomcat v 4.1.29 > > > > I'm having trouble getting an HttpsURLConnection to work as expected. I suspect I am missing something (possibly a great many things) and would appreciate any insight anyone could provide. I've not been able to find a single source that addresses this problem although I've found bits and pieces in several places. > > > > I have a simple servlet running in Tomcat that does nothing more than report back that it is alive. Posting to it at http://myserver:8080/simpleServlet/simpleServlet returns a response of: > > > > <simpleServletResponse>I am alive!</simpleServletResponse>. > > > > Additionally I have a simple client app that calls the servlet with a POST. The client can run on either the same machine as the server or a different machine. > > > > 1. Using an HttpURLConnection in the client app works fine. I can call the servlet on either port 8080 (http) or 8443 (https). This works from either machine. > > > > 2. If I do nothing other than change the HttpURLConnection to an HttpsURLConnection then everything falls apart immediately and I don't understand why (I do believe I have the proper imports included and it all compiles fine). From everything I can tell I should be able to replace the one with the other. > > > > 3. Keystores & certificates: I have generated certificates for both machines using keytool and have imported the client machine certificate into the trustedcerts file on the server machine. I have NOT had any of these certificates signed by a certificate authority (and due to complexities I won't go into here that isn't likely to happen). Do the certificates need to be signed by a CA in order for HttpsURLConnection to work? > > > > 4. The result of calling the method url.openConnection() is that "null" is printed to the screen then program execution simply stops. No Exception seems to be thrown - everything just stops. Why? > > > > HttpsURLConnection conn = (HttpsURLConnection) myurl.openConnection(); > > > > Ultimately I would like to get Client-Certification working but haven't been able to find a good guide out there for doing so. At the moment I am taking small steps in the hope of gaining a better understanding. Any help would be greatly appreciated. > > > > Thanks in advance ! > > -- John Kammer > > > > --------------------------------------------------------------------- > > 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]
