• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

RPC vs Document -Different Permutation analysis

 
Karthik Rajendiran
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello Friends,
Have got great doubt in WSDL2java conversions based on the experiment
http://www.intertwingly.net/stories/2002/08/17/wsdlRpcVsDocument.html
I tried two different experiment
DOC LITERAL WITH DIFFERENT MSGPARTS

<message name="getQuoteSoapIn">
<part name="symbol" type="tns:getQuote" />
</message>
<message name="getQuoteSoapOut">
<part name="return" type="tns:getQuoteResponse" />
</message>


case 2
<message name="getQuoteSoapIn">
<part name="symbol" element="tns:getQuote" />
</message>
<message name="getQuoteSoapOut">
<part name="return" element="tns:getQuoteResponse" />
</message>


stubs of case 1 and case 2 differs and remote interface.
document literal element="tns:getQuote" element="tns:getQuoteResponse"
TestSoapImpl: public BigDecimal getQuote(String symbol)
TestSoapStub: public BigDecimal getQuote(String symbol)

I tried like
document literal type="tns:getQuote" type="tns:getQuoteResponse"
TestSoapImpl: public BigDecimal getQuote(String symbol)
TestSoapStub: public BigDecimal getQuote(String symbol)

I changed the xsd similar to case 2

My question, how the return type and argument are decided for the remote interface when doing from wsdl2 java conversion.

If we use type or element attribute in message tag, will there be difference in soap payload structure.
Why the argument and return type for docliteral element is coming as primitive instead of the custom element type.
I feel the first case should come like
public org.stock.GetQuoteResponse getQuote(org.stock.GetQuote symbol) throws java.rmi.RemoteException;

Kindly clarify
 
Karthik Rajendiran
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
When i tried "TYPE" attribute i got interface like this
public java.math.BigDecimal getQuote(java.lang.String symbol) throws java.rmi.RemoteException;

when i tried "ELEMENT" attribute in message tag, i got
public org.stock.GetQuoteResponse getQuote(org.stock.GetQuote symbol) throws java.rmi.RemoteException;

This might deviate document style soap payload rite?
 
Karthik Rajendiran
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I found the thing with the wsdl2java.
I guess, the axis is automatically doing document wrapped style if the operation name is equal to the refereced element name
the parameters are taken from the referred element's child element
In the above case, the parameter are the child elements of getQuote

DOC STYLE
I tried now with different name
(getQuote1) for part element. I could get bean generated with name as getQuote1.
This is what the real document style (without the wrapped pattern)


Conclusion
1. If Element or type is given, for document literal ,the element or type is generated by wsdl2java and.
2. The element or type forms the immediate child tag for soap.body in document based webservices.

Am i making myself clear?

REFERENCE
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm.websphere.express.doc/info/exp/ae/rwbs_map.html
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic