SSL Connection problem
843790Nov 26 2007 — edited Dec 1 2007Dear,
I am trying to write a client application to connection with another application using HTTPS connection that are deployed on the same machine and the same weblogic server, so am using the following code to do it:
InputStream response = null;
String result = null;
String url = "https://localhost:7002/TejaryAdapter/FileReceiver";
try {
URL server = null;
HttpsURLConnection con = null;
server = new URL(url);
con = (HttpsURLConnection)server.openConnection();
con.setDoOutput(true);
con.setUseCaches(false);
con.setRequestProperty("Content-Type", "application/octet-stream");
OutputStream request = con.getOutputStream();
ByteStream.toStream(request, filename);
response = con.getInputStream();
result = ByteStream.toString(response);
} catch(IOException ignored) {
ignored.printStackTrace();
} finally {
try {
if( response!=null ) {
response.close();
}
} catch(IOException ex) {}
}
}
So when execute this code I get the following exception:
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <SSLListenThread.Default> <<WLS Kernel>> <> <000000> <Filtering JSSE SSLSocket>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <SSLListenThread.Default> <<WLS Kernel>> <> <000000> <SSLIOContextTable.addContext(ctx): 19084516>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <SSLListenThread.Default> <<WLS Kernel>> <> <000000> <SSLSocket will be Muxing>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <SSLFilter.isActivated: false>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <isMuxerActivated: false>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <SSLFilter.isActivated: false>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <4491675 SSL Version 2 with no padding>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <27672070 SSL3/TLS MAC>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <27672070 received SSL_20_RECORD>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <HANDSHAKEMESSAGE: ClientHelloV2>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <write HANDSHAKE, offset = 0, length = 58>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <write HANDSHAKE, offset = 0, length = 3258>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <write HANDSHAKE, offset = 0, length = 4>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <SSLFilter.isActivated: false>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <isMuxerActivated: false>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <SSLFilter.isActivated: false>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <27672070 SSL3/TLS MAC>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <27672070 received ALERT>
####<Nov 26, 2007 3:30:12 PM GST> <Error> <HTTP> <PC169> <myserver> <ExecuteThread: '13' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <BEA-101020> <[ServletContext(id=32982383,name=TejaryClient,context-path=/TejaryClient)] Servlet failed with Exception
java.lang.IllegalStateException: Already connected
at java.net.URLConnection.setDoOutput(URLConnection.java:739)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.setDoOutput(DashoA12275)
at com.client.FileSender.sendFile(FileSender.java:128)
at com.client.FileSenderServlet.doGet(FileSenderServlet.java:30)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1006)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:419)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:315)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6718)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3764)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2644)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <NEW ALERT with Severity: FATAL, Type: 46
java.lang.Exception: New alert stack
at com.certicom.tls.record.alert.Alert.<init>(Unknown Source)
at com.certicom.tls.record.alert.AlertHandler.handleAlertMessages(Unknown Source)
at com.certicom.tls.record.MessageInterpreter.interpretContent(Unknown Source)
at com.certicom.tls.record.MessageInterpreter.decryptMessage(Unknown Source)
at com.certicom.tls.record.ReadHandler.processRecord(Unknown Source)
at com.certicom.tls.record.ReadHandler.readRecord(Unknown Source)
at com.certicom.tls.record.ReadHandler.readUntilHandshakeComplete(Unknown Source)
at com.certicom.tls.interfaceimpl.TLSConnectionImpl.completeHandshake(Unknown Source)
at javax.net.ssl.impl.SSLSocketImpl.startHandshake(Unknown Source)
at com.bea.sslplus.CerticomSSLContext.forceHandshakeOnAcceptedSocket(Unknown Source)
at weblogic.security.utils.SSLContextWrapper.forceHandshakeOnAcceptedSocket(SSLContextWrapper.java:128)
at weblogic.t3.srvr.SSLListenThread$1.execute(SSLListenThread.java:484)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <Alert received from peer, notifying peer we received it: com.certicom.tls.record.alert.Alert@1321875>
####<Nov 26, 2007 3:30:12 PM GST> <Warning> <Security> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <BEA-090485> <CERTIFICATE_UNKNOWN alert was received from localhost - 127.0.0.1. The peer has an unspecified issue with the certificate. SSL debug tracing should be enabled on the peer to determine what the issue is.>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <close(): 4491675>
####<Nov 26, 2007 3:30:12 PM GST> <Debug> <TLS> <PC169> <myserver> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'> <<WLS Kernel>> <> <000000> <SSLIOContextTable.removeContext(ctx): 19084516>
Any Idea? Please help me.
Edited by: Mikel on Nov 26, 2007 5:07 PM