Response message problem
doug.palmer Aug 26, 2006 12:51 PMHi all
I have a pojo webservice implementation with one java method - invoke. I map a wsdl operation with a different name onto this method using a jaxrpc mapping file. I can invoke the operation but it returns an InvokeResponse message instead of MappedOperationResponse message. How can I set the name of the response message?
My current jaxrpc mapping file is:
<java-wsdl-mapping version='1.1' xmlns='http://java.sun.com/xml/ns/j2ee' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_jaxrpc_mapping_1_1.xsd'> <service-endpoint-interface-mapping> <service-endpoint-method-mapping> <java-method-name>invoke</java-method-name> <wsdl-operation>mappedOperation</wsdl-operation> <wsdl-return-value-mapping> <method-return-value>org.w3c.dom.Element</method-return-value> <wsdl-message xmlns:msgNS='http://decs2/jaws'>msgNS:OUTPUT</wsdl-message> <wsdl-message-part-name>result</wsdl-message-part-name> </wsdl-return-value-mapping> </service-endpoint-method-mapping> </service-endpoint-interface-mapping> </java-wsdl-mapping>
and the associated wsdl is:
<definitions name='ProcessInitiatorService' targetNamespace='http://decs2/jaws' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://decs2/jaws' xmlns:xsd='http://www.w3.org/2001/XMLSchema'> <message name='INPUT'> <part name='parameters' type='xsd:anyType'/> </message> <message name='OUTPUT'> <part name='result' type='xsd:anyType'/> </message> <portType name='ProcessInitiator'> <operation name='mappedOperation'> <input message='tns:INPUT'/> <output message='tns:OUTPUT'/> </operation> </portType> <binding name='ProcessInitiatorBinding' type='tns:ProcessInitiator'> <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/> <operation name='mappedOperation'> <soap:operation soapAction=''/> <input> <soap:body use='literal'/> </input> <output> <soap:body use='literal'/> </output> </operation> </binding> <service name='ProcessInitiatorService'> <port binding='tns:ProcessInitiatorBinding' name='ProcessInitiatorPort'> <soap:address location='REPLACE_WITH_ACTUAL_URL'/> </port> </service> </definitions>
Regards
Doug