Deepal, Per the wrapped convention, if you have the following interface:
public String foo(); java2wsdl should generate an input element called "foo": <w:message name="fooRequest"> <w:part name="parameters" element="t:foo"/> </w:message> And "foo" must be defined as: <s:element name="foo"> </s:complexType> </s:element> See the JAX-WS spec for the specific requirements of the wrapped convention, or my blog for a quick overview: http://atmanes.blogspot.com/2005/03/wrapped-documentliteral-convention.html Anne On 9/13/07, Deepal Jayasinghe <[EMAIL PROTECTED]> wrote: > > > Simon Laws wrote: > > Hi Deepal > > > > Some more comments/questions below. > > > > Thanks > > > > Simon > > > > On 9/13/07, *Deepal jayasinghe* <[EMAIL PROTECTED] > > <mailto:[EMAIL PROTECTED]>> wrote: > > > > > > > I'm not quite sure whether this in answering the question about > > > public String foo(); > > This does not take any method parameters , so user can send SOAP > > message > > with empty body . > > > > > > But in this case Axis at the server has to pull the operation name > > from the SOAPAction header. > yes . And Axis2 generate SOAP action for that , so it can find the > operation from the generated SOAP action (if user sends that) > > > > So when generating the Schema we do not need to > > generate Schema element for the input. > > > > > > So in this case axis is happy that the operation name arrives at the > > server in the SOAPAction header rather than in the first child element > > of the <body>? > It won't try to look for the body first child , so there wont be big > difference whether you send that or not. But sometime if you send the > body first child without sending SOAP action, that Axis2 will use its > local name to dispatch the operation. > > > > To put it another way. If you have parameters on you operationjava2WSL > > generates wrapped style WSDL. However it doesn't generate wrapped > > style WSDL if you don't have parameters on your operation (I'm using > > the definition of wrapped WSDL from JAX-WS in this case). > Hmm , well need WSDL advice here , but as I know the WSDL we are > generating is correct according to the WSDL validators I have used. > > > > Sounds strange to me but I'm just trying to get confirmation that this > > behaviour is by design. There may be a good reason that I'm just not > > thinking of. > > > > But we are generating message > > element for both input and output. So we are generating in-out mep for > > the above operation. > > > > > > or the other question about > > > public void foo(String param); > > In this case we have method which take method parameter , so in this > > case we generate two schema elements one for input and one for output. > > And we generate two message elements as well. So in effect we generate > > in-out mep. > > > > > > When I runjava2WSDL on an interface with the method signature > > > > public void foo(String param); > > > > I see > > > > a single message > > a single input part in this message > > a single XSD element > That is correct , since you have in only operation. > > > > (see the WSDL I posted earlier in this thread) > > > > So it seems axis is generating an in only mep. How do I tell it to > > produce what you are saying here, i.e. an in-out mep > > > > > > > > I think it's answering the former. If I have understood this > > correctly, > > > then I'm not clear about what is the intention of Axis2 for the > > latter. > > > This case does seem to generate an in-only MEP at the moment. > > If the method is in only you need to have method with void as it > > return > > type. > > > > public void update(String id){ > > } > > > > > > Are you saying here that any message with a void return type is > > assumed to be in-only? Or am I reading too much into this. To put it > > another way how do I tell java2WSDL to choose between the generation > > of in-only or in-out meps in this case. > There is no way , it pick the MEP looking at the java method , if it is > void then it assume that as in-only , if the method is void and has a > exception then it will generate robust-in else it will generate in-out. > > Thanks > Deepal > > > --------------------------------------------------------------------- > 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]