我们有一个Web服务,我们称之为CarLoans,它是cxf基于WSDL文件生成的。使用maven-resources-plugin从外部依赖项检索WSDL。 cxf-codegen-plugin有一个绑定文件,我们使用该文件为各种其他元素添加前缀,例如WebService的请求和响应对象。假设我们希望请求和响应对象的前缀为WS,而CarLoans的前缀为EndPoint。我们如何使用bindings.xml文件配置它?生成的Java代码应大致如下所示(不相关的注释等除外):

@WebService(targetNamespace="http://url.com/", name="CarLoansPortType")
public interface CarLoansPortType {
  public WSCarLoansResponse getCarLoans(@WebParam(name = "request") WSCarLoansRequest request)
}

最佳答案

我在apache邮件档案中找到了一个有趣的链接-http://mail-archives.apache.org/mod_mbox/cxf-users/201202.mbox/%3CCAMHV5gYe8VQDoBfKdEP9nrg-VXy9FnA9BL_4oqpE_zKC2=-x3w@mail.gmail.com%3E

相关代码粘贴在下面:

<jaxws:bindings
  xmlns:jaxws="http://java.sun.com/xml/ns/jaxws"
  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <jaxws:bindings node="wsdl:definitions/wsdl:portType[@name='CREATE_RECIPE']">
      <jaxws:class name="CreateRecipeSEI"/>
  </jaxws:bindings>
</jaxws:bindings>


因此,基本上应该很容易做到。我在使XPATH表达式正常工作时遇到了一些本地问题,但这显然是我们想要的。

09-05 10:41