Message Receiver not found for AxisOperation --------------------------------------------
Key: AXIS2-2765 URL: https://issues.apache.org/jira/browse/AXIS2-2765 Project: Axis 2.0 (Axis2) Issue Type: Bug Affects Versions: 1.2 Environment: RAD 6.0, Axis 2 Version 1.2 Reporter: Satish Ghanekar I am trying to migrate my code from Axis 1.1.1 to Axis 1.2. So I wanted to perform some testing. I downloaded Axis1.2 WAR file and and also the eclpise plugins and installed them in RAD. I wrote the following POJO java class. /* * Created on Jun 4, 2007 * * TODO To change the template for this generated file go to * Window - Preferences - Java - Code Style - Code Templates */ package com.nationwide.marketlink.ws; /** * @author GHANEKS1 * * TODO To change the template for this generated type comment go to * Window - Preferences - Java - Code Style - Code Templates */ public class TestHandler { /** * @param param * @return */ public String method1(String param) { String ret = "Method 1 invoked with - " + param; System.out.println("Param = " + param); return ret; } /** * @param param * @return */ public String method2(String param) { String ret = "Method 2 invoked with - " + param; System.out.println("Param = " + param); return ret; } } Using the plugin Axis2 generated the following WSDL file <wsdl:definitions xmlns:agm="http://ws.marketlink.nationwide.com" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:xsd="http://ws.marketlink.nationwide.com/xsd" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://ws.marketlink.nationwide.com"> <wsdl:types> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://ws.marketlink.nationwide.com/xsd"> <xs:element name="method1"> <xs:complexType> <xs:sequence> <xs:element name="param" nillable="true" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="method1Response"> <xs:complexType> <xs:sequence> <xs:element name="return" nillable="true" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="method2"> <xs:complexType> <xs:sequence> <xs:element name="param" nillable="true" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="method2Response"> <xs:complexType> <xs:sequence> <xs:element name="return" nillable="true" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> </xs:schema> </wsdl:types> <wsdl:message name="method1Message"> <wsdl:part name="part1" element="xsd:method1" /> </wsdl:message> <wsdl:message name="method1ResponseMessage"> <wsdl:part name="part1" element="xsd:method1Response" /> </wsdl:message> <wsdl:message name="method2Message"> <wsdl:part name="part1" element="xsd:method2" /> </wsdl:message> <wsdl:message name="method2ResponseMessage"> <wsdl:part name="part1" element="xsd:method2Response" /> </wsdl:message> <wsdl:portType name="TestHandlerPortType"> <wsdl:operation name="method1"> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" wsaw:Action="urn:method1" message="agm:method1Message" /> <wsdl:output xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" message="agm:method1ResponseMessage" wsaw:Action="urn:method1" /> </wsdl:operation> <wsdl:operation name="method2"> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" wsaw:Action="urn:method2" message="agm:method2Message" /> <wsdl:output xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" message="agm:method2ResponseMessage" wsaw:Action="urn:method2" /> </wsdl:operation> </wsdl:portType> <wsdl:binding name="TestHandlerSOAP11Binding" type="agm:TestHandlerPortType"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /> <wsdl:operation name="method1"> <soap:operation soapAction="urn:method1" style="document" /> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="method2"> <soap:operation soapAction="urn:method2" style="document" /> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:binding name="TestHandlerSOAP12Binding" type="agm:TestHandlerPortType"> <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /> <wsdl:operation name="method1"> <soap12:operation soapAction="urn:method1" style="document" /> <wsdl:input> <soap12:body use="literal" /> </wsdl:input> <wsdl:output> <soap12:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="method2"> <soap12:operation soapAction="urn:method2" style="document" /> <wsdl:input> <soap12:body use="literal" /> </wsdl:input> <wsdl:output> <soap12:body use="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="TestHandler"> <wsdl:port name="TestHandlerSOAP11port" binding="agm:TestHandlerSOAP11Binding"> <soap:address location="http://localhost:8080/axis2/services/TestHandler" /> </wsdl:port> <wsdl:port name="TestHandlerSOAP12port" binding="agm:TestHandlerSOAP12Binding"> <soap12:address location="http://localhost:8080/axis2/services/TestHandler" /> </wsdl:port> </wsdl:service> </wsdl:definitions> Axis2 generated the following services.xml file: <!-- This file was auto-generated from WSDL --> <!-- by the Apache Axis2 version: #axisVersion# #today# --> <serviceGroup> <service name="TestHandler"> <messageReceivers> <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out" class="com.nationwide.marketlink.ws.generated.TestHandlerMessageReceiverInOut" /> </messageReceivers> <parameter locked="false" name="ServiceClass"> com.nationwide.marketlink.ws.generated.TestHandlerSkeleton </parameter> <parameter locked="false" name="useOriginalwsdl"> true </parameter> <parameter locked="false" name="modifyUserWSDLPortAddress"> true </parameter> <operation name="method1" mep="http://www.w3.org/ns/wsdl/in-out"> <actionMapping>urn:method1</actionMapping> <outputActionMapping>urn:method1</outputActionMapping> </operation> <operation name="method2" mep="http://www.w3.org/ns/wsdl/in-out"> <actionMapping>urn:method2</actionMapping> <outputActionMapping>urn:method2</outputActionMapping> </operation> </service> </serviceGroup> I created the AAR file and copied it under the services folder in the Axis2 WAR project. I generated the client code using the plugin. But Now when I invoke the service I get the following Error: org.apache.axis2.AxisFault: Message Receiver not found for AxisOperation: method2 at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:434) at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:373) at org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:294) at com.nationwide.marketlink.ws.testhandler.client.TestHandlerTestHandlerSOAP11PortStub.method2(TestHandlerTestHandlerSOAP11PortStub.java:357) at com.nationwide.marketlink.ws.testhandler.client.TestHandlerTest.executeService(TestHandlerTest.java:51) at com.nationwide.marketlink.ws.testhandler.client.TestHandlerTest.main(TestHandlerTest.java:28) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]