您似乎可以通过多种方式获取JAX-WS(2.2)Service
,方法是构造一个或使用静态create
方法之一。任何需要WSDL位置作为参数的替代方案对我来说都是有意义的,因为WSDL提供了构建服务所需的所有信息,但create methods that don't accept a WSDL的目的/用途是什么?如:
public static Service create(javax.xml.namespace.QName serviceName)
答案 0 :(得分:0)
JAX-WS reference implementation documentation about the Dispatch API提供了一些见解:
javax.xml.ws.Service
充当创建动态服务的工厂。创建用于Dispatch<T>
API时,Service
创建的Service
可以是Service
,了解已知Service
的绑定信息或不知道任何特定Dispatch<T>
Service
1}}。如果使用WSDL绑定信息创建了服务,则无需添加端口,因为将创建特定于所提供的WSDL文件中提供的绑定信息的
service.addPort(QName portName, String SOAPBinding.SOAP12HTTP_BINDING, String endpointAddress);
实例。
...如果您不使用WSDL创建Service
,则必须添加一个&#34;端口&#34;程序上,例如:
Dispatch
总而言之,我认为创建一个没有WSDL的{{1}}是可用的,这样当你没有WSDL并希望使用JAX-WS时,你可以自己构建服务{{1 API。