我想创建一个暴露多个端口类型的SOAP服务,其中每个端口类型都有一个单独的接口.我正在尝试使用JAX-WS 2.0来做到这一点.
例:
interface A:
ObjectA get(String name);
interface B:
ObjectB get(String name);
Service:
port A
get
port B
get
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是@WebService是使用单个类/接口定义的,所以我能够设置它的唯一方法是拥有两个独立的服务.每个服务由一个带有@WebService注释的单独类实现.
我想使用相同的服务公开这两个端口,以明确它们都是同一API的一部分.这可能吗?
真的,我所追求的是在WSDL中有一些嵌套的命名空间支持,所以我可以在不同的命名空间中使用相同的方法.我将获取/设置/删除彼此相邻的不同类型数据的方法,但我宁愿不将它们全部放在与getA/getB相同的大接口中,依此类推,因为我希望能够稍后添加新数据类型而不强制所有客户端从新的WSDL集重新生成.任何有关实现此目的的提示都是受欢迎的,即使这意味着使用另一种从java代码生成WSDL的方法.