Author |
Message
|
EAI Developer |
Posted: Thu Sep 07, 2006 4:23 am Post subject: unable to put message in the output queue |
|
|
 Centurion
Joined: 30 Nov 2005 Posts: 101 Location: US
|
Hi,
In these days I am working on more than one interface.In this interface i am getting a soap message from a webservice and I am putting this in to queue which i mentioned in the MQOutput node.My interface is like
httpinput ---> Compute --->MqOutput.
The code in the compute is
CREATE COMPUTE MODULE MXPP_Compute
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
-- CALL CopyMessageHeaders();
CALL CopyEntireMessage();
-- Output is MQ, so remove HTTP headers
SET OutputRoot.HTTPInputHeader = null;
-- Add an MQMD
CREATE NEXTSIBLING OF OutputRoot.Properties DOMAIN 'MQMD';
SET OutputRoot.MQMD.Format = 'MQSTR';
RETURN TRUE;
END;
CREATE PROCEDURE CopyMessageHeaders() BEGIN
DECLARE I INTEGER;
DECLARE J INTEGER;
SET I = 1;
SET J = CARDINALITY(InputRoot.*[]);
WHILE I < J DO
SET OutputRoot.*[I] = InputRoot.*[I];
SET I = I + 1;
END WHILE;
END;
CREATE PROCEDURE CopyEntireMessage() BEGIN
SET OutputRoot = InputRoot;
END;
END MODULE;
and i am getting error when i try to put xml msg in the MqOutput node.
and the error is :
Message
Properties
MessageSet =
MessageType =
MessageFormat =
Encoding = 546
CodedCharSetId = 1208
Transactional = false
Persistence = false
CreationTime = 2006-09-07 12:21:35.382
ExpirationTime = -1
Priority = 0
ReplyIdentifier = 000000000000000000000000000000000000000000000000
ReplyProtocol = SOAP-HTTP
Topic =
ContentType = text/xml; charset=utf-8
HTTPInputHeader
X-Original-HTTP-Command = POST http://9.182.233.94:7080/Manish HTTP/1.1
Content-Type = text/xml; charset=utf-8
Accept = application/soap+xml, application/dime, multipart/related, text/*
User-Agent = Axis/1.1
Host = 9.182.233.94:7080
Cache-Control = no-cache
Pragma = no-cache
SOAPAction = ""
Content-Length = 5147
Connection = close
XML
soapenv:Envelope
xmlns:soapenv = http://schemas.xmlsoap.org/soap/envelope/
xmlns:xsd = http://www.w3.org/2001/XMLSchema
xmlns:xsi = http://www.w3.org/2001/XMLSchema-instance
\n
soapenv:Body
NIWOAsBuiltIface
language = EN
xmlns = http://www.mro.com/mx/integration
xmlns:xsi = http://www.w3.org/2001/XMLSchema-instance
\n
Header
\n
Content
\n \n
\n
LocalEnvironment
Destination
HTTP
RequestIdentifier = 414d51205742524b365f44454641554c89b6ff4420001733
Environment
ExceptionList
RecoverableException
File = F:\\build\\S600_P\\src\\DataFlowEngine\\ImbDataFlowNode.cpp
Line = 616
Function = ImbDataFlowNode::createExceptionList
Type = ComIbmWSInputNode
Name = MXPP#FCMComposite_1_1
Label = MXPP.HTTP Input
Catalog = BIPv600
Severity = 3
Number = 2230
Text = Node throwing exception
RecoverableException
File = F:\\build\\S600_P\\src\\DataFlowEngine\\ImbMqOutputNode.cpp
Line = 782
Function = ImbMqOutputNode::evaluate
Type = ComIbmMQOutputNode
Name = MXPP#FCMComposite_1_3
Label = MXPP.MQOutput
Catalog = BIPv600
Severity = 3
Number = 2230
Text = Caught exception and rethrowing
MessageException
File = F:\\build\\S600_P\\src\\DataFlowEngine\\ImbMqOutputNode.cpp
Line = 2142
Function = ImbMqOutputNode::putMessage
Type = ComIbmMQOutputNode
Name = MXPP#FCMComposite_1_3
Label = MXPP.MQOutput
Catalog = BIPv600
Severity = 3
Number = 2667
Text = Failed to put message
Insert
Type = 2
Text = -1
Insert
Type = 5
Text = MQW102
Insert
Type = 2
Text = 2097
Insert
Type = 5
Text =
Insert
Type = 5
Text =
Insert
Type = 5
Text = OUT
I am getting wot i am missing,,please help me in this ..
Thnx,
EAI Developer. |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Sep 07, 2006 4:24 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Am I wrong, or did you attempt to put a message to an MQ queue when that message does not have an MQMD? _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
EAI Developer |
Posted: Thu Sep 07, 2006 4:30 am Post subject: |
|
|
 Centurion
Joined: 30 Nov 2005 Posts: 101 Location: US
|
Hi Jeff,
I am uisng this code to create MQMD header in the compute node before putting the xml message in to MQ Queue.
CREATE NEXTSIBLING OF OutputRoot.Properties DOMAIN 'MQMD';
SET OutputRoot.MQMD.Format = 'MQSTR';
Is there any other values which i have to set to make up a complete message.
Thnx in advance,
EAI Developer. |
|
Back to top |
|
 |
cottonmouth |
Posted: Thu Sep 07, 2006 5:44 am Post subject: |
|
|
 Newbie
Joined: 07 Sep 2006 Posts: 5
|
Here's an example cut out from a flow of mine converting an incoming SOAP to a mq message:
-- Creates MQMD Headers --
CREATE NEXTSIBLING OF OutputRoot.Properties DOMAIN 'MQMD';
SET OutputRoot.MQMD.StrucId = MQMD_STRUC_ID;
SET OutputRoot.MQMD.Version = MQMD_CURRENT_VERSION;
SET OutputRoot.MQMD.MsgType = MQMT_DATAGRAM;
SET OutputRoot.MQMD.Format = MQFMT_RF_HEADER_2 ; _________________ Ours is not to reason why,
ours is just to do or die. |
|
Back to top |
|
 |
narendrach |
Posted: Thu Sep 07, 2006 8:45 am Post subject: |
|
|
Voyager
Joined: 29 Jun 2005 Posts: 78
|
i think ur compute node properties the compute mode is set to
LocalEnvironment and message i think
set it to message
and try _________________ Narendra CH |
|
Back to top |
|
 |
fjb_saper |
Posted: Thu Sep 07, 2006 3:10 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Check the properties of your MQOutput node.
You do not want "passall" as you have nothing to pass. Set it to "default".
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
EAI Developer |
Posted: Thu Sep 07, 2006 8:54 pm Post subject: |
|
|
 Centurion
Joined: 30 Nov 2005 Posts: 101 Location: US
|
Hi guys,
no,In compute node properties I set the "compute mode " as messages only.and I also tried with Mqoutput node Property which is by default "pass all",I changed it to default but no luck.
I will try with this code and let u know.
-- Creates MQMD Headers --
CREATE NEXTSIBLING OF OutputRoot.Properties DOMAIN 'MQMD';
SET OutputRoot.MQMD.StrucId = MQMD_STRUC_ID;
SET OutputRoot.MQMD.Version = MQMD_CURRENT_VERSION;
SET OutputRoot.MQMD.MsgType = MQMT_DATAGRAM;
SET OutputRoot.MQMD.Format = MQFMT_RF_HEADER_2 ;
Thnx for the help,
EAI Developer. |
|
Back to top |
|
 |
EAI Developer |
Posted: Thu Sep 07, 2006 9:06 pm Post subject: [SOLVED] |
|
|
 Centurion
Joined: 30 Nov 2005 Posts: 101 Location: US
|
Thnx gusy its working now.
I didn't add any extra code.I just put the property of MqOutput node to "Default ". I cleaned the project and its working now.
Thnx once again,
EAI Developer. |
|
Back to top |
|
 |
|