如何在没有客户端感知更改的情况下将jax-ws更改为jax-rs



有一个由JAX-WS配置和开发的应用程序;这段代码是这样的:

@WebService(targetNamespace = "http://webservice.bulk.test.net/", serviceName = "BulkService")
@BindingType(value = SOAPBinding.SOAP12HTTP_BINDING)
@XmlSeeAlso({
ObjectFactory.class
})
public class Bulk {
@WebMethod
@RequestWrapper(localName = "getProvinces", targetNamespace = "http://webservice.bulk.test.net/", className = "test.GetProvinces")
@ResponseWrapper(localName = "getProvincesResponse", targetNamespace = "http://webservice.bulk.test.net/", className = "test.GetProvincesResponse")
@Action(input = "http://webservice.bulk.test.net/Bulk/getProvincesRequest", output = "http://webservice.bulk.test.net/Bulk/getProvincesResponse")
public void getProvinces(
@WebParam(name = "username", targetNamespace = "") @XmlElement(nillable = false, required = true)
String username,
@WebParam(name = "password", targetNamespace = "") @XmlElement(nillable = false, required = true)
String password,
...) {
}

根据这个Web服务,许多客户端(jax-ws客户端(都在使用。

我想在不更改客户端的情况下将jax-ws更改为jax-rs,另一方面,客户端对更改没有任何感觉,并像以前一样进行api调用。

有可能吗?

由于一些原因,我通过将soap层与应用程序分离来解决这个问题,首先,同时使用Jax-rs and Jax-ws端点,其次是技术债务;由于将soap与应用程序分离,它能够毫无问题地迁移到JDK-11;第三,根据将soap与程序分离,除了更改JAX-WS端点之外,它独立于JAX-WS客户端。

相关内容

  • 没有找到相关文章

最新更新