修改内存中的wsdl并在Service.create(..)中使用它

时间:2013-02-21 18:44:31

标签: jax-ws httpurlconnection

我有一个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并进行编辑(通过评论

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

HttpURLConnection,我可以动态阅读WSLD并创建一个WSDL的字符串形式,它不会有

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

中需要URL

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

此致

0 个答案:

没有答案