How about this use case: Make an Axis service that exposes various methods as document/literal, and have a .NET client (or other client) access it.
That seems like a significant one that I hope we're not brushing under the rug. Does Axis only support straight-XML document/literal or can it do some decoding? It appears that there are a lot of RPC-ish services out there exposed as document/literal style. In this case, what steps does a developer take to implement it? Starting with Cory's "addNumbers" method in Java, how do we generate a WSDL that will work? Because when I tried it, I ended up with the same problem he is describing. And I was using Axis to access itself, and it still didn't work. It appears that the "wrapped" style would help some of the problems of Axis not knowing what method to call, but people have been saying this is discouraged (by ws-i among others). True or not true? Can somebody post and example or a link to a page that shows what the SOAP message should look like and how to get this type of service working? -- Dan Kamins On Fri, 11 Jul 2003 09:46:19 -0700 (PDT), Davanum Srinivas wrote: >The use case for doc/lit starts with the premise that you have a >valid doc/lit WSDL from >somewhere. You then run WSDL2Java against it, add your impl and >deploy it. > >Here, you are trying to deploy an arbitrary java class as doc/lit. > >Thanks, >dims > >--- Cory Wilkerson <[EMAIL PROTECTED]>�wrote: >>Is doc/literal in Axis *really* this buggy? >> >>-----Original Message----- >>From: Davanum Srinivas [mailto:[EMAIL PROTECTED] >>Sent: Friday, July 11, 2003 11:30 AM >>To: [EMAIL PROTECTED] >>Subject: Re: another doc/literal issue -- more info >> >> >>Please open a bug report (http://ws.apache.org/axis/bugs.html) >> >>Thanks, >>dims >> >> >>--- Cory Wilkerson <[EMAIL PROTECTED]>�wrote: >>>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> >>> >>>
