You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by ant elder <an...@gmail.com> on 2008/06/13 14:42:58 UTC

Re: JMS transport specs/documentation

On Fri, Jun 13, 2008 at 1:27 PM, Asankha C. Perera <as...@wso2.com> wrote:

>  Hi Andreas
>
> I was wondering whether there is somewhere a specification or documentation
> that gives a clear overview of what types of messages Synapse's JMS
> transport is supposed to accept and how it should process these messages.
> More precisely I'm looking for a document that contains requirements such as
> "If the incoming message is a BytesMessage and has a 'Content-Type'
> property, then the transport ..." etc. Is there already something like that?
>
>
>  Sorry, there isn't much external documentation yet..except in my head :-)
> .. however, I have been planning to update the JMS transport to handle JTA
> transactions for sometime, and I also wanted to change the design to support
> both JMS 1.0 and 1.1 in a better way. Some of the current issues we have
> came about as we came across a user who wanted JMS 1.0 support, at which
> point we updated the codebase to JMS 1.0 from what we had (i.e. 1.1).
>
> We also have plans to adhere to the proposed binding for SOAP over JMS
> specification<http://mail-archives.apache.org/mod_mbox/ws-axis-dev/200701.mbox/%3C80A43FC052CE3949A327527DCD5D6B27020FB65C@MAIL01.bedford.progress.com%3E>.
> At the same time, we need to update our code to not use setMessageListener()
> etc. which the newer JEE app servers (such as WebSphere) does not allow..
>
> If not, are there people who are interested in helping to write this kind
> of specification? Note that I believe that the current behavior of the JMS
> transport is not always appropriate. E.g. a BytesMessage with Content-Type
> 'text/plain; charset=...' produces a binary wrapper, while I would expect a
> text wrapper. Therefore the specs to be written would focus on the to-be
> situation rather than the as-is situation.
>
> I would certainly be very interested to keep working on the JMS transport
> and I believe that with your help and that of any others in the community,
> we could really improve the current implementation to be much better
>
> asankha
>

How about also something like an SCA compatibility mode so Synapse could sit
in front of Tuscany/SCA JMS services? It would mainly be just setting some
header properties. I'm mostly a lurker on the Synapse list these days but i
could help from the SCA specification and Tuscany interop side of things.

    ...ant

Re: JMS transport specs/documentation

Posted by "Asankha C. Perera" <as...@wso2.com>.
Hi Ant
> How about also something like an SCA compatibility mode so Synapse 
> could sit in front of Tuscany/SCA JMS services? It would mainly be 
> just setting some header properties. I'm mostly a lurker on the 
> Synapse list these days but i could help from the SCA specification 
> and Tuscany interop side of things.
Good to hear from you! Sorry for my low knowledge on SCA.. but if what 
you would like is for Synapse to front JMS services, you could do that 
even right now.. If you could educate us a bit more on what you would 
like from Synapse for better SCA support, we could help you..

asankha

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


Re: JMS transport specs/documentation

Posted by Paul Fremantle <pz...@gmail.com>.
That would be great! Thanks Ant.

Paul

On Fri, Jun 13, 2008 at 1:42 PM, ant elder <an...@gmail.com> wrote:
> On Fri, Jun 13, 2008 at 1:27 PM, Asankha C. Perera <as...@wso2.com> wrote:
>
>>  Hi Andreas
>>
>> I was wondering whether there is somewhere a specification or documentation
>> that gives a clear overview of what types of messages Synapse's JMS
>> transport is supposed to accept and how it should process these messages.
>> More precisely I'm looking for a document that contains requirements such as
>> "If the incoming message is a BytesMessage and has a 'Content-Type'
>> property, then the transport ..." etc. Is there already something like that?
>>
>>
>>  Sorry, there isn't much external documentation yet..except in my head :-)
>> .. however, I have been planning to update the JMS transport to handle JTA
>> transactions for sometime, and I also wanted to change the design to support
>> both JMS 1.0 and 1.1 in a better way. Some of the current issues we have
>> came about as we came across a user who wanted JMS 1.0 support, at which
>> point we updated the codebase to JMS 1.0 from what we had (i.e. 1.1).
>>
>> We also have plans to adhere to the proposed binding for SOAP over JMS
>> specification<http://mail-archives.apache.org/mod_mbox/ws-axis-dev/200701.mbox/%3C80A43FC052CE3949A327527DCD5D6B27020FB65C@MAIL01.bedford.progress.com%3E>.
>> At the same time, we need to update our code to not use setMessageListener()
>> etc. which the newer JEE app servers (such as WebSphere) does not allow..
>>
>> If not, are there people who are interested in helping to write this kind
>> of specification? Note that I believe that the current behavior of the JMS
>> transport is not always appropriate. E.g. a BytesMessage with Content-Type
>> 'text/plain; charset=...' produces a binary wrapper, while I would expect a
>> text wrapper. Therefore the specs to be written would focus on the to-be
>> situation rather than the as-is situation.
>>
>> I would certainly be very interested to keep working on the JMS transport
>> and I believe that with your help and that of any others in the community,
>> we could really improve the current implementation to be much better
>>
>> asankha
>>
>
> How about also something like an SCA compatibility mode so Synapse could sit
> in front of Tuscany/SCA JMS services? It would mainly be just setting some
> header properties. I'm mostly a lurker on the Synapse list these days but i
> could help from the SCA specification and Tuscany interop side of things.
>
>    ...ant
>



-- 
Paul Fremantle
Co-Founder and CTO, WSO2
Apache Synapse PMC Chair
OASIS WS-RX TC Co-chair

blog: http://pzf.fremantle.org
paul@wso2.com

"Oxygenating the Web Service Platform", www.wso2.com

Re: JMS transport specs/documentation

Posted by Andreas Veithen <an...@skynet.be>.
On 18 juin 08, at 13:31, Asankha C. Perera wrote:

> Andreas
>> Please review and provide feedback (in particular on my analysis of  
>> the as-is situation and the proposed to-be situation).
> Your analysis is correct, I guess TransportSender will follow shortly
>> Some additional points where contribution is required:
>> * Explain the impact of supporting both JMS 1.0 and 1.1.
> Unfortunately we cannot depend on the Sun's JMS API jar's and thus  
> we have a dependency on the Geronimo 1.1 API jar, which creates  
> problems, as even if we break 1.0 compatibility, its not found until  
> too late. I think a solution to this and a better design would be to  
> move JMS 1.0 and 1.1 API specific code into separate classes, and  
> make the transport depend on a common interface. Then at least when  
> someone makes a fix on the 1.0 code, they can be extra careful.

Breaking 1.0 compatibility could also be detected during the unit  
tests. To do this we need
* sufficient unit test coverage (required anyway...);
* a wrapper/proxy that intercepts all JMS calls during the unit tests  
and throws an exception whenever a JMS 1.1 feature is used.
We should apply the same strategy to test for JEE compliance. I will  
provide a solution for this.

>
>> * I think that a large part of the specifications for the JMS  
>> transport should apply equally to the AMQP transport. In  
>> SYNAPSE-303 I suggested to create some kind of abstract messaging  
>> transport from which both transports would be derived. What is your  
>> opinion on this?
> I think we should not do anything AMQP specific in the JMS  
> transport, but rather allow the JMS transport to be configured with  
> additional properties as required, to support AMQP, MQSeries,  
> Tuscany etc. Someday there will be a good native AMQP transport, and  
> right now the best 'interoperable' AMQP support there is, is via JMS
>> * Can anybody with knowledge about the proposed SOAP over JMS  
>> specification comment on what we need to rework to support it?
> I think we should support the existing Synapse/Axis2 style  
> addresses, as well as the new IRI scheme and this shouldn't be much  
> of a problem. Maybe we can have a switch per service to state  
> whether it prefers the new style or the legacy, and default to the  
> new IRI etc. I haven't yet had time to read the links to the new  
> SOAP/JMS spec, but I will try to do that before next week, but I  
> think this is very much similar to the one posted to the Axis2 dev  
> list some time ago.
>

I have one specific question related to the specs and Axis2. The specs  
say that when sending out a JMS message, information is used from

[quote]
* The JMS IRI (which may be specified in the WSDL, programmatically,  
on the command line etc.);
* WSDL elements or attributes (in addition to the endpoint IRI), and;
* The environment (for example local program variables, system  
environment variables etc).
[/quote]

While the first and last items are obvious, I have some doubts about  
the second. How can an Axis2 transport have access to the WSDL of the  
remote endpoint?

> For supporting transactions, I think we should implement this  
> support at the Base transport level if possible, so that if a  
> transport is "transactional" its thread pools will only work with an  
> active JTA transaction. Sometime back I looked at how Spring and  
> Mule supported this and still be able to work within newer JEE app  
> servers such as WebSphere 6.1. What they both did was to poll for  
> messages continuously with small delay. This is 'somewhat' similar  
> to what we do with the nhttp/s transport, but I guess polling would  
> be much more expensive with JMS and when transactional. However, I  
> do not think there is a better way either..
>

Should we support only the JEE compliant mode or should we also  
support using MessageListener when the transport is deployed outside  
of a JEE container?

> asankha
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
> For additional commands, e-mail: dev-help@synapse.apache.org
>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


Re: JMS transport specs/documentation

Posted by "Asankha C. Perera" <as...@wso2.com>.
Andreas
> Please review and provide feedback (in particular on my analysis of 
> the as-is situation and the proposed to-be situation).
Your analysis is correct, I guess TransportSender will follow shortly
> Some additional points where contribution is required:
> * Explain the impact of supporting both JMS 1.0 and 1.1.
Unfortunately we cannot depend on the Sun's JMS API jar's and thus we 
have a dependency on the Geronimo 1.1 API jar, which creates problems, 
as even if we break 1.0 compatibility, its not found until too late. I 
think a solution to this and a better design would be to move JMS 1.0 
and 1.1 API specific code into separate classes, and make the transport 
depend on a common interface. Then at least when someone makes a fix on 
the 1.0 code, they can be extra careful.
> * I think that a large part of the specifications for the JMS 
> transport should apply equally to the AMQP transport. In SYNAPSE-303 I 
> suggested to create some kind of abstract messaging transport from 
> which both transports would be derived. What is your opinion on this?
I think we should not do anything AMQP specific in the JMS transport, 
but rather allow the JMS transport to be configured with additional 
properties as required, to support AMQP, MQSeries, Tuscany etc. Someday 
there will be a good native AMQP transport, and right now the best 
'interoperable' AMQP support there is, is via JMS
> * Can anybody with knowledge about the proposed SOAP over JMS 
> specification comment on what we need to rework to support it?
I think we should support the existing Synapse/Axis2 style addresses, as 
well as the new IRI scheme and this shouldn't be much of a problem. 
Maybe we can have a switch per service to state whether it prefers the 
new style or the legacy, and default to the new IRI etc. I haven't yet 
had time to read the links to the new SOAP/JMS spec, but I will try to 
do that before next week, but I think this is very much similar to the 
one posted to the Axis2 dev list some time ago.

For supporting transactions, I think we should implement this support at 
the Base transport level if possible, so that if a transport is 
"transactional" its thread pools will only work with an active JTA 
transaction. Sometime back I looked at how Spring and Mule supported 
this and still be able to work within newer JEE app servers such as 
WebSphere 6.1. What they both did was to poll for messages continuously 
with small delay. This is 'somewhat' similar to what we do with the 
nhttp/s transport, but I guess polling would be much more expensive with 
JMS and when transactional. However, I do not think there is a better 
way either..

asankha

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


Re: JMS transport specs/documentation

Posted by Andreas Veithen <an...@skynet.be>.
Hi all!

I started to put together some specifications for the JMS transport in  
our Wiki space:

http://cwiki.apache.org/confluence/display/synapse/JMS+Transport+Specifications

Please review and provide feedback (in particular on my analysis of  
the as-is situation and the proposed to-be situation).

Some additional points where contribution is required:
* The general requirement of interoperability with Tuscany needs to be  
translated into more specific requirements.
* Explain the impact of supporting both JMS 1.0 and 1.1.
* I think that a large part of the specifications for the JMS  
transport should apply equally to the AMQP transport. In SYNAPSE-303 I  
suggested to create some kind of abstract messaging transport from  
which both transports would be derived. What is your opinion on this?
* Can anybody with knowledge about the proposed SOAP over JMS  
specification comment on what we need to rework to support it?
* There was a discussion recently about support for MapMessages. Is  
there any update on this?

Regards,

Andreas


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


Re: JMS transport specs/documentation

Posted by Rajith Attapattu <ra...@gmail.com>.
Sorry, gmail has spolied me with the convinient hide-quote thing :)
Will keep this in my mind the next time I reply.

Rajith

On Fri, Jun 13, 2008 at 12:36 PM, Asankha C. Perera <as...@wso2.com>
wrote:

> Rajith
>
> Can you remove unnecessary parts of the messages when replying to a
> specific line.. Else for those of us who does not use Gmail, reading the
> replies on a long threas becomes very messy :D
>
>
> asankha
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
> For additional commands, e-mail: dev-help@synapse.apache.org
>
>


-- 
Regards,

Rajith Attapattu
Red Hat
http://rajith.2rlabs.com/

Re: JMS transport specs/documentation

Posted by "Asankha C. Perera" <as...@wso2.com>.
Rajith

Can you remove unnecessary parts of the messages when replying to a 
specific line.. Else for those of us who does not use Gmail, reading the 
replies on a long threas becomes very messy :D

asankha

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


Re: JMS transport specs/documentation

Posted by Rajith Attapattu <ra...@gmail.com>.
On Fri, Jun 13, 2008 at 10:51 AM, ant elder <an...@apache.org> wrote:

> On Fri, Jun 13, 2008 at 3:41 PM, Rajith Attapattu <ra...@gmail.com>
> wrote:
>
> > On Fri, Jun 13, 2008 at 8:42 AM, ant elder <an...@gmail.com> wrote:
> >
> > > On Fri, Jun 13, 2008 at 1:27 PM, Asankha C. Perera <as...@wso2.com>
> > > wrote:
> > >
> > > >  Hi Andreas
> > > >
> > > > I was wondering whether there is somewhere a specification or
> > > documentation
> > > > that gives a clear overview of what types of messages Synapse's JMS
> > > > transport is supposed to accept and how it should process these
> > messages.
> > > > More precisely I'm looking for a document that contains requirements
> > such
> > > as
> > > > "If the incoming message is a BytesMessage and has a 'Content-Type'
> > > > property, then the transport ..." etc. Is there already something
> like
> > > that?
> > > >
> > > >
> > > >  Sorry, there isn't much external documentation yet..except in my
> head
> > > :-)
> > > > .. however, I have been planning to update the JMS transport to
> handle
> > > JTA
> > > > transactions for sometime, and I also wanted to change the design to
> > > support
> > > > both JMS 1.0 and 1.1 in a better way. Some of the current issues we
> > have
> > > > came about as we came across a user who wanted JMS 1.0 support, at
> > which
> > > > point we updated the codebase to JMS 1.0 from what we had (i.e. 1.1).
> > > >
> > > > We also have plans to adhere to the proposed binding for SOAP over
> JMS
> > > > specification<
> > >
> >
> http://mail-archives.apache.org/mod_mbox/ws-axis-dev/200701.mbox/%3C80A43FC052CE3949A327527DCD5D6B27020FB65C@MAIL01.bedford.progress.com%3E
> > > >.
> > > > At the same time, we need to update our code to not use
> > > setMessageListener()
> > > > etc. which the newer JEE app servers (such as WebSphere) does not
> > allow..
> > > >
> > > > If not, are there people who are interested in helping to write this
> > kind
> > > > of specification? Note that I believe that the current behavior of
> the
> > > JMS
> > > > transport is not always appropriate. E.g. a BytesMessage with
> > > Content-Type
> > > > 'text/plain; charset=...' produces a binary wrapper, while I would
> > expect
> > > a
> > > > text wrapper. Therefore the specs to be written would focus on the
> > to-be
> > > > situation rather than the as-is situation.
> > > >
> > > > I would certainly be very interested to keep working on the JMS
> > transport
> > > > and I believe that with your help and that of any others in the
> > > community,
> > > > we could really improve the current implementation to be much better
> > > >
> > > > asankha
> > > >
> > >
> > > How about also something like an SCA compatibility mode so Synapse
> could
> > > sit
> > > in front of Tuscany/SCA JMS services? It would mainly be just setting
> > some
> > > header properties. I'm mostly a lurker on the Synapse list these days
> but
> > i
> > > could help from the SCA specification and Tuscany interop side of
> things.
> > >
> > >    ...ant
> > >
> >
> > Ant could you explain a bit more?
> > Is this for transforming an incomming JMS message into the required SCA
> > fromat?
> > It's been a while since I read the JMS binding spec and can't remember
> off
> > the top of my head whats actually required to do the transformation.
> >
> > --
> > Regards,
> >
> > Rajith Attapattu
> > Red Hat
> > http://rajith.2rlabs.com/
> >
>
> I just meant things like setting the "scaOperationName" JMS user property,
> and there's a Tuscany specific user property to indicate exception messages
> as the spec doesn't define those yet. Those would be the main ones for
> basic
> RPC style services but there's more advanced stuff that could be done like
> with message formats if Synapse wanted to take account of all the SCA
> <binding.jms> options.
>
>   ...ant
>

Make sense. Thanks for your reply.

-- 
Regards,

Rajith Attapattu
Red Hat
http://rajith.2rlabs.com/

Re: JMS transport specs/documentation

Posted by Rajith Attapattu <ra...@gmail.com>.
On Fri, Jun 13, 2008 at 10:51 AM, ant elder <an...@apache.org> wrote:

> On Fri, Jun 13, 2008 at 3:41 PM, Rajith Attapattu <ra...@gmail.com>
> wrote:
>
> > On Fri, Jun 13, 2008 at 8:42 AM, ant elder <an...@gmail.com> wrote:
> >
> > > On Fri, Jun 13, 2008 at 1:27 PM, Asankha C. Perera <as...@wso2.com>
> > > wrote:
> > >
> > > >  Hi Andreas
> > > >
> > > > I was wondering whether there is somewhere a specification or
> > > documentation
> > > > that gives a clear overview of what types of messages Synapse's JMS
> > > > transport is supposed to accept and how it should process these
> > messages.
> > > > More precisely I'm looking for a document that contains requirements
> > such
> > > as
> > > > "If the incoming message is a BytesMessage and has a 'Content-Type'
> > > > property, then the transport ..." etc. Is there already something
> like
> > > that?
> > > >
> > > >
> > > >  Sorry, there isn't much external documentation yet..except in my
> head
> > > :-)
> > > > .. however, I have been planning to update the JMS transport to
> handle
> > > JTA
> > > > transactions for sometime, and I also wanted to change the design to
> > > support
> > > > both JMS 1.0 and 1.1 in a better way. Some of the current issues we
> > have
> > > > came about as we came across a user who wanted JMS 1.0 support, at
> > which
> > > > point we updated the codebase to JMS 1.0 from what we had (i.e. 1.1).
> > > >
> > > > We also have plans to adhere to the proposed binding for SOAP over
> JMS
> > > > specification<
> > >
> >
> http://mail-archives.apache.org/mod_mbox/ws-axis-dev/200701.mbox/%3C80A43FC052CE3949A327527DCD5D6B27020FB65C@MAIL01.bedford.progress.com%3E
> > > >.
> > > > At the same time, we need to update our code to not use
> > > setMessageListener()
> > > > etc. which the newer JEE app servers (such as WebSphere) does not
> > allow..
> > > >
> > > > If not, are there people who are interested in helping to write this
> > kind
> > > > of specification? Note that I believe that the current behavior of
> the
> > > JMS
> > > > transport is not always appropriate. E.g. a BytesMessage with
> > > Content-Type
> > > > 'text/plain; charset=...' produces a binary wrapper, while I would
> > expect
> > > a
> > > > text wrapper. Therefore the specs to be written would focus on the
> > to-be
> > > > situation rather than the as-is situation.
> > > >
> > > > I would certainly be very interested to keep working on the JMS
> > transport
> > > > and I believe that with your help and that of any others in the
> > > community,
> > > > we could really improve the current implementation to be much better
> > > >
> > > > asankha
> > > >
> > >
> > > How about also something like an SCA compatibility mode so Synapse
> could
> > > sit
> > > in front of Tuscany/SCA JMS services? It would mainly be just setting
> > some
> > > header properties. I'm mostly a lurker on the Synapse list these days
> but
> > i
> > > could help from the SCA specification and Tuscany interop side of
> things.
> > >
> > >    ...ant
> > >
> >
> > Ant could you explain a bit more?
> > Is this for transforming an incomming JMS message into the required SCA
> > fromat?
> > It's been a while since I read the JMS binding spec and can't remember
> off
> > the top of my head whats actually required to do the transformation.
> >
> > --
> > Regards,
> >
> > Rajith Attapattu
> > Red Hat
> > http://rajith.2rlabs.com/
> >
>
> I just meant things like setting the "scaOperationName" JMS user property,
> and there's a Tuscany specific user property to indicate exception messages
> as the spec doesn't define those yet. Those would be the main ones for
> basic
> RPC style services but there's more advanced stuff that could be done like
> with message formats if Synapse wanted to take account of all the SCA
> <binding.jms> options.
>
>   ...ant
>

Make sense. Thanks for your reply.

-- 
Regards,

Rajith Attapattu
Red Hat
http://rajith.2rlabs.com/

Re: JMS transport specs/documentation

Posted by ant elder <an...@apache.org>.
On Fri, Jun 13, 2008 at 3:41 PM, Rajith Attapattu <ra...@gmail.com>
wrote:

> On Fri, Jun 13, 2008 at 8:42 AM, ant elder <an...@gmail.com> wrote:
>
> > On Fri, Jun 13, 2008 at 1:27 PM, Asankha C. Perera <as...@wso2.com>
> > wrote:
> >
> > >  Hi Andreas
> > >
> > > I was wondering whether there is somewhere a specification or
> > documentation
> > > that gives a clear overview of what types of messages Synapse's JMS
> > > transport is supposed to accept and how it should process these
> messages.
> > > More precisely I'm looking for a document that contains requirements
> such
> > as
> > > "If the incoming message is a BytesMessage and has a 'Content-Type'
> > > property, then the transport ..." etc. Is there already something like
> > that?
> > >
> > >
> > >  Sorry, there isn't much external documentation yet..except in my head
> > :-)
> > > .. however, I have been planning to update the JMS transport to handle
> > JTA
> > > transactions for sometime, and I also wanted to change the design to
> > support
> > > both JMS 1.0 and 1.1 in a better way. Some of the current issues we
> have
> > > came about as we came across a user who wanted JMS 1.0 support, at
> which
> > > point we updated the codebase to JMS 1.0 from what we had (i.e. 1.1).
> > >
> > > We also have plans to adhere to the proposed binding for SOAP over JMS
> > > specification<
> >
> http://mail-archives.apache.org/mod_mbox/ws-axis-dev/200701.mbox/%3C80A43FC052CE3949A327527DCD5D6B27020FB65C@MAIL01.bedford.progress.com%3E
> > >.
> > > At the same time, we need to update our code to not use
> > setMessageListener()
> > > etc. which the newer JEE app servers (such as WebSphere) does not
> allow..
> > >
> > > If not, are there people who are interested in helping to write this
> kind
> > > of specification? Note that I believe that the current behavior of the
> > JMS
> > > transport is not always appropriate. E.g. a BytesMessage with
> > Content-Type
> > > 'text/plain; charset=...' produces a binary wrapper, while I would
> expect
> > a
> > > text wrapper. Therefore the specs to be written would focus on the
> to-be
> > > situation rather than the as-is situation.
> > >
> > > I would certainly be very interested to keep working on the JMS
> transport
> > > and I believe that with your help and that of any others in the
> > community,
> > > we could really improve the current implementation to be much better
> > >
> > > asankha
> > >
> >
> > How about also something like an SCA compatibility mode so Synapse could
> > sit
> > in front of Tuscany/SCA JMS services? It would mainly be just setting
> some
> > header properties. I'm mostly a lurker on the Synapse list these days but
> i
> > could help from the SCA specification and Tuscany interop side of things.
> >
> >    ...ant
> >
>
> Ant could you explain a bit more?
> Is this for transforming an incomming JMS message into the required SCA
> fromat?
> It's been a while since I read the JMS binding spec and can't remember off
> the top of my head whats actually required to do the transformation.
>
> --
> Regards,
>
> Rajith Attapattu
> Red Hat
> http://rajith.2rlabs.com/
>

I just meant things like setting the "scaOperationName" JMS user property,
and there's a Tuscany specific user property to indicate exception messages
as the spec doesn't define those yet. Those would be the main ones for basic
RPC style services but there's more advanced stuff that could be done like
with message formats if Synapse wanted to take account of all the SCA
<binding.jms> options.

   ...ant

Re: JMS transport specs/documentation

Posted by ant elder <an...@apache.org>.
On Fri, Jun 13, 2008 at 3:41 PM, Rajith Attapattu <ra...@gmail.com>
wrote:

> On Fri, Jun 13, 2008 at 8:42 AM, ant elder <an...@gmail.com> wrote:
>
> > On Fri, Jun 13, 2008 at 1:27 PM, Asankha C. Perera <as...@wso2.com>
> > wrote:
> >
> > >  Hi Andreas
> > >
> > > I was wondering whether there is somewhere a specification or
> > documentation
> > > that gives a clear overview of what types of messages Synapse's JMS
> > > transport is supposed to accept and how it should process these
> messages.
> > > More precisely I'm looking for a document that contains requirements
> such
> > as
> > > "If the incoming message is a BytesMessage and has a 'Content-Type'
> > > property, then the transport ..." etc. Is there already something like
> > that?
> > >
> > >
> > >  Sorry, there isn't much external documentation yet..except in my head
> > :-)
> > > .. however, I have been planning to update the JMS transport to handle
> > JTA
> > > transactions for sometime, and I also wanted to change the design to
> > support
> > > both JMS 1.0 and 1.1 in a better way. Some of the current issues we
> have
> > > came about as we came across a user who wanted JMS 1.0 support, at
> which
> > > point we updated the codebase to JMS 1.0 from what we had (i.e. 1.1).
> > >
> > > We also have plans to adhere to the proposed binding for SOAP over JMS
> > > specification<
> >
> http://mail-archives.apache.org/mod_mbox/ws-axis-dev/200701.mbox/%3C80A43FC052CE3949A327527DCD5D6B27020FB65C@MAIL01.bedford.progress.com%3E
> > >.
> > > At the same time, we need to update our code to not use
> > setMessageListener()
> > > etc. which the newer JEE app servers (such as WebSphere) does not
> allow..
> > >
> > > If not, are there people who are interested in helping to write this
> kind
> > > of specification? Note that I believe that the current behavior of the
> > JMS
> > > transport is not always appropriate. E.g. a BytesMessage with
> > Content-Type
> > > 'text/plain; charset=...' produces a binary wrapper, while I would
> expect
> > a
> > > text wrapper. Therefore the specs to be written would focus on the
> to-be
> > > situation rather than the as-is situation.
> > >
> > > I would certainly be very interested to keep working on the JMS
> transport
> > > and I believe that with your help and that of any others in the
> > community,
> > > we could really improve the current implementation to be much better
> > >
> > > asankha
> > >
> >
> > How about also something like an SCA compatibility mode so Synapse could
> > sit
> > in front of Tuscany/SCA JMS services? It would mainly be just setting
> some
> > header properties. I'm mostly a lurker on the Synapse list these days but
> i
> > could help from the SCA specification and Tuscany interop side of things.
> >
> >    ...ant
> >
>
> Ant could you explain a bit more?
> Is this for transforming an incomming JMS message into the required SCA
> fromat?
> It's been a while since I read the JMS binding spec and can't remember off
> the top of my head whats actually required to do the transformation.
>
> --
> Regards,
>
> Rajith Attapattu
> Red Hat
> http://rajith.2rlabs.com/
>

I just meant things like setting the "scaOperationName" JMS user property,
and there's a Tuscany specific user property to indicate exception messages
as the spec doesn't define those yet. Those would be the main ones for basic
RPC style services but there's more advanced stuff that could be done like
with message formats if Synapse wanted to take account of all the SCA
<binding.jms> options.

   ...ant

Re: JMS transport specs/documentation

Posted by Rajith Attapattu <ra...@gmail.com>.
On Fri, Jun 13, 2008 at 8:42 AM, ant elder <an...@gmail.com> wrote:

> On Fri, Jun 13, 2008 at 1:27 PM, Asankha C. Perera <as...@wso2.com>
> wrote:
>
> >  Hi Andreas
> >
> > I was wondering whether there is somewhere a specification or
> documentation
> > that gives a clear overview of what types of messages Synapse's JMS
> > transport is supposed to accept and how it should process these messages.
> > More precisely I'm looking for a document that contains requirements such
> as
> > "If the incoming message is a BytesMessage and has a 'Content-Type'
> > property, then the transport ..." etc. Is there already something like
> that?
> >
> >
> >  Sorry, there isn't much external documentation yet..except in my head
> :-)
> > .. however, I have been planning to update the JMS transport to handle
> JTA
> > transactions for sometime, and I also wanted to change the design to
> support
> > both JMS 1.0 and 1.1 in a better way. Some of the current issues we have
> > came about as we came across a user who wanted JMS 1.0 support, at which
> > point we updated the codebase to JMS 1.0 from what we had (i.e. 1.1).
> >
> > We also have plans to adhere to the proposed binding for SOAP over JMS
> > specification<
> http://mail-archives.apache.org/mod_mbox/ws-axis-dev/200701.mbox/%3C80A43FC052CE3949A327527DCD5D6B27020FB65C@MAIL01.bedford.progress.com%3E
> >.
> > At the same time, we need to update our code to not use
> setMessageListener()
> > etc. which the newer JEE app servers (such as WebSphere) does not allow..
> >
> > If not, are there people who are interested in helping to write this kind
> > of specification? Note that I believe that the current behavior of the
> JMS
> > transport is not always appropriate. E.g. a BytesMessage with
> Content-Type
> > 'text/plain; charset=...' produces a binary wrapper, while I would expect
> a
> > text wrapper. Therefore the specs to be written would focus on the to-be
> > situation rather than the as-is situation.
> >
> > I would certainly be very interested to keep working on the JMS transport
> > and I believe that with your help and that of any others in the
> community,
> > we could really improve the current implementation to be much better
> >
> > asankha
> >
>
> How about also something like an SCA compatibility mode so Synapse could
> sit
> in front of Tuscany/SCA JMS services? It would mainly be just setting some
> header properties. I'm mostly a lurker on the Synapse list these days but i
> could help from the SCA specification and Tuscany interop side of things.
>
>    ...ant
>

Ant could you explain a bit more?
Is this for transforming an incomming JMS message into the required SCA
fromat?
It's been a while since I read the JMS binding spec and can't remember off
the top of my head whats actually required to do the transformation.

-- 
Regards,

Rajith Attapattu
Red Hat
http://rajith.2rlabs.com/

Re: JMS transport specs/documentation

Posted by Rajith Attapattu <ra...@gmail.com>.
On Fri, Jun 13, 2008 at 8:42 AM, ant elder <an...@gmail.com> wrote:

> On Fri, Jun 13, 2008 at 1:27 PM, Asankha C. Perera <as...@wso2.com>
> wrote:
>
> >  Hi Andreas
> >
> > I was wondering whether there is somewhere a specification or
> documentation
> > that gives a clear overview of what types of messages Synapse's JMS
> > transport is supposed to accept and how it should process these messages.
> > More precisely I'm looking for a document that contains requirements such
> as
> > "If the incoming message is a BytesMessage and has a 'Content-Type'
> > property, then the transport ..." etc. Is there already something like
> that?
> >
> >
> >  Sorry, there isn't much external documentation yet..except in my head
> :-)
> > .. however, I have been planning to update the JMS transport to handle
> JTA
> > transactions for sometime, and I also wanted to change the design to
> support
> > both JMS 1.0 and 1.1 in a better way. Some of the current issues we have
> > came about as we came across a user who wanted JMS 1.0 support, at which
> > point we updated the codebase to JMS 1.0 from what we had (i.e. 1.1).
> >
> > We also have plans to adhere to the proposed binding for SOAP over JMS
> > specification<
> http://mail-archives.apache.org/mod_mbox/ws-axis-dev/200701.mbox/%3C80A43FC052CE3949A327527DCD5D6B27020FB65C@MAIL01.bedford.progress.com%3E
> >.
> > At the same time, we need to update our code to not use
> setMessageListener()
> > etc. which the newer JEE app servers (such as WebSphere) does not allow..
> >
> > If not, are there people who are interested in helping to write this kind
> > of specification? Note that I believe that the current behavior of the
> JMS
> > transport is not always appropriate. E.g. a BytesMessage with
> Content-Type
> > 'text/plain; charset=...' produces a binary wrapper, while I would expect
> a
> > text wrapper. Therefore the specs to be written would focus on the to-be
> > situation rather than the as-is situation.
> >
> > I would certainly be very interested to keep working on the JMS transport
> > and I believe that with your help and that of any others in the
> community,
> > we could really improve the current implementation to be much better
> >
> > asankha
> >
>
> How about also something like an SCA compatibility mode so Synapse could
> sit
> in front of Tuscany/SCA JMS services? It would mainly be just setting some
> header properties. I'm mostly a lurker on the Synapse list these days but i
> could help from the SCA specification and Tuscany interop side of things.
>
>    ...ant
>

Ant could you explain a bit more?
Is this for transforming an incomming JMS message into the required SCA
fromat?
It's been a while since I read the JMS binding spec and can't remember off
the top of my head whats actually required to do the transformation.

-- 
Regards,

Rajith Attapattu
Red Hat
http://rajith.2rlabs.com/