users@grizzly.java.net

Grizzly SSL Connection Closed Error

From: Bessette-Halsema, Dominique E <Dominique.Bessette_at_GDIT.com>
Date: Fri, 2 Sep 2011 14:29:31 -0400

Hi

I'm getting a EOFException: Connection Closed error when I try to hit my wsdl using two-way ssl. I edited the grizzly source code to call the SSLWorkerThread class instead of the WorkerThreadImpl class in LinkedListPipeline because I was getting a ClassCastException when using two-way ssl:


16:06:50,796 INFO [STDOUT] Using SSLEngineImpl.

16:06:50,796 FINE [GRIZZLY] workerThread.httpExceptionjava.lang.ClassCastException:

com.sun.enterprise.web.connector.grizzly.WorkerThreadImpl cannot be cast to com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread

  at com.sun.enterprise.web.connector.grizzly.ssl.SSLReadTask.doTask(SSLReadTask.java:208)

        at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:264)

        at com.sun.enterprise.web.connector.grizzly.WorkerThreadImpl.run(WorkerThreadImpl.java:117)

16:06:50,796 DEBUG [GRIZZLY] workerThread.httpException

java.lang.ClassCastException: com.sun.enterprise.web.connector.grizzly.WorkerThreadImpl cannot be cast to com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread

        at com.sun.enterprise.web.connector.grizzly.ssl.SSLReadTask.doTask(SSLReadTask.java:208)

        at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:264)

        at com.sun.enterprise.web.connector.grizzly.WorkerThreadImpl.run(WorkerThreadImpl.java:117)


Some info I also attached the log file:

I'm deploying a servicemix-3.3.1 war in JBoss 5.1.0 using Grizzly version 1.0.30 I tried updating to 1.0.40 and saw no difference in error

Grizzly 1.0.30 running on Windows XP-5.1 under JDK version: 1.6.0_26-Sun Microsystems Inc.
                port: 9080
                maxThreads: 5
                ByteBuffer size: 8192
                useDirectByteBuffer: 8192
                maxKeepAliveRequests: 256
                keepAliveTimeoutInSeconds: 30
                Static File Cache enabled: false
                Pipeline : com.sun.jbi.httpsoapbc.embedded.LinkedListThrottlePipeline
                Round Robin Selector Algorithm enabled: false
                Round Robin Selector pool size: 0
                Asynchronous Request Processing enabled: true


Here are the sun-http-binding config properties for servicemix

ClientAuthEnabled=true
NonProxyHosts=localhost|127.0.0.1
ProxyPort=0
HttpDefaultPort=9080
ProxyPassword=
ProxyUserName=
ProxyType=DIRECT
UseJVMProxySettings=false
ProxyHost=
HttpsDefaultPort=9181
OutboundThreads=100

And then I receive this error when I try to hit the deployed composite service with two-way SSL

2011-09-02 11:01:58,257 INFO [STDOUT] Using SSLEngineImpl.
2011-09-02 11:02:28,491 INFO [STDOUT] httpWorkerThread-9181-3, called closeInbound()
2011-09-02 11:02:28,491 INFO [STDOUT] httpWorkerThread-9181-3, closeInboundInternal()
2011-09-02 11:02:28,491 INFO [STDOUT] httpWorkerThread-9181-3, closeOutboundInternal()
2011-09-02 11:02:28,491 FINE [GRIZZLY] doHandshake
java.io.EOFException: Connection closed
      at com.sun.enterprise.web.connector.grizzly.ssl.SSLUtils.doHandshake(SSLUtils.java:355)
      at com.sun.enterprise.web.connector.grizzly.ssl.SSLReadTask.doHandshake(SSLReadTask.java:291)
      at com.sun.enterprise.web.connector.grizzly.ssl.SSLReadTask.doTask(SSLReadTask.java:214)
      at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:264)
      at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
2011-09-02 11:02:28,491 DEBUG [GRIZZLY] doHandshake
java.io.EOFException: Connection closed
      at com.sun.enterprise.web.connector.grizzly.ssl.SSLUtils.doHandshake(SSLUtils.java:355)
      at com.sun.enterprise.web.connector.grizzly.ssl.SSLReadTask.doHandshake(SSLReadTask.java:291)
      at com.sun.enterprise.web.connector.grizzly.ssl.SSLReadTask.doTask(SSLReadTask.java:214)
      at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:264)
      at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
2011-09-02 11:02:28,491 INFO [STDOUT] Using SSLEngineImpl.


Thank You for your help