Hi Markus,

Did you manage to find a solution to your problem? I had to do something similar once with a test system to get it to accept non certified sites across ssl. I could not work out how to do do it correctly in Axis; so I ended up creating a custom HTTPSender and setting it up as my pivot in the handler chain of Axis. I extended the base HttpSender class from Axis, but a lot of variables and methods I wanted to overide were private, so unfortunately I ended up having to cut and paste most of the extending class into the new class and am not sure of the implications of this evne though everything seemed to work fine.

If you use this method then you can pretty much alter the HTTP mechanism as you see fit: for example allowing you to support gzip compression (I think originally axis did not support this from what I remember?). You can also use this class to overide the SocketFactory and get it to produce a non-certified sockets if you so desire. Infact this method maybe overidable... I cant remember. If not maybe it should be.

Anyway, I am sure there is a more maintainable way of doing this, but I was in a rush and it was a while ago. If you are in the same situation maybe a simialr approach will get you by for now?


Hope this helps until you find something more suitable,

Tim



Markus Reil wrote:

Hi,

I am currently trying to connect to a SOAP Web Service with Axis. I need to use a client certificate to authenticate myself. I do not want to set the keystore/truststore files globally via system properties because I have other http traffic in the same virtual machine that uses different or no keys.

I know there are a lot threads out about Axis/SSL out there. But I already spent a couple of hours looking for a solution and did not find anything of great use. Can anyone help me with this?

E.g. is it possible to create a SocketFactory and pass it to the Axis Service or Remote instance?

Thanks.

Regards,
Markus


Reply via email to