RE: SOAP over JMS

Hello Phil,

 

Thank you very much for prompt response.  Those are the points that I am
looking for. Appreciate your time in clarifying my questions.  For
further understanding, would you mind helping with following questions ?

 

1.       Can you please provide jms action snippet equivalent for
below(http coincidence is little confusing me):

 

<operation name="GetLastTradePrice">

         <wsdl11soap11:operation
soapAction="http://example.com/GetLastTradePrice"/>

         <input>

             <wsdl11soap11:body use="literal"/>

         </input>

         <output>

             <wsdl11soap11:body use="literal"/>

          </output>

       </operation>

                

2.       Can I have port name &  targetservice with same name as below ?

<wsdl11:port name="stockquote" binding="tns:StockQuoteSoapJMSBinding">
           <wsdl11soap11:address
location="jms:jndi:myQueue?targetService=stockquote"/>
</wsdl11:port>



 

Rgds,

Sanjeev

From: Phil Adams [mailto:phil_adams@us.ibm.com] 
Sent: Monday, November 24, 2008 9:42 PM
To: Dokiburra, Sanjeev
Cc: public-soap-jms@w3.org; public-soap-jms-request@w3.org
Subject: RE: SOAP over JMS

 


Sanjeev, 
The fact that the soap action value "looks" like an HTTP url is just a
coincidence.  It doesn't  mean that it is related to the HTTP transport
per se.    The soap action value is simply an identifier for the
intended action (e.g. operation). 
As for your second question, I assume you're referring to this from
section 3.4.1 of the binding spec: 
40       <wsdl11:port name="StockQuotePort_jms"
binding="tns:StockQuoteSoapJMSBinding">
41           <wsdl11soap11:address
location="jms:jndi:myQueue?targetService=stockquote"/>
42       </wsdl11:port>

In this example, the targetService property indicates the name of the
port component which is the target of the request. 



 



From: 

<Sanjeev_Dokiburra@ibi.com> 

To: 

Phil Adams/Austin/IBM@IBMUS 

Cc: 

<public-soap-jms@w3.org>, <public-soap-jms-request@w3.org> 

Date: 

11/24/2008 04:34 PM 

Subject: 

RE: SOAP over JMS

 

________________________________




Phil, 
  
I would be glad if someone from the group could answer below questions. 
  
1)      I am wondering about   the presence of http in SOAP Action
attribute.  For JMS transport,  do we need to have  http action ? 
25         <wsdl11soap11:operation soapAction="
http://example.com/GetLastTradePrice
<http://example.com/GetLastTradePrice> "/> 
  
2)      What does last parameter (after ?) in address location stands
for ? 
  
  
Thanks & Rgds, 
Sanjeev 
From: Phil Adams [mailto:phil_adams@us.ibm.com
<mailto:phil_adams@us.ibm.com> ] 
Sent: Wednesday, November 19, 2008 10:47 AM
To: Dokiburra, Sanjeev
Cc: public-soap-jms@w3.org; public-soap-jms-request@w3.org
Subject: RE: SOAP over JMS 
  

Hi Sanjeev, 
Well, I certainly wouldn't want to be in a position to have to implement
all the SOAP processing from scratch.   Have you looked into the use of
one of the open source engines, such as Axis2, etc.?    In fact, I think
Axis2 already has some sort of SOAP/JMS implementation, although I don't
know if it supports the SOAP/JMS binding spec just yet. 



From: 

<Sanjeev_Dokiburra@ibi.com> 

To: 

Phil Adams/Austin/IBM@IBMUS 

Cc: 

<public-soap-jms@w3.org>, <public-soap-jms-request@w3.org> 

Date: 

11/19/2008 09:32 AM 

Subject: 

RE: SOAP over JMS


  

 

________________________________





Hi Phil, 
 
Thank you very much for the response.  It was my mistake that I did not
put up my question in right way.   In fact my component should do both
functions i.e SOAP sending node & SOAP receiving node.  At this moment I
am stuck with SOAP sending node implementation of constructing SOAP
request message based on any given WSDL.  It would be really helpful if
you can post a sample pseudo code(with respect to any existing soap/jms
WSDL, to connect & test as well) for SOAP sending node implementation.
Appreciate your time. 
 
Rgds, 
Sanjeev 
From: Phil Adams [mailto:phil_adams@us.ibm.com
<mailto:phil_adams@us.ibm.com> ] 
Sent: Wednesday, November 19, 2008 10:16 AM
To: Dokiburra, Sanjeev
Cc: public-soap-jms@w3.org; public-soap-jms-request@w3.org
Subject: Re: SOAP over JMS 
 

Hi Sanjeev, 
It sounds like you are implementing (more or less) the "SOAP receiving
node" as described in the SOAP/JMS binding spec.   Note that the WSDL
binding section of the spec really doesn't apply to the SOAP receiving
node, since the WSDL is used by the client runtime (SOAP sending node)
to construct the request message.    So you basically just need to
receive the JMS message off the queue or topic, then use the JMS message
properties (e.g. SOAPJMS_contentType) along with the body of the message
(the format of the body will be described by the SOAPJMS_contentType
property value) to de-serialize the request.   Then you would process
the request and construct a response message and send it back in a JMS
message according to the rules laid out by the SOAP/JMS binding spec.
The hardest part (IMO) is the message de-serialization step, although
the code used to do that would basically be the same that's used to
de-serialize a message received via HTTP so if your component already
supports HTTP, then you are mostly done :) 

Regards, 



From: 

<Sanjeev_Dokiburra@ibi.com> 

To: 

<public-soap-jms@w3.org> 

Date: 

11/19/2008 02:43 AM 

Subject: 

SOAP over JMS


  


  

________________________________






Team, 

I am developing a standalone component, which would pick soap/jms
message from a destination, processes it (webservice call) and then
returns the response to reply destination.  Could you please give me
pointers about java implementation by looking at WSDL.  Wondering
whether it would be normal http webservice rpc/document invocation using
soapaction mentioned in line-25, after picking up request message.  Any
help is appreciated. 

<wsdl11:binding name="StockQuoteSoapJMSBinding"
type="tns:StockQuotePortType" 
            xmlns:soapjms="http://www.w3.org/2008/07/soap/bindings/JMS/
<http://www.w3.org/2008/07/soap/bindings/JMS/> "> 
15       <wsdl11soap11:binding style="document" 
            transport="http://www.w3.org/2008/07/soap/bindings/JMS/
<http://www.w3.org/2008/07/soap/bindings/JMS/> "/> 
16 
17       <!-- We want this binding to use a particular CF class --> 
18       <soapjms:jndiConnectionFactoryName> 
19         sample.jms.ConnectionFactory 
20       </soapjms:jndiConnectionFactoryName> 
21       <!-- Specify PERSISTENT delivery mode --> 
22       <soapjms:deliveryMode>PERSISTENT</soapjms:deliveryMode> 
23 
24       <wsdl11:operation name="GetLastTradePrice"> 
25         <wsdl11soap11:operation soapAction="
http://example.com/GetLastTradePrice
<http://example.com/GetLastTradePrice> "/> 
26         <wsdl11:input> 
27             <wsdl11soap11:body use="literal"/> 
28         </wsdl11:input> 
29         <wsdl11:output> 
30             <wsdl11soap11:body use="literal"/> 
31          </wsdl11:output> 
32       </wsdl11:operation> 
33   </wsdl11:binding> 


Thanks & Rgds, 
Sanjeev 

Received on Tuesday, 25 November 2008 17:06:23 UTC