I am not a heavy SOAP user, but as a programmer when my program is acting as
a client, I would perhaps like it to use SOAP in 3 different ways --

1. Make an SOAP RPC call from an XSP, preferrably with a syntax like:
        <soap:call dest="..." method="..." ...>
          <soap:call_args ...> ... </soap:call_args>
          <soap:call_returns ...> ... </soap:call_returns>
        </soap:call>

I should be able to use arbitrary objects as arguments and return values.
Also, I would expect information about encoding style, namespaces, transport
binding etc. to be taken from configuration files or supplied by the
logicsheet.

2. Send a SOAP message and receive a response ( synchronous send ),
preferrably
   with a syntax like:
        <soap:send_recv dest="..." ...>
          <soap:req_msg> ... </soap:req_msg> |
          <soap:res_msg> ... </soap:res_msg>
        </soap:send_recv>
   It may be possible to provide convenience tags to construct a SOAP
envelop, header fields and the body, but the programmer should have the
flexibility to build the packet in any other way possible well. Same goes
for response message ( though the convenience tags here would extract fields
from a response ).

3. Send a SOAP message asynchronously, preferrably with a syntax like:
        <soap:send dest="..." ...>
          <soap:msg> ... </soap:msg> |
        </soap:send>

Should this functionality be available as logicsheet or a transformer?
Probably both. Logicsheet will work fine as long as I am writing an XSP that
gets compiled during generation phase but what if I inject these tags as a
result of an XSLT transformation in the middle of the Cocoon processing
pipeline? ( should that be allowed at all ? )

Haven't thought about how should a server receive a SOAP message. A straight
forward answer would seem to be a SOAP generator, but may be there is a
better way with actions ( need to understand this !! ). How about hooking up
with a SOAP server for processing SOAP message in the generator the same way
as the JSP generator hooks up with Jasper for document generation !!

Pankaj.
> -----Original Message-----
> From: Michael Homeijer [mailto:[EMAIL PROTECTED]]
> Sent: Sunday, June 03, 2001 3:23 AM
> To: 'CARLTON,NADINE (HP-Cupertino,ex1) '
> Cc: ''[EMAIL PROTECTED]' '
> Subject: RE: SOAP client and server
> 
> 
> Hi,
> 
> The implementation I sent to the list was meant to get some 
> comment on how
> soap should be implemented in C2.
> 
> I think my prototype gives a basic understanding about what 
> should be done
> to implement a soap client and a soap server in C2. I think 
> you'r right that
> some design decisions have to be made.
> 
> One of them is what components have to be implemented, you 
> talk about a SAX
> state machine, Giacomo talks about Avalon components (or 
> could these be the
> same?). My understanding of C2 or Avalon doesn't go that far 
> that I can make
> such a decision.
> 
> The other is weather to use the C1 soap syntax from Uli. My 
> reason not to
> was that the syntax should be used for both the client and 
> the server and
> imho Uli's syntax was aimed at the client. Another reason is 
> that at the
> basis of SOAP, there are response and request envelopes that 
> you sent to a
> client or server, you can just copy those envelopes from 
> xmethods.com and
> implement, replace or call a soap service.
> 
> Michael Homeijer
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, email: [EMAIL PROTECTED]
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to