Hi all,

I have to send a SOAP message (and get a response) using HTTPS.
I use Apache Axis for sending the message.

The test client is simple:
----------------------------
System.setProperty("java.protocol.handler.pkgs", 
"com.sun.net.ssl.internal.www.protocol");
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());

System.setProperty("javax.net.ssl.trustStore", 
System.getProperty("user.home")+File.separator +"client.truststore");

System.setProperty("javax.net.ssl.keyStore", 
System.getProperty("user.home")+File.separator +"client.keystore");
System.setProperty("javax.net.ssl.keyStorePassword", "changeit");

try {
    Call call = ServiceFactory
         .newInstance()
         .createService(null)
         .createCall();

    call.setTargetEndpointAddress("https://host:port/Service/MyService"; );
    call.setOperationName( new QName("Service/MyService","myMethod"));

    String ret = (String) call.invoke( null );
    System.out.println(ret);
} catch (Exception e) { e.printStackTrace(); }

----------------------------

But I get an error when I invoke the call:
javax.net.ssl.SSLException: SSL V2.0 servers are not supported.
        at org.apache.axis.AxisFault.makeFault(AxisFault.java:129)
        at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:131)
        at 
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
        at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
        at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120)


Does anyone know what's wrong with that? How can I make a call over
HTTPS? Or does anyone have an alternative?

Thanks in advance.
        
Best regards,
Dmitry.

Reply via email to