Hello,

I am trying to get the axis client (version 1.4) to work with a SOAP
server that requires a client certificate for authentication.

I've tried the approach described here:
http://wiki.apache.org/ws/FrontPage/Axis/AxisClientConfiguration/SSLConfig

The code I use to create the locator instance looks like this:

SimpleProvider config = new SimpleProvider(new BasicClientConfig());
Handler handler = new HTTPSender();
handler.setOption("keystore", "/path/to/keystore.jks");
handler.setOption("clientauth", "true");
handler.setOption("keystorePass", "changeit");
handler.setOption("keypass", "changeit");
SimpleTargetedChain c = new SimpleTargetedChain(handler);
config.deployTransport(HTTPTransport.DEFAULT_TRANSPORT_NAME, c);
FTGServiceLocator locator = new FTGServiceLocator(config);

The keystore file contains only a single entry for the client certificate.

When trying to call the service, I get an SSL handshake error.

HTTPSender.invoke(146): javax.net.ssl.SSLHandshakeException: Received
fatal alert: handshake_failure

From the call trace it does not seem that SunJSSESocketFactory gets
used. I've also configured log4j to DEBUG level for
org.apache.axis.components.net.SunJSSESocketFactory and
org.apache.axis.transport.http.HTTPSender, but the output does not help
me in finding out whether my settings for the client certificate were
used or not.

Does anybody have working example for using a client certificate with
Axis or an idea how to debug this further?

Thanks in advance...

--
Kind regards,
Pascal Schmidt


---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscr...@axis.apache.org
For additional commands, e-mail: java-user-h...@axis.apache.org

Reply via email to