You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by nigel <ni...@pimco.com> on 2013/08/09 01:10:40 UTC

SJMS component and IBM WebsphereMQ class cast error

Hi,
I'm trying to use the sjms component with IBM MQ and I have an exception
when using an InOut exchange patter over topics. The SjmsComponent is
created using a MQConnectionFactory class. 
The error occurs in the JmsObjectFactory class, createMessageConsumer
method, line 122.
121        if (topic) {
122            TopicSession ts = (TopicSession)session;

The session in actually an MQSession which is not a TopicSession. I made a
change to my local version of camel-sjms to work around this as the cast
doesn't seem necessary. I did the following:
1. removed the cast
2. just called the JmsSession createDurableSubscriber methods
3. Called the JmsSession.createConsumer methods rather than the
TopicSession.createSubscriber methods. My reading of the IBM docs implies
this is correct.

Not being an expert on JMS I'm not sure if this is correct to the spec of
just works for IBM MQ.

Any insights?

Nigel





--
View this message in context: http://camel.465427.n5.nabble.com/SJMS-component-and-IBM-WebsphereMQ-class-cast-error-tp5737010.html
Sent from the Camel - Users mailing list archive at Nabble.com.

RE: SJMS component and IBM WebsphereMQ class cast error

Posted by nigel <ni...@pimco.com>.
Claus,
Let me read up on how to provide a patch and I'll do so. I have another issue to double check first through - my consumer only ever seems to process the first message - then it goes deaf :(. Just need to check that out.
Nigel


From: Claus Ibsen-2 [via Camel] [mailto:ml-node+s465427n5737028h15@n5.nabble.com]
Sent: Friday, August 09, 2013 12:13 AM
To: Longton, Nigel
Subject: Re: SJMS component and IBM WebsphereMQ class cast error

Hi

Yeah if you can patch the code to work with MQ then feel free to log a
JIRA and provide a patch.
http://camel.apache.org/contributing.html

On Fri, Aug 9, 2013 at 1:10 AM, nigel <[hidden email]</user/SendEmail.jtp?type=node&node=5737028&i=0>> wrote:

> Hi,
> I'm trying to use the sjms component with IBM MQ and I have an exception
> when using an InOut exchange patter over topics. The SjmsComponent is
> created using a MQConnectionFactory class.
> The error occurs in the JmsObjectFactory class, createMessageConsumer
> method, line 122.
> 121        if (topic) {
> 122            TopicSession ts = (TopicSession)session;
>
> The session in actually an MQSession which is not a TopicSession. I made a
> change to my local version of camel-sjms to work around this as the cast
> doesn't seem necessary. I did the following:
> 1. removed the cast
> 2. just called the JmsSession createDurableSubscriber methods
> 3. Called the JmsSession.createConsumer methods rather than the
> TopicSession.createSubscriber methods. My reading of the IBM docs implies
> this is correct.
>
> Not being an expert on JMS I'm not sure if this is correct to the spec of
> just works for IBM MQ.
>
> Any insights?
>
> Nigel
>
>
>
>
>
> --
> View this message in context: http://camel.465427.n5.nabble.com/SJMS-component-and-IBM-WebsphereMQ-class-cast-error-tp5737010.html
> Sent from the Camel - Users mailing list archive at Nabble.com.



--
Claus Ibsen
-----------------
Red Hat, Inc.
Email: [hidden email]</user/SendEmail.jtp?type=node&node=5737028&i=1>
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen

________________________________
If you reply to this email, your message will be added to the discussion below:
http://camel.465427.n5.nabble.com/SJMS-component-and-IBM-WebsphereMQ-class-cast-error-tp5737010p5737028.html
To unsubscribe from SJMS component and IBM WebsphereMQ class cast error, click here<http://camel.465427.n5.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=5737010&code=bmlnZWwubG9uZ3RvbkBwaW1jby5jb218NTczNzAxMHwxNjI3Mjc0NTQx>.
NAML<http://camel.465427.n5.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>

This message contains confidential information and is intended only for the individual named. If you are not the named addressee, you should not disseminate, distribute, alter or copy this e-mail. Please notify the sender immediately by e-mail if you have received this e-mail by mistake and delete this e-mail from your system. E-mail transmissions cannot be guaranteed to be secure or without error as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender, therefore, does not accept liability for any errors or omissions in the contents of this message which arise during or as a result of e-mail transmission. If verification is required, please request a hard-copy version. This message is provided for information purposes and should not be construed as a solicitation or offer to buy or sell any securities or related financial instruments in any jurisdiction.




--
View this message in context: http://camel.465427.n5.nabble.com/SJMS-component-and-IBM-WebsphereMQ-class-cast-error-tp5737010p5737038.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Re: SJMS component and IBM WebsphereMQ class cast error

Posted by Claus Ibsen <cl...@gmail.com>.
Hi

Yeah if you can patch the code to work with MQ then feel free to log a
JIRA and provide a patch.
http://camel.apache.org/contributing.html

On Fri, Aug 9, 2013 at 1:10 AM, nigel <ni...@pimco.com> wrote:
> Hi,
> I'm trying to use the sjms component with IBM MQ and I have an exception
> when using an InOut exchange patter over topics. The SjmsComponent is
> created using a MQConnectionFactory class.
> The error occurs in the JmsObjectFactory class, createMessageConsumer
> method, line 122.
> 121        if (topic) {
> 122            TopicSession ts = (TopicSession)session;
>
> The session in actually an MQSession which is not a TopicSession. I made a
> change to my local version of camel-sjms to work around this as the cast
> doesn't seem necessary. I did the following:
> 1. removed the cast
> 2. just called the JmsSession createDurableSubscriber methods
> 3. Called the JmsSession.createConsumer methods rather than the
> TopicSession.createSubscriber methods. My reading of the IBM docs implies
> this is correct.
>
> Not being an expert on JMS I'm not sure if this is correct to the spec of
> just works for IBM MQ.
>
> Any insights?
>
> Nigel
>
>
>
>
>
> --
> View this message in context: http://camel.465427.n5.nabble.com/SJMS-component-and-IBM-WebsphereMQ-class-cast-error-tp5737010.html
> Sent from the Camel - Users mailing list archive at Nabble.com.



-- 
Claus Ibsen
-----------------
Red Hat, Inc.
Email: cibsen@redhat.com
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen

Re: SJMS component and IBM WebsphereMQ class cast error

Posted by nigel <ni...@pimco.com>.
Created JIRA CAMEL-6641 and attached a patch



--
View this message in context: http://camel.465427.n5.nabble.com/SJMS-component-and-IBM-WebsphereMQ-class-cast-error-tp5737010p5737345.html
Sent from the Camel - Users mailing list archive at Nabble.com.