tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Goo Sam Kong <skgo...@gmail.com>
Subject Client not able with perform client-cert authentication with Tomcat 6.0.29 on APR
Date Fri, 12 Nov 2010 16:27:26 GMT
Hi

I am running Tomcat 6.0.29 with JDK 1.6.0_22 on Windows XP.

I changed server.xml as below.

<?xml version="1.0" encoding="UTF-8"?>
<Server port="8005" shutdown="SHUTDOWN">

    <!--APR library loader. Documentation at /docs/apr.html -->
    <Listener SSLEngine="on"
        className="org.apache.catalina.core.AprLifecycleListener" />
    <Listener className="org.apache.catalina.core.JasperListener" />
    <!-- Prevent memory leaks due to use of particular java/javax APIs-->
    <Listener
className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
    <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"
/>
    <Listener
className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />

    <GlobalNamingResources>
        <Resource auth="Container" description="User database that can be
updated and saved"
            factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
name="UserDatabase"
            pathname="conf/tomcat-users.xml"
type="org.apache.catalina.UserDatabase" />
    </GlobalNamingResources>

    <Service name="Catalina">

        <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1"
            redirectPort="8443" />
        <Connector SSLCACertificateFile="C:\usr-files\client-cert-ca.crt"
            SSLCertificateFile="C:\usr\tomcat\tomcat.crt"
SSLCertificateKeyFile="C:\usr\tomcat\tomcat.key"
            SSLCipherSuite="AES128-SHA:DES-CBC3-SHA" SSLEnabled="true"
SSLEngine="on"
            SSLVerifyClient="optional" maxThreads="150" port="8443"
            protocol="HTTP/1.1" scheme="https" secure="true"
sslProtocol="TLS" />

        <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />


        <Engine defaultHost="localhost" name="Catalina">
            <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
                resourceName="UserDatabase" />

            <Host appBase="webapps" autoDeploy="true" name="localhost"
                unpackWARs="true" xmlNamespaceAware="false"
xmlValidation="false">

                <Context docBase="cert" path="/cert" reloadable="true"
                    source="org.eclipse.jst.j2ee.server:cert" />
                <Context docBase="crl" path="/crl" reloadable="true"
                    source="org.eclipse.jst.j2ee.server:crl" />
                <Context docBase="tdci-2.5.0" path="/tdci-2.5.0"
reloadable="true"
                    source="org.eclipse.jst.j2ee.server:tdci-2.5.0" />
            </Host>
        </Engine>
    </Service>
</Server>

*My **Java **XML-RPC client thrown exception below:*
Exception in thread "main" java.net.SocketException: Software caused
connection abort: socket write error
    at java.net.SocketOutputStream.socketWrite0(Native Method)
    at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
    at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
    at
com.sun.net.ssl.internal.ssl.OutputRecord.writeBuffer(OutputRecord.java:283)
    at
com.sun.net.ssl.internal.ssl.OutputRecord.write(OutputRecord.java:272)
    at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:666)
    at
com.sun.net.ssl.internal.ssl.Handshaker.sendChangeCipherSpec(Handshaker.java:584)
    at
com.sun.net.ssl.internal.ssl.ClientHandshaker.sendChangeCipherAndFinish(ClientHandshaker.java:698)
    at
com.sun.net.ssl.internal.ssl.ClientHandshaker.serverHelloDone(ClientHandshaker.java:624)
    at
com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:160)
    at
com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:495)
    at
com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:433)
    at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:818)
    at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1030)
    at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1057)
    at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1041)
    at
sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:402)
    at
sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:170)
    at
sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:839)
    at
sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(HttpsURLConnectionImpl.java:230)
    at org.apache.xmlrpc.DefaultXmlRpcTransport.sendXmlRpc(Unknown Source)
    at org.apache.xmlrpc.XmlRpcClientWorker.execute(Unknown Source)
    at org.apache.xmlrpc.XmlRpcClient.execute(Unknown Source)
    at
TdciXmlRpcCertAuthClient.requestWebIssuanceKey(TdciXmlRpcCertAuthClient.java:166)
    at TdciXmlRpcCertAuthClient.main(TdciXmlRpcCertAuthClient.java:63)

Please help.

Thank you.

SamKong Goo

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message