Java相当于.NET System.NET.ServicePointManager

Java相当于.NET System.NET.ServicePointManager,java,web-services,Java,Web Services,我想告诉java客户端请求不要关心远程服务器自己创建的SSL证书。在.NET中,我可以通过操纵ServicePointManager来做到这一点。在Java中如何做到这一点?我们需要知道您使用的SOAP/WS堆栈,因为它的底层实现可能会影响SSL的处理方式。在大多数情况下,堆栈将在封面下使用JVM范围内的JSSE设置,但您对JSSE配置的控制程度有所不同 如果这是生产,你真的应该考虑建立一个适当的PKI并信任客户机JVM中的CAS。如果这是为了测试,那么您应该对测试环境执行相同的操作,并且仍然使

我想告诉java客户端请求不要关心远程服务器自己创建的SSL证书。在.NET中,我可以通过操纵ServicePointManager来做到这一点。在Java中如何做到这一点?

我们需要知道您使用的SOAP/WS堆栈,因为它的底层实现可能会影响SSL的处理方式。在大多数情况下,堆栈将在封面下使用JVM范围内的JSSE设置,但您对JSSE配置的控制程度有所不同

如果这是生产,你真的应该考虑建立一个适当的PKI并信任客户机JVM中的CAS。如果这是为了测试,那么您应该对测试环境执行相同的操作,并且仍然使用受信任的CA配置JVM

要在JVM中配置信任,请参阅Java版本的

要创建用于JSSE设置的JKS文件,请参阅Java版本的

如果你觉得keytool让人望而生畏,那么谷歌上就有免费的gui

如果您不能或不想正确设置信任,那么可以将JSSE类的自定义实现配置为忽略信任。有关TrustManager不执行任何操作的代码示例,请参阅。您需要将此TrustManager配置为JVM的默认信任管理器,因为您的SOAP/WS堆栈可能不允许您具有每连接控制