我有很多用@WebService(targetNamespace = "mynamespace")
. 每个@WebResult
和@WebParam
都有相同的定义targetNamespace = "mynamespace"
。
有没有办法将 JAX-WS(Metro 实现)配置"mynamespace"
为默认用作 targetNamespace?
我想使用没有任何属性的注释并摆脱重复的声明,就像约定优于配置一样。
我有很多用@WebService(targetNamespace = "mynamespace")
. 每个@WebResult
和@WebParam
都有相同的定义targetNamespace = "mynamespace"
。
有没有办法将 JAX-WS(Metro 实现)配置"mynamespace"
为默认用作 targetNamespace?
我想使用没有任何属性的注释并摆脱重复的声明,就像约定优于配置一样。
仅将 放在targetNamespace
服务端点接口或服务实现 bean中。
/**
* Annotated Implementation Object
*/
@WebService(
name = "CustomerService",
targetNamespace = "http://org.company.services"
)
public class CustomerService {
@WebMethod
@WebResult(name="CustomerRecord")
public CustomerRecord locateCustomer(
@WebParam(name="FirstName") String firstName,
@WebParam(name="LastName") String lastName,
@WebParam(name="Address") USAddress addr) {
...
}
};
如果@WebResult
或@WebParam
没有targetNamespace
,则默认为targetNamespace
Web 服务的 。
另一方面,您可以避免使用所有注释,并且仅在@WebService
不需要使用 JAX-B 进行自定义的情况下才使用。
在 JavaTM 平台的 JSR-181 Web 服务元数据中查看更多信息