gpt4 book ai didi

java - Axis2生成的WSDL文件参数名称与实际名称不同

转载 作者:行者123 更新时间:2023-12-02 05:00:46 24 4
gpt4 key购买 nike

我使用命令行创建了简单的 axis 2 Web 服务。

代码

public class HelloAxis{
public String sayHello(String name){
return "Hello " + name;
}
}

services.xml

<service name="HelloAxis"><description> Hello Axis2 web service </description>
<messageReceivers>
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</messageReceivers>
<parameter name="ServiceClass">HelloAxis</parameter>
</service>

我使用 jar -cvf HelloAxis.aar * 创建了 aar 文件

然后将其部署在Axis2服务器中。

当我通过浏览器查看wsdl时,参数名称为args0

<xs:element name="sayHello">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="args0" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>

这是为什么呢?应该使用名称作为名称

但是当我使用 eclipse 插件生成 aar 文件时,它使用正确的名称。

最佳答案

要重命名服务的参数,请在服务的每个输入变量前面使用 @WebParam(name="")。

因此只需替换您的方法签名

(字符串名称)

与:

(@WebParam(name = "name") 字符串名称)

关于java - Axis2生成的WSDL文件参数名称与实际名称不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28301504/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com