sat*_*the 11 web-services jax-ws
用注释@WebService定义了一个Java接口 编译好的代码
例:
@WebService
public interface HelloWorldIfc{
Run Code Online (Sandbox Code Playgroud)
现在我尝试将端点接口定义为
@WebService (endpointInterface = "com.ws.HelloWorldIfc")
public interface HelloWorldIfc{
Run Code Online (Sandbox Code Playgroud)
这也很好
那么 - 我应该在接口上还是在实现类时定义端点接口?
这是任何用途的属性 - 它的目的是什么?
如果我不定义会发生什么 - 我会失去什么?
谢谢,
饱餐一顿
joe*_*rgl 20
JAX-WS规范在第30页的第3.3节中进行了此类清除:
您可以使用该endpointInterface属性在实现类和接口之间进行分隔.基本上,这决定了wsdl:portType在部署服务和wsdl:definition生成服务时将映射到您的内容.
如果您没有定义endpointInterface注释类的所有公共方法将被映射到wsdl:operation(只要您不通过@WebMethod注释影响此行为).
如果你确实定义了endpointInterface它,它必须指向带注释的类实现的某种类型(或者,如你的问题所示,它本身).然后,这种类型的公共方法用于映射wsdl:portType,而不是注释类的方法.
总结:endpointInterface只有@WebService在实现类上使用并希望基于它实现的接口生成WSDL时,定义才有意义.在您当前使用界面上的注释的设置中com.ws.HelloWorldIfc,确实没有任何区别.所以你只是跳过它就不会失去任何东西.如果希望实现类提供不应该生成的WSDL的公共方法,那么注释很有用.
| 归档时间: |
|
| 查看次数: |
14362 次 |
| 最近记录: |