这种方法还需要我提供一个我还不了解的javax.xml.namespace.QName对象作为第二个参数。
从您生成的源中复制一个。A
QName是XML 限定名称 -“唯一”身份。
我仍然不明白为什么在运行时需要WSDL。
我不能肯定地说,但是WSDL本质上是一种模式。通过提供它,我猜您为JAX-WS提供了一种验证SOAP响应的机制。我认为JAXB绑定不足以做到这一点。
我总是在生成的服务中使用二元构造函数,通过ClassLoader.getResource方法提供URL,以将WSDL嵌入我的jar中。与任何模式一样,为此使用远程或文件系统URL愚蠢, 并非最佳选择。
有关如何在运行时设置终点的信息,请参见以下问题:
HelloService service = new HelloService();Hello port = service.getHelloPort();BindingProvider bindingProvider = (BindingProvider) port;bindingProvider.getRequestContext().put( BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "http://foo:8086/HelloWhatever");String response = port.sayHello(name);
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)