K -- in the latest cvs build, it's line 181 of RPCProvider.java that seems to be choking -- a call to body.getMethodName() is returning "x" as the methodname whereas x should simply be a parameter and the method name should be "addNumbers". So, that said, given the following message generated by a .NET client (and one generated by an Axis client) -- is Axis acting appropriately when it assumes the method name is "x"? See the attached WSDL as well...
.NET -------------------------------- <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <soap:Body> <x xmlns="http://test.travelnow.com">5</x> <y xmlns="http://test.travelnow.com">2</y> </soap:Body> </soap:Envelope> Axis ----------------------------------- <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <x xsi:type="xsd:int" xmlns="http://test.xml.travelnow.com">5</x> <y xsi:type="xsd:int" xmlns="http://test.xml.travelnow.com">2</y> </soapenv:Body> </soapenv:Envelope> -----Original Message----- From: Cory Wilkerson Sent: Thursday, July 10, 2003 12:08 PM To: '[EMAIL PROTECTED]' Subject: another doc/literal issue Using 1.1 final, I've implemented a VERY rudimentary doc/literal service for the sake of testing doc/literal services. The following fails with a .NET client -- but, if I remove the style/use attributes -- the service executes without issue. This serivce does *not* throw a subclass of exception (which was an issue with an earlier doc/literal approach of mine) -- can anyone explain why this service isn't being invoked? --------------------------- service implementation --------------------------- package com.corywilkerson.test; public class SomeService { public int addNumbers(int x, int y) { return x + y; } } ------------------------- server-config.wsdd entry ------------------------- <service name="TestService" provider="java:RPC" style="document" use="literal"> <parameter name="allowedMethods" value="*"/> <parameter name="scope" value="request"/> <parameter name="className" value="com.travelnow.test.SomeService"/> </service> ------------------------- .NET client SOAPMessage via currentMessage/getSOAPPartAsString ------------------------- ******* DOC/LITERAL ******* <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <soap:Body> <x xmlns="http://test.travelnow.com">5</x> <y xmlns="http://test.travelnow.com">2</y> </soap:Body> </soap:Envelope> ******* ENCODED ******* <?xml version="1.0" encoding="UTF-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://dev.travelnow.com/services/TestService" xmlns:types="http://dev.travelnow.com/services/TestService/encodedTypes" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <q1:addNumbers xmlns:q1="http://test.travelnow.com"> <x xsi:type="xsd:int">5</x> <y xsi:type="xsd:int">2</y> </q1:addNumbers> </soap:Body> </soap:Envelope>
MathFunctions.wsdl
Description: MathFunctions.wsdl
