The ServiceClass object does not implement the required method in the following form: login OMElement (OMElement e)

After I updated axis 2 from 1.6.2 to 1.7.0, I get the following exception:

"The ServiceClass object does not implement the required method as follows: OMElement"

most of the answers I found suggest installing rpc message receivers in services.xml, which I already had from the previous version:

<service name="LogService" scope="transportsession">
<description>
    Log
</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">
    com.viaMEDICI.viaWS.services.LogService
</parameter>

Any other ideas what could go wrong? List and wsdl services look great.

LE:

something else - the namespace used to be "axis2ns2", now it's "nsoMZdG". I don’t know where this could have come from .. and also I don’t get all the parameters, calling ws restful and only the first ...

+3
3

Apache Axis2 1.7.0, URI http://www.w3.org/2004/08/wsdl/XXX MEP . http://www.w3.org/ns/wsdl/XXX.

+4

, http://www.w3.org/2004/08/wsdl/in-only http://www.w3.org/ns/wsdl/in-only http://www.w3.org/2004/08/wsdl/in-out http://www.w3.org/ns/wsdl/in-out

services.xml

<service name="Axis2HelloWorld" >
    <Description>
        Please Type your service description here
    </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" locked="false">com.ciber.webservices.Axis2HelloWorld</parameter>
</service>

New

<service name="Axis2HelloWorld" >
    <Description>
        Please Type your service description here
    </Description>
    <messageReceivers>
        <messageReceiver mep="http://www.w3.org/ns/wsdl/in-only" class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
        <messageReceiver  mep="http://www.w3.org/ns/wsdl/in-out"  class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
    </messageReceivers>
    <parameter name="ServiceClass" locked="false">com.ciber.webservices.Axis2HelloWorld</parameter>
</service>
+1

update to axis2 1.7.1 , ... :

[2016-03-02 11:39:47] [ERROR] [org.apache.axis2.rpc.receivers.RPCMessageReceiver] - null 
java.lang.NullPointerException
at org.apache.axis2.databinding.utils.BeanUtil.addInstanceTypeAttribute(BeanUtil.java:1316)
at org.apache.axis2.databinding.utils.BeanUtil.getPropertyQnameList(BeanUtil.java:390)
at org.apache.axis2.databinding.utils.BeanUtil.getPullParser(BeanUtil.java:88)
at org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderImpl.processProperties(ADBXMLStreamReaderImpl.java:989)
at org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderImpl.next(ADBXMLStreamReaderImpl.java:829)
at org.apache.axis2.util.StreamWrapper.next(StreamWrapper.java:71)
0

Source: https://habr.com/ru/post/1017080/


All Articles