ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » MQ OutPut node problem

Post new topic  Reply to topic
 MQ OutPut node problem « View previous topic :: View next topic » 
Author Message
Florent
PostPosted: Thu Jan 31, 2008 2:37 am    Post subject: MQ OutPut node problem Reply with quote

Newbie

Joined: 31 Jan 2008
Posts: 5

Hello,

I'm trying to create a message flow to put a SOAP envelope on a MQ queue from a HTTP input node.

So, my message flow is :
HTTP Input -> Compute -> MQOutPut ->HTTP Reply

But, after executing the flow, when i'm browsing the queue (the one i set on the MQOutPut properties), i find it empty : not a single message...

It seems the put is correctly done, but the message is read right away. If i make my queue "put only", then i can see my message, but i got an error during the http reply process.

Any idea?
Back to top
View user's profile Send private message
elvis_gn
PostPosted: Thu Jan 31, 2008 2:55 am    Post subject: Reply with quote

Padawan

Joined: 08 Oct 2004
Posts: 1905
Location: Dubai

Hi Florent,

Because there is an error on the HTTPReply the message on the Output queue must be getting backed out.

Maybe you can set the Transaction = 'No' and try.

Regards.
Back to top
View user's profile Send private message Send e-mail
Florent
PostPosted: Thu Jan 31, 2008 3:02 am    Post subject: Reply with quote

Newbie

Joined: 31 Jan 2008
Posts: 5

Hi Elvis,

I don't really understand what you mean by :

elvis_gn wrote:
Because there is an error on the HTTPReply the message on the Output queue must be getting backed out.


I did try to set "Transaction = No" on the MQOutPut node, but without any success.
Back to top
View user's profile Send private message
vsr
PostPosted: Thu Jan 31, 2008 6:38 am    Post subject: Reply with quote

Centurion

Joined: 04 Apr 2006
Posts: 104

Please take a look at the document .. you should find the answers

http://www.ibm.com/developerworks/websphere/library/techarticles/0311_withers/withers.html

To write to a queue you need a mqmd. Your flow doesn't have default mqmd as your input node is HttpInput, so you need to generate mqmd explicitly!
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Thu Jan 31, 2008 6:43 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

I'm confused about this comment about "make the queue 'put only'"?

Is something reading from the queue you are writing to?

Also, I would expect that you need a Compute node after the MQOutput, anyway, in order to make sure that the message is valid for passing to the HTTPReply node - i.e to remove the MQMD and restore the HTTP header information.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
Florent
PostPosted: Thu Jan 31, 2008 8:54 am    Post subject: Reply with quote

Newbie

Joined: 31 Jan 2008
Posts: 5

vsr wrote:
Please take a look at the document .. you should find the answers

http://www.ibm.com/developerworks/websphere/library/techarticles/0311_withers/withers.html

To write to a queue you need a mqmd. Your flow doesn't have default mqmd as your input node is HttpInput, so you need to generate mqmd explicitly!


I did read it, i also generated the MQMD but still the same problem.


jefflowrey wrote:
I'm confused about this comment about "make the queue 'put only'"?


I meant i set extract message = No (not allowed)

jefflowrey wrote:
Is something reading from the queue you are writing to?


Yes, it seems the MQOutPut node is doing it...

jefflowrey wrote:
Also, I would expect that you need a Compute node after the MQOutput, anyway, in order to make sure that the message is valid for passing to the HTTPReply node - i.e to remove the MQMD and restore the HTTP header information.


True, but i'm currently focusing on sending a message to a queue using a http input node.
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Thu Jan 31, 2008 8:57 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

The MQOutput node absolutely, positively, will never have a queue open for Input.

The only way it will "remove" a message from a queue is if the message "rolls back", because of an error.

You are very unclear on what you are actually doing - rather than what you are trying to do.

It seems likely you did not get training on Broker. Please recommend to your superiors that you need this training, and that they need to provide it for you.

You can't wire an HTTPReply node directly to the output of an MQOutput node and expect everything to work.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
Florent
PostPosted: Thu Jan 31, 2008 9:25 am    Post subject: Reply with quote

Newbie

Joined: 31 Jan 2008
Posts: 5

jefflowrey wrote:
Please recommend to your superiors that you need this training, and that they need to provide it for you.


Well i have to admit i'm a novice to WMB. But i already know the answer if i ask a such thing to my superior...

jefflowrey wrote:
You can't wire an HTTPReply node directly to the output of an MQOutput node and expect everything to work.


If i remove the HTTPReply node, i'll get a timeout because HTTPInput is waiting for an answer. But the message will still be removed from the queue. I'll check if there is an error / rollback as you suggested.

It seems i have some trouble to understand MQ nodes and how they work. I've read the online documentation about those nodes, but it seems that's not enough. Any redbook i should read?
Back to top
View user's profile Send private message
fschofer
PostPosted: Fri Feb 01, 2008 12:20 am    Post subject: Reply with quote

Knight

Joined: 02 Jul 2001
Posts: 524
Location: Mainz, Germany

Hi,

maybe it helps you to take a look at the 'Web Service sample' or the 'Coordinated Request Reply sample' provided with the broker toolkit.
They are doing similar stuff you want to do.

Click on Help - Welcome - Samples

Greetings
Frank
Back to top
View user's profile Send private message Send e-mail
Florent
PostPosted: Fri Feb 01, 2008 1:18 am    Post subject: Reply with quote

Newbie

Joined: 31 Jan 2008
Posts: 5

Hi guys,

Thanks for your kind replies.

I managed to get my problem solved : my test client had a default option i didn't notice... It was my test client that removed my message everytime.

I also add the compute node before the HTTPReply, and now, everything works fine.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » MQ OutPut node problem
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.