You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Ovidiu Predescu <ov...@cup.hp.com> on 2001/11/14 06:31:14 UTC
Re: SOAP taglib and SOAP RPC
On Tue, 13 Nov 2001 19:01:15 -0800, "Greg Weinger" <gw...@itmedicine.net> wrote:
> >From the documentation on hp's site it appears that the soap taglib can
> support SOAP RPC as well as document exchange, but only provides an
> example of document exchange
> (http://www.e-speak.hp.com/faq/faqs_howto.shtm#10).
The SOAP logicsheet doesn't care whether the body of the message is a
normal XML fragment part of a document exchange or a SOAP RPC
fragment. It simply passes along to the server the fragment embedded
inside the soap:call element.
In fact the sample you refer to uses on the server side a SOAP RPC
service to process the request.
> Does the SOAP taglib in HEAD also support RPC? If so, could someone
> please provide example XSP code?
As I mentioned above, the SOAP logicsheet makes no distinction between
document exchange and SOAP RPC. This is possible because the SOAP
logicsheet doesn't use any SOAP Java client library to do the work,
it's based purely on Cocoon components.
For examples check out the code from Cocoon's CVS and take a look at
the XScript/SOAP samples that appear on the main page. In the source
tree they are located in webapp/doc/samples/xscript/.
Note that the API of the XML elements has changed compared to HPWS'
xstream elements, it now uses the XScript concept. This allows for
arbitrary Java objects, whether they can or they cannot be represented
as XML, to be manipulated in XSP pages. Examples of such objects
include SQL result sets, objects obtained from the POST request
etc. Please consider what is in Cocoon's CVS as the latest bits,
current HPWS development versions use the same source code base.
Regards,
--
Ovidiu Predescu <ov...@cup.hp.com>
http://orion.nsr.hp.com/ (inside HP's firewall only)
http://sourceforge.net/users/ovidiu/ (my SourceForge page)
http://www.geocities.com/SiliconValley/Monitor/7464/ (GNU, Emacs, other stuff)
---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org
RE: SOAP taglib and SOAP RPC
Posted by Greg Weinger <gw...@itmedicine.net>.
Thanks Ovidiu. The samples were helpful.
Now I'm getting the following error:
<faultcode>SOAP-ENV:Client</faultcode>
<faultstring>parsing error: org.xml.sax.SAXParseException: The XML
declaration may only appear at the very beginning of the
document.</faultstring>
Can you suppress the xml declaration, or does the exception belie
something else? This is the envelope sent, via the debug log:
DEBUG (2001-11-14) 11:53.04:892 [cocoon ]
(/cocoon/gateway/soap.xsp) tcpConnection-8080-0/soap_xsp: XScriptObject
for soap:call is
<?xml version="1.0"?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<racf:getAuthMsg
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:racf="urn:racf">
<uid xsi:type="xsd:string"
xmlns:xsd="http://www.w3.org/1999/XMLSchema"
xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance">USER</uid>
<passw xsi:type="xsd:string"
xmlns:xsd="http://www.w3.org/1999/XMLSchema"
xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance">pass</passw>
</racf:getAuthMsg>
</SOAP-ENV:Body></SOAP-ENV:Envelope>
And here is the code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsp:page
language="java"
xmlns:xsp="http://apache.org/xsp"
xmlns:gw="http://localhost/gateway"
xmlns:soap="http://apache.org/xsp/soap/3.0"
xmlns:xscript="http://apache.org/xsp/xscript/1.0"
>
<gw:logon>
<soap:call url="http://localhost:80/racf/servlet/rpcrouter">
<racf:getAuthMsg xmlns:racf="urn:racf">
<soap:enc/>
<uid xsi:type="xsd:string"
xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/1999/XMLSchema">LMGSW</uid>
<passw xsi:type="xsd:string"
xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/1999/XMLSchema">prost8te</passw>
</racf:getAuthMsg>
</soap:call>
</gw:logon>
</xsp:page>
> -----Original Message-----
> From: ovidiu@cup.hp.com [mailto:ovidiu@cup.hp.com]
> Sent: Tuesday, November 13, 2001 9:31 PM
> To: Greg Weinger
> Cc: cocoon-dev@xml.apache.org
> Subject: Re: SOAP taglib and SOAP RPC
>
> On Tue, 13 Nov 2001 19:01:15 -0800, "Greg Weinger"
> <gw...@itmedicine.net> wrote:
>
> > >From the documentation on hp's site it appears that the soap taglib
can
> > support SOAP RPC as well as document exchange, but only provides an
> > example of document exchange
> > (http://www.e-speak.hp.com/faq/faqs_howto.shtm#10).
>
> The SOAP logicsheet doesn't care whether the body of the message is a
> normal XML fragment part of a document exchange or a SOAP RPC
> fragment. It simply passes along to the server the fragment embedded
> inside the soap:call element.
>
> In fact the sample you refer to uses on the server side a SOAP RPC
> service to process the request.
>
> > Does the SOAP taglib in HEAD also support RPC? If so, could someone
> > please provide example XSP code?
>
> As I mentioned above, the SOAP logicsheet makes no distinction between
> document exchange and SOAP RPC. This is possible because the SOAP
> logicsheet doesn't use any SOAP Java client library to do the work,
> it's based purely on Cocoon components.
>
> For examples check out the code from Cocoon's CVS and take a look at
> the XScript/SOAP samples that appear on the main page. In the source
> tree they are located in webapp/doc/samples/xscript/.
>
> Note that the API of the XML elements has changed compared to HPWS'
> xstream elements, it now uses the XScript concept. This allows for
> arbitrary Java objects, whether they can or they cannot be represented
> as XML, to be manipulated in XSP pages. Examples of such objects
> include SQL result sets, objects obtained from the POST request
> etc. Please consider what is in Cocoon's CVS as the latest bits,
> current HPWS development versions use the same source code base.
>
> Regards,
> --
> Ovidiu Predescu <ov...@cup.hp.com>
> http://orion.nsr.hp.com/ (inside HP's firewall only)
> http://sourceforge.net/users/ovidiu/ (my SourceForge page)
> http://www.geocities.com/SiliconValley/Monitor/7464/ (GNU, Emacs,
other
> stuff)
---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org