【问题标题】:Change part name with Jaxb binding使用 Jaxb 绑定更改部件名称
【发布时间】:2015-09-28 12:30:26
【问题描述】:

我有一个这样的 WSDL:

...
<wsdl:message name="myHeader">
    <wsdl:part name="parameter" element="header:myHeader"/>
</wsdl:message>
...
<wsdl:operation name="myOperation">
   <soap:operation soapAction="myOperation" style="document" />
   <wsdl:input name="myOperationRequest">
    <soap:header message="mySession:myHeader" part="header" use="literal"/>
       <soap:body parts="parameters" use="literal" />
   </wsdl:input>
   <wsdl:output name="myOperationResponse">
       <soap:body parts="parameters" use="literal" />
   </wsdl:output>
   <wsdl:fault name="myOperationException">
       <soap:fault name="createTroubleTicketByValueException" use="literal" />
   </wsdl:fault>
</wsdl:operation>
....

我使用 wsdl2java 将我的 WSDL 转换为 Java,在 exsh 设置为 true 的转换过程中没有问题。 但是当我启动我的应用程序(Spring 4,CXF 2.7)时,我收到以下警告:

2015-09-28 14:19:04,640 WARN [main] o.a.c.s.f.ReflectionServiceFactoryBean(1525) - 方法接口 ....XXXSessionWSPort.myOperation 配置为 BARE 但有多个参数带有错误的 @Webparam 注释或没有注释@WebParam 注释。

如果我仔细观察生成的 WsPort:

@WebResult(name = "myOperationResponse", targetNamespace = "http://myNamespace", partName = "parameters")
@WebMethod(action = "myOperation")
public myOperationResponse myOperation(
    @WebParam(partName = "parameters", name = "myOperationRequest", targetNamespace = "http://myNameSpace")
    myOperationRequest parameters,
    @WebParam(partName = "parameters", name = "myheader", targetNamespace = "http://headerNameSpace", header = true)
    myHeader parameters1) throws myOperationException;

此外,作为客户端,当我调用 myOperation CXF/JAXB/Jax-ws/...(?) 在 myHeader 标记的末尾添加“1”时,服务器无法处理标头。 ..

在ReflectionServiceFactoryBean类中调试后,我看到问题来自两个@WebParam中的相同partName。

要更正此问题,我必须将标头的部分名称更改为 WSDL,但我不能:它不是我的。

所以我会在 jaxb 绑定 xml 文件中进行此更改,如果可能的话,我该怎么做?

如果您有更好的解决方案,请不要犹豫!

【问题讨论】:

    标签: java xml web-services jaxb wsdl


    【解决方案1】:

    有点晚了,但也许这可以帮助你:“自定义文件”

    http://java-soa.blogspot.pe/2008/07/parameter-customization-in-jax-ws.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-29
      • 2012-10-20
      • 1970-01-01
      • 2011-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多