jaxws-maven-plugin缺少SNI,在java8(openjdk 1.8.0_101)和wildfly 10.1 environement中生成了肥皂客户端

问题描述 投票:0回答:1

这是问题所在

我有一个jaxws-maven-plugin(版本2.5,jaxws-tools 2.3.0)生成的wsdl代码(用于soap服务)

它使用@WebServiceClient(javax.xml.ws java1.8)客户端生成代码。

当我在Junit中针对站点运行此客户端时,一切正常,我得到sslconnection正确,并收到响应。但是当我使用这个客户端向wildfly 10.1中的同一站点运行应用程序时,我实际上得到了SSLHandshakeException,unrecognized_name,这表明SNI丢失了。我有一个自己使用HttpsURLConnection编写的客户端,它工作正常。所以我真的很困难,为什么会这样。

从maven生成的代码如下所示(我只能有伪代码)

@WebServiceClient(name = "service_name", targetNamespace = "https://namespace.com/xxxxxx/v2", wsdlLocation = "/wsdl/targetwsdl.wsdl")
public class DTServerModuleServiceV2
    extends Service
{

}
java-8 soap-client wildfly-10 sslhandshakeexception sni
1个回答
0
投票

我只看到一个可能改变这种行为的参数。从JSSE Reference Guide,尝试-Djsse.enableSNIExtension=false默认设置为true。有一个长时间的讨论和一个技术解释here,但你的问题并不是真的重复。如果已解决,请告诉我们。

顺便说一下,您的Java版本已经过时,并且已知存在SSL错误。

© www.soinside.com 2019 - 2024. All rights reserved.