Hi Ian, you are right, the generated deploy.wsdd sets the RPC-handler for message-processing of this service.
"... <service name="ShoppingCart" provider="java:RPC" style="document" use="literal"> ..." For Apollo, I will use empty complexTypes for parameterless operations, as suggested. Michael > -----Urspr�ngliche Nachricht----- > Von: Ian Springer [mailto:[EMAIL PROTECTED] > Gesendet: Donnerstag, 17. Februar 2005 16:41 > An: [EMAIL PROTECTED] > Betreff: Re: AW: AW: Questions relating to Service-Generation and wsdl- > interpretation > > Michael Marks wrote: > > >But I've got it working with axis. The axis-wsdl2java processes the > >wsdl-definition without problems and I got a Method-Signature with > >zero-paremeters. I defined: > > > ><types> > >... > > <xs:element name="zero_Boolean" type="xs:boolean"/> > >... > ></types> > > > ><message name="ZeroParamsRequest"/> > > > ><message name="ZeroParamsResponse"> > > <part name="proccessed" element="tns:zero_Boolean"/> > ></message> > > > ><portType name=".." ...> > >... > > <operation name="ZeroParams"> > > <input message="tns:ZeroParamsRequest"/> > > <output message="tns:ZeroParamsResponse"/> > > </operation> > > > >... > ></portType> > > > ><binding ...> > > > > <operation name="ZeroParams"> > > <soap:operation style="document"/> > > <input> > > <soap:body use="literal"/> > > </input> > > <output> > > <soap:body use="literal"/> > > </output> > > </operation> > > > ></binding> > > > >I got: > > > >In the interface: > >================ > > public boolean zeroParams() throws java.rmi.RemoteException; > > > > > >In the implementation-body: > >========================== > > public boolean zeroParams() throws java.rmi.RemoteException { > > return false; > > } > > > > > >The messages are: > > > >Request: > >======== > >POST /axis/services/ShoppingCart HTTP/1.0 > >Content-Type: text/xml; charset=utf-8 > >Accept: application/soap+xml, application/dime, multipart/related, > >text/* > >User-Agent: Axis/1.2RC2 > >Host: 127.0.0.1:8079 > >Cache-Control: no-cache > >Pragma: no-cache > >SOAPAction: "" > >Content-Length: 245 > > > ><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> > ><ZeroParams xmlns=""/> > ></soapenv:Body> > ></soapenv:Envelope> > > > > > >Response: > >========= > >HTTP/1.1 200 OK > >Content-Type: text/xml;charset=utf-8 > >Date: Wed, 16 Feb 2005 23:02:17 GMT > >Server: Apache-Coyote/1.1 > >Connection: close > > > > > ><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> > ><zero_Boolean xmlns="http://bookstore.com/shoppingCart"> > >false > ></zero_Boolean> > ></soapenv:Body> > ></soapenv:Envelope> > > > > > > > >I don't know, how the message is dispatched, neverless it seems to work. > >But I don't have tried to define two empty messages per service until > >yet. For me it looks like that axis allows empty message bodies and can > >handle them. Any ideas about that? Does it matter to WSRF? > > > > > > > Hi Michael, > > It looks like Axis is generating for your WSDL as if the operation style > is "rpc", even though it is "document". That is, for rpc, the name > attribute of the operation (e.g. "ZeroParams") becomes the top-level > soap body element . For document style, the input part element (if there > is one :) should become the soap body element. > > So, according to the WSDL, the request body should look like: > > <soapenv:Body> > </soapenv:Body> > > not: > > <soapenv:Body> > <ZeroParams xmlns="" /> > </soapenv:Body> > > So Axis generated a la RPC style and is dispatching in that style too. Is > the Axis service configured to use Axis' RPCHandler? > > For Apollo, I think it makes the most sense for us to require doc-lit > with exactly one input part. For parameterless operations, you can use > empty complexTypes, as Sam suggested. > > Ian > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
