Hi,

> Axis uses the operation name to reference the WSDL description
> and find the
> input, output, and fault message definition.

I thought once the client is generated, axis doesn't use WSDL for the
invokation. This client is yet a static DII client. There must be an other
reason. Perhaps JAX-RPC impose this behaviour, but I didn't find any clue in
the spec. And the class Call has lots of additions to the spec anyway.

The client generates an RPCElement with PRCParam childs. The operationname
and namespace are used for the RPCElement. If its not an RPC or WRAPPED
style only the contents of the RPCElement is serialized. The content of the
RPCElement is a RPCParam element with a reference to the bean used as
parameter.

The Axis client uses a structure like this:

RPCElement ( name = "doesnt-matter" )
  RPCParam ( name = "dvd" )
     MyBean
         title
         year
         ...

and generates using doc/lit the following body:

<soapenv:Body>
  <dvd xsi:type="ns1:dvd" xmlns="http://style.demo.de";
xmlns:ns1="http://style.demo.de";>
   <price>19.95</price>
   <title>Magnolia</title>
   <year>2000</year>
  </dvd>
 </soapenv:Body>

So the operationname is ignored, but I have to specify it to avoid an
exception. Knows anybody a reason why the opername has to spezified or a way
to call a doc/lit service without operationname?

Thomas


> >I'am wondering why I have to specify an operation name in a no-wrapped
> >document/literal client. If a operationname is specified it
> isn't used. If
> >no operation name is specified, the exception below is thrown?
> >
> >
> >Thomas
> >
> >
> >Client:
> >
> >call.setOperationStyle( Style.DOCUMENT);
> >call.setOperationUse( Use.LITERAL);
> >
> >call.setOperationName("doesnt-matter");
> >
> >call.registerTypeMapping( DVD.class, new QName( ns, "dvd"),
> >BeanSerializerFactory.class, BeanDeserializerFactory.class);
> >call.addParameter( new QName( ns, "dvd"), Constants.XSD_ANY, DVD.class,
> >ParameterMode.IN);
> >
> >call.setReturnType( new QName( xs_ns, "string"));
> >
> >
> >
> >Exception:
> >
> >No operation name specified!
> >         at org.apache.axis.client.Call.invoke(Call.java:1689)
> >         at
> >de.javamagazin.style.DVDClientDocumentLiteral.main(DVDClientDocum
> entLiteral.
> >java:44)
> >
> >
> >
> >
> >
> >
> >Orientation in Objects GmbH
> >http://www.oio.de
>
>
BEGIN:VCARD
VERSION:2.1
N:Bayer;Thomas;;Herr
FN:Thomas Bayer
TITLE:Gesch�ftsf�hrer
TEL;WORK;VOICE:(0621) 71839-35
ADR;WORK:;;Weinheimer Str. 68;Mannheim;BW;68309;Deutschland
LABEL;WORK;ENCODING=QUOTED-PRINTABLE:Weinheimer Str. 68=0D=0AMannheim, BW 68309=0D=0ADeutschland
URL:
URL:http://www.oio.de
EMAIL;PREF;INTERNET:[EMAIL PROTECTED]
REV:20010810T095047Z
END:VCARD

Reply via email to