Java JAX-WS-具有不同WSDL URL的端口类型对象

Java JAX-WS-具有不同WSDL URL的端口类型对象,java,jax-ws,stubs,porttype,Java,Jax Ws,Stubs,Porttype,我有一个.NETWebService,我使用JAX-WS为它生成存根(在本地下载了WSDL和XSD)。现在,我将存根打包在一个jar(stubs.jar)中,将WSDL和XSD打包在另一个jar(WSDL.jar)中 我使用的存根如下: URL url = ServiceClient.class.getResource("MyService.wsdl"); MyService service = new MyService(url,new QName(namespaceURI,localNam

我有一个.NETWebService,我使用JAX-WS为它生成存根(在本地下载了WSDL和XSD)。现在,我将存根打包在一个jar(stubs.jar)中,将WSDL和XSD打包在另一个jar(WSDL.jar)中

我使用的存根如下:

URL url = ServiceClient.class.getResource("MyService.wsdl"); 
MyService service = new MyService(url,new QName(namespaceURI,localName));
MyServicePortType portType = service.getMyServicePort();
BindingProvider bp = (BindingProvider) portType;
//WSDL_URL is the actual endpoint address
bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, WSDL_URL);
虽然一切正常,但在调试期间,我注意到端口类型对象的创建需要很多时间

此外,调试时的端口类型对象将WSDL URL显示为远程URL(甚至在将其类型转换为绑定提供程序对象之前)

我无法确定端口类型对象中WSDL URL更改的原因。任何人,请帮我理解

此外,是否可以采取任何措施来减少创建端口类型对象所需的时间


提前谢谢

第一次
MyService
从WSDL文档文件(本地文件)获取URL。因为加载文件需要更长的时间。这只能在应用程序开始时进行

MyService service = new MyService(url, new QName(namespaceURI, localName));
然后,您可以自定义端点URL

bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, WSDL_URL);

如果URL相同,也许可以避免此步骤。当URL不同时,例如从开发环境更改为生产环境时,这非常有用。

对不起,我不清楚您的答案,请您详细解释一下。