How to use a SOAP RPC Literal

Hello,

I would like to learn how to use “SOAP RPC Literal” with webMethods.
I get a wsdl file which specifies the use of RPC Literal.
But when I create a new webServiceConnector and I use it, the RPC datas which are exchanged are not “RPC Literal” but “RPC Encoded”. I believe webMethods uses “RPC Encoded” by default. Can I specify to webMethods to use “RPC Literal” encoding style?
Could you give me some indications or advice.

I don’t believe IS 6.x supports RPC/Literal encoding. I did confirm that IS 7.1 (now in FCS release) does support this SOAP messaging style.

Mark

Can I convert a RPC/Encoded WSDL file into a RPC/Literal WSDL? RPC/Encoded does not be supported by JAX-WS.

Can you provide a bit more information about what you are attempting to accomplish? What role does IS play in your web services scenario? Publisher or consumer?

If IS 7.1 is publishing a web service just configure the publisher web services descriptor node to use RPC/Literal.

Mark

In this case, my IS worked as a publisher. I published a IS service as a web service in IS6.15 using default RPC/Encoded WSDL binding style/use model. But, SOAP-RPC/Encoded model is not WS-I compliant, and not be supported by wsimport within NetBeans. It got an error “[ERROR] rpc/encoded wsdls are not supported in JAXWS 2.0.” when I try to create a web service client in NetBeans to consume this web service.

Allen,

IS 6.5 does not support RPC/Literal although you could create a custom soap processor to get the job done. See discussions in this forum on creating document/literal soap processors. The principles will be similar and it might be easier to go with doc/lit (widely supported) than to figure out how to get IS 6.5 to grok rpc/literal.

Mark

Thanks MC,I have manually converted the WSDL from rpc/enc to rpc/lit, and finally load the rpc/lit WSDL into NetBeans using JAX-WS wsimport utility to generate the java code.

Allen,

I would be surprised if the generated java client would create the correct message. If the endpoint URL remains http://is_host:port/soap/rpc, the default rpc soap processor would not understand an rpc/literal (or document/literal) message.

Mark

Hi Mark,
Good point, I have the same concern.
But, I did a test for a simple web service “Add2Numbers” right now, and the outcome was just fortunately right.
What I did for the rpc/enc–>rpc/lit convertion was deleting the “encoding” bits and changing the “encoded” into “literal”.
Regards,
Allen