首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >webapp中嵌入的用于Axis2的简单axis2.xml

webapp中嵌入的用于Axis2的简单axis2.xml
EN

Stack Overflow用户
提问于 2013-05-22 21:19:57
回答 2查看 4.1K关注 0票数 0

我正在开发一个网络应用程序与嵌入式网络服务与Axis2使用Maven。服务实现是一个具有RPC式交互的POJO,目标应用程序服务器是运行Axis2 servlet的Tomcat。

"Hello world“可以工作,但是现在我需要在axis2.xml文件(放在WEB-INF/conf下)中配置一些全局axis2设置。

对于这个通用环境,请提供或指向axis2.xml的简单配置。从二进制发行版获取的默认值激活了太多的特性(hotdeploy?)也会导致这个问题:

代码语言:javascript
复制
<soapenv:Reason>
    <soapenv:Text xml:lang="en-US">
        The ServiceClass object does not implement the required method 
        in the following form: OMElement ping(OMElement e)
    </soapenv:Text>
</soapenv:Reason>

作为参考:http://axis.apache.org/axis2/java/core/docs/servlet-transport.html说以这种方式配置servlet传输,但它没有解决这个问题。

代码语言:javascript
复制
<transportReceiver name="http" class="org.apache.axis2.transport.http.AxisServletListener"/>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-22 22:42:19

显然,问题在于默认的axis2.xml设置原始的xml,而不是messageReceivers。

尝试将它添加到开发的服务的services.xml中,应该可以解决这个问题。

代码语言:javascript
复制
<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>
票数 3
EN

Stack Overflow用户

发布于 2016-02-04 01:21:02

“对我有效的解决方案是在service.xml中针对Java Service方法名添加操作标记:

代码语言:javascript
复制
 <operation name="sayHello" >
        <messageReceiver  mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
    </operation>        
<parameter name="ServiceClass" locked="false">com.learning.webservices.pojo.HelloService</parameter>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16692896

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档