在 Wildfly 和 Websphere 中的 WSDL 之间使用 SOAPUI 时的不同标签名称

Different tag names when using SOAPUI between WSDL in Wildfly and Websphere

我有两个应用程序服务器运行:Wildfly 和Websphere。 使用 Wildfly 并使用 SOAPUI 检查 WSDL,我得到以下输出:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://xxx/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:Login>
         <username>xxx</username>
         <password>xxx</password>
         <accessArea>xxx</accessArea>
         <extendName>xxx</extendName>
      </web:Login>
   </soapenv:Body>
</soapenv:Envelope>

但是如果我在 Websphere 中使用相同的 war 文件,我总是得到这样的结果:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="xxx">
   <soapenv:Header/>
   <soapenv:Body>
      <web:login>
         <arg0>xxx</arg0>
         <arg1>xxx</arg1>
         <arg2>xxx</arg2>
         <arg3>xxx</arg3>
      </web:login>
   </soapenv:Body>
</soapenv:Envelope>

有人知道为什么所有的标记名都是 arg0、arg1、...,什么时候在 Websphere 中做同样的事情并用 SOAPUI 检查它?

非常感谢!

好吧,我已经从别人那里接手了这个项目,所以我不太喜欢这个话题。我没有发现任何提示自上而下或自下而上的东西。

所以经过很长时间我才能够解决问题。 Wildfly 和 Websphere 之间有很多不同之处,其中一个似乎与注释有关。 要识别 XMLElements,您还必须在 Websphere 的相应方法中对它们进行注释。

public someMethod( @WebParam(name="xyz" ... )

而 Wildfly 能够自行溶解它们。

感谢大家的帮助。