加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 使用JAX-WS 2.0和@WebService发布具有一个服务的多个端

发布时间:2020-12-14 17:43:13 所属栏目:Java 来源:网络整理
导读:我想创建一个暴露的多个端口类型的SOAP服务,其中每个端口类型都有一个单独的接口.我正在尝试使用JAX-WS 2.0. 例: interface A: ObjectA get(String name);interface B: ObjectB get(String name);Service: port A get port B get 我遇到的问题是@WebService
我想创建一个暴露的多个端口类型的SOAP服务,其中每个端口类型都有一个单独的接口.我正在尝试使用JAX-WS 2.0.

例:

interface A:
    ObjectA get(String name);

interface B:
    ObjectB get(String name);

Service:
    port A
          get
    port B
          get

我遇到的问题是@WebService是使用单个类/接口来定义的,所以我能够设置的唯一方法是具有两个单独的服务.每个服务由具有@WebService注释的单独类实现.

我想使用相同的服务公开两个端口,以便清楚地表明它们都是同一个API的一部分.这可能吗?

真的,我以后在WSDL中有一些嵌套的命名空间支持,所以我可以在不同的命名空间中使用相同的方法.我将获得/ set / delete方法来处理不同类型的数据,但是我不希望将它们全部放在与getA / getB等相同的大接口中,因为我希望能够以便稍后添加新的数据类型,而不会强制所有客户端从新的WSDL集重新生成.任何有关实现这一点的提示都是值得欢迎的,即使这意味着使用从Java代码生成WSDL的另一种方法.

解决方法

您可以尝试重命名一个方法,并明确地在@WebMethod注释中设置action或operationName字段.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读