1

我有一个 JAX-WS,它的 WSDL 有以下行:

 <wsp:PolicyReference URI="policy:Xyz-UserNameToken-Plain.xml"/>

我不得不在上面手动注释并将修改后的 WSDL 放在类路径中

我的 JAX-WS 客户端代码如下:

URL wsdlLocation = new URL("host:port/WSServiceImpl/WSService");
QName serviceName = new QName("http://ws2.service.abc.xyz.com/", "WSService");

Service s = Service.create(this.getClass().getResource("WSService.wsdl"), serviceName);
=========================================================================================
WSService wsService = s.getPort(WSService.class);

正如您在上面看到的,带下划线的行读取 WSService wsdl 文件。

我不想阅读手动预编辑的 WSDL 我宁愿想即时阅读 WSDL URL 并编辑它(通过评论

我猜它可以通过使用对象读取 wsdl HttpURLConnection,修改内存中的 wsdl 并在Service.create(....)

HttpURLConnection,我可以即时读取 WSLD 并创建一个字符串形式的 WSDL,它不会有

但问题是我如何在运行时将此字符串转换为 URL 对象?因为 URL 应该在::Service.create(URl url, QName qName)

有人可以提供示例代码吗?

问候,

4

0 回答 0