tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mike Kellstrand" <>
Subject Re: Need Help getting SSL to work with HttpsURLConnections
Date Wed, 03 Dec 2003 21:40:26 GMT
I just came across a similar problem today.

I have working code in a Swing app that uses  import*;

I copied the ssl connection code over to another app
that happens to be a servlet, and I get the ClassCastException as seen
at the line of code:
connection = (HttpsURLConnection) url.openConnection();

Anybody know what is going on?

Thanks,  Mike

----- Original Message ----- 
From: "John Kammer" <>
To: "Tomcat Users List" <>
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*;
> with:
>    import*;
> 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
> Still, why would* 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:
> > For additional commands, e-mail:
> >
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message