camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christian Schneider <>
Subject Re: Using the SOAP DataFormat with JMS queues
Date Fri, 10 Sep 2010 08:30:13 GMT
  Hi Glen,

I think we can leave the wiki page this way. But honestly I do not 
understand why it makes a difference if someone is listening. The idea 
behind messaging is that you decouple the Client and the Server.  So I 
think there is no difference between sending a message and making a 
call. What exactly would jax ws do different? If you use an http 
endpoint instead of a jms endpoint the route will behave exactly like a 
jax ws implementation in one way mode.

The SOAP dataformat of course only creates messages but together with a 
transport endpoint like jms or http it can really be considered a 
(partial) jax ws implementation. I think it is even a very good idea to 
strongly decouple the message generation from the transport.

Best Regards


Am 10.09.2010 01:51, schrieb Glen Mazza:
> I reworded it--see if you find it acceptable.  We may need to 
> compromise with you giving your interpretation in German and me giving 
> mine in English.  :)
> As for "you could also say that sending a message that contains soap 
> content is a one way soap call even if no one listens for it", no, I 
> wouldn't say you could say that.  Placing an XML message on a queue is 
> not a SOAP call, it has to be listened to by a web service provider 
> for that to be a SOAP call.  Further: "As the call is asnychronous the 
> caller will not know if anyone listens to the call anyway", true, but 
> I don't think that's the point, one-way SOAP calls are still intended 
> to be processed.
> When I first read the SOAP DataFormat, I thought it made actual SOAP 
> calls, perhaps just using the JAX-WS RI instead of CXF.  Then I 
> realized it just creates SOAP messages, it's really an enhanced 
> version of the JAXB DataFormat.  To limit confusion, I think it would 
> be good to disabuse the reader early on of the notion that it is 
> making SOAP calls.
> Glen
> Christian Schneider wrote:
>>  Hi Glen,
>> you can see it this way. On the other hand you could also say that 
>> sending a message that contains soap content is a one way soap call 
>> even if no one listens for it. As the call is asnychronous the caller 
>> will not know if anyone listens to the call anyway ;-)
>> Regards
>> Christian
>> Am 09.09.2010 09:46, schrieb Glen Mazza:
>>> It is only a SOAP call if a web service is listening on that queue, 
>>> correct?  And if no web service is listening there, then it's just a 
>>> simple matter of an XML message (that just happens to be a SOAP 
>>> call) being sent to the queue, correct again?  OK, I'll update the 
>>> SOAP page (or you may do so) later on today.
>>> Thanks,
>>> Glen
>>> Christian Schneider wrote:
>>>>  Hi Glen,
>>>> at my employer we are hosting the complete web services using jms 
>>>> instead of http. So if you have a webservice listening on the jms 
>>>> queue you can make soap calls using the soap dataformat.
>>>> CXF also provides SOAP / JMS. We even have services running on 
>>>> tibco business works that can be directly called on jms. If your 
>>>> service method is one way then the simple route below will implement
>>>> a complete sop call. For request reply you of course need the more 
>>>> complicated route shown in the other examples of the soap dataformat.
>>>> Regards
>>>> Christian
>>>> Am 09.09.2010 02:54, schrieb Glen Mazza:
>>>>> Hello, another question on the SOAP DataFormat text.  In the 
>>>>> "Using the Java DSL" section[1], the example given is as follows:
>>>>> SoapJaxbDataFormat soap = new 
>>>>> SoapJaxbDataFormat("com.example.customerservice",        new 
>>>>> ServiceInterfaceStrategy(CustomerService.class));
>>>>> from("direct:start")
>>>>>  .marshal(soap)
>>>>>  .to("jms:myQueue");
>>>>> I'm not sure what the above route is doing.  Is it:
>>>>> 1.) Making a SOAP over JMS call (i.e., jms:myQueue will need to be 
>>>>> a web service provider that will return a response)
>>>>> or
>>>>> 2.) Just marshalling the Java object holding the SOAP call data 
>>>>> into an XML SOAP Envelope and placing the latter on a queue (for 
>>>>> perhaps a later feed to the actual web service call, but it does 
>>>>> not have to be).
>>>>> Thanks,
>>>>> Glen
>>>>> [1] 



View raw message