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 » SOAPInput to MQOuput

Post new topic  Reply to topic Goto page 1, 2  Next
 SOAPInput to MQOuput « View previous topic :: View next topic » 
Author Message
CuriCAT
PostPosted: Tue Sep 14, 2010 9:12 am    Post subject: SOAPInput to MQOuput Reply with quote

Voyager

Joined: 26 Sep 2006
Posts: 82

I am getting error when I write soap input directly to MQOutput :

Do I need to configure anything in the SOAPInput, i have read that soap input message gets created in SOAP domain, I even tried putting RCD node, added MQHeader, it didn't help. Can some one please tell me what is theproblem ?

SOAPInput --> Trace node --> MQOutput


Following is the error:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server</faultcode>
<faultstring>BIP3113E: Exception detected in message flow SOAPtoFile.SOAP Input (broker WMB02D)</faultstring>
<detail>
<Text>BIP2230E: Error detected whilst processing a message in node 'SOAPtoFile.MQOutput'.
The message broker detected an error whilst processing a message in node 'SOAPtoFile.MQOutput'. An exception has been thrown to cut short the processing of the message.
See the following messages for details of the error. : /build/S610_P/src/DataFlowEngine/ImbMqOutputNode.cpp: 911: ImbMqOutputNode::evaluate: ComIbmMQOutputNode: SOAPtoFile#FCMComposite_1_14
BIP3605E: The SOAP logical tree cannot be serialized.
There is a problem with the SOAP logical tree format.
Review further error messages for an indication to the cause of the error. Check that the SOAP logical supplied is correctly formatted. : /build/S610_P/src/WebServices/WSLibrary/ImbSOAPParser.cpp: 1231: ImbSOAPParser::refreshBitStreamFromElements: :
BIP5010E: XML Writing Errors have occurred.
Errors have occurred during writing of XML.
Review further error messages for an indication to the cause of the errors. : /build/S610_P/src/MTI/MTIforBroker/GenXmlParser4/ImbXMLNSCParser.cpp: 759: ImbXMLNSCParser::refreshBitStreamFromElementsCommon: ComIbmSOAPInputNode: SOAPtoFile#FCMComposite_1_2
BIP5026E: XML schema validation error: 'cvc-complex-type.3.2: Attribute "portTypeNamespace" is not allowed to appear in element "Context".' Element: '/XMLNSC' Internal error codes: 5012, 1. Line: 1, Column: 420
This error was reported by the XMLNSC parser. The message tree is not valid according to the message definitions in the message set.
The message tree is not valid according to the message definition files in the message set.
- Check that the elements and attributes in the message tree are declared in the message set.
- Check that all attributes in the message tree have been cast as (XMLNSC.Attribute) in the message tree.
- Check that any values of types gDate, gYear, gMonth, gDay, gYearMonth, gMonthDay have been cast as (XMLNSC.gDate), (XMLNSC.gYear) and so on, in the message tree.
- Check that any values of type base64Binary have been cast as (XMLNSC.base64Binary) in the message tree.
The message tree is converted to an XML bitstream before being validated. The line and column number are the coordinates of the error in the XML bitstream. : /build/S610_P/src/MTI/MTIforBroker/GenXmlParser4/ImbXMLNSCDocHandler.cpp: 558: ImbXMLNSCDocHandler::handleParseErrors: ComIbmSOAPInputNode: SOAPtoFile#FCMComposite_1_2</Text>
</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
smdavies99
PostPosted: Tue Sep 14, 2010 9:35 am    Post subject: Reply with quote

Jedi Council

Joined: 10 Feb 2003
Posts: 6076
Location: Somewhere over the Rainbow this side of Never-never land.

A trace node set to output ${Root} placed after the SoapInput Node will tell you what folders there are in the message.

YOu need to delete those that are not needed and create an MQMD. Set the right properties in the output tree folders (eg MQMD.Format ) and you should be all good to go.

IF you create a test flow that has just an MQInput Node followed a trace node you will see the structure of an MQ message as it is received by broker. Just make sure that your output looks like that and it should work. Obviously some experimentation will be needed.

OR

Take a look at some of the Sample flows. There are ones that do almost exactly what you are trying to do.
Take your pick
_________________
WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995

Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions.
Back to top
View user's profile Send private message
CuriCAT
PostPosted: Tue Sep 14, 2010 9:52 am    Post subject: Reply with quote

Voyager

Joined: 26 Sep 2006
Posts: 82

I don't know what is the problem :

I have also copied trace which i generated before writing to MQOutput node: I don't know why it is 'SOAPRoot' , it supposed to be Root only, should I do reset content descriptor ?

( ['SOAPRoot' : 0x1157010d0]
(0x01000000:Name):Properties = ( ['MQPROPERTYPARSER' : 0x115704a30]
(0x03000000:NameValue):MessageSet = NULL
(0x03000000:NameValue):MessageType = NULL
(0x03000000:NameValue):MessageFormat = NULL
(0x03000000:NameValue):Encoding = NULL
(0x03000000:NameValue):CodedCharSetId = NULL
(0x03000000:NameValue):Transactional = NULL
(0x03000000:NameValue):Persistence = NULL
(0x03000000:NameValue):CreationTime = NULL
(0x03000000:NameValue):ExpirationTime = NULL
(0x03000000:NameValue):Priority = NULL
(0x03000000:NameValue):ReplyIdentifier = NULL
(0x03000000:NameValue):ReplyProtocol = 'SOAP-AXIS2' (CHARACTER)
(0x03000000:NameValue):Topic = NULL
(0x03000000:NameValue):ContentType = NULL
(0x03000000:NameValue):IdentitySourceType = NULL
(0x03000000:NameValue):IdentitySourceToken = NULL
(0x03000000:NameValue):IdentitySourcePassword = NULL
(0x03000000:NameValue):IdentitySourceIssuedBy = NULL
(0x03000000:NameValue):IdentityMappedType = NULL
(0x03000000:NameValue):IdentityMappedToken = NULL
(0x03000000:NameValue):IdentityMappedPassword = NULL
(0x03000000:NameValue):IdentityMappedIssuedBy = NULL
)
(0x01000000:Name):MQMD = ( ['MQHMD' : 0x115857010]
(0x03000000:NameValue):CodedCharSetId = 500 (INTEGER)
(0x03000000:NameValue):Encoding = 785 (INTEGER)
(0x03000000:NameValue):Format = 'MQHRF2' (CHARACTER)
)
(0x01000000:Name):MQRFH2 = ( ['MQHRF2' : 0x115865710]
(0x03000000:NameValue):Format = '' (CHARACTER)
(0x01000000:Name ):usr = (
(0x01000000:Name):reply_id = (
(0x02000000:Value): = X'534f41500000000000000000000000000000000000001d83' (BLOB)
)
)
)
)
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
Vitor
PostPosted: Tue Sep 14, 2010 10:10 am    Post subject: Re: SOAPInput to MQOuput Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

CuriCAT wrote:
I am getting error when I write soap input directly to MQOutput :


If you're writing directly from SOAPInput to MQOutput with only an RCD and so forth between them, where's that RFH2 header coming from? More importantly, why is it malformed like that?

What exactly happens to this message as it traverses your flow? Do you have any Compute nodes or other processing in there? If so, why?

Better information, better advice.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
CuriCAT
PostPosted: Tue Sep 14, 2010 10:16 am    Post subject: Reply with quote

Voyager

Joined: 26 Sep 2006
Posts: 82

sorry, I made some changes inbetween to make it work:

The updated flow has : SOAPInput --> Comput Node --> Trace node -- > MQOuput

At comput node I added MQMD header MQRFH2 header:
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
Vitor
PostPosted: Tue Sep 14, 2010 10:20 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

CuriCAT wrote:
sorry, I made some changes inbetween to make it work:


Well that doesn't seem to have played out so well....

CuriCAT wrote:
At comput node I added MQMD header MQRFH2 header:


The MQRFH2 is done wrong.

Given that, to add these headers, you must have manually moved the SOAP input into the Output tree how have you done this? Or if you didn't do this, found your problem.....
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
CuriCAT
PostPosted: Tue Sep 14, 2010 11:00 am    Post subject: Reply with quote

Voyager

Joined: 26 Sep 2006
Posts: 82

I did that too - moved manually soap data , still getting error.. also i tried completly ignoring soap input- and create new input tree. still getting error. I don;t know whats going wrong
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
CuriCAT
PostPosted: Tue Sep 14, 2010 11:05 am    Post subject: Reply with quote

Voyager

Joined: 26 Sep 2006
Posts: 82

meanwhile i get this error as a response, i am notable to udderstand why i am getting this errorl.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server</faultcode>
<faultstring>BIP3113E: Exception detected in message flow SOAPtoFile.SOAP Input (broker WMB02D)</faultstring>
<detail>
<Text>BIP2230E: Error detected whilst processing a message in node 'SOAPtoFile.MQOutput'.
The message broker detected an error whilst processing a message in node 'SOAPtoFile.MQOutput'. An exception has been thrown to cut short the processing of the message.
See the following messages for details of the error. : /build/S610_P/src/DataFlowEngine/ImbMqOutputNode.cpp: 911: ImbMqOutputNode::evaluate: ComIbmMQOutputNode: SOAPtoFile#FCMComposite_1_14
BIP3605E: The SOAP logical tree cannot be serialized.
There is a problem with the SOAP logical tree format.
Review further error messages for an indication to the cause of the error. Check that the SOAP logical supplied is correctly formatted. : /build/S610_P/src/WebServices/WSLibrary/ImbSOAPParser.cpp: 1231: ImbSOAPParser::refreshBitStreamFromElements: :
BIP5010E: XML Writing Errors have occurred.
Errors have occurred during writing of XML.
Review further error messages for an indication to the cause of the errors. : /build/S610_P/src/MTI/MTIforBroker/GenXmlParser4/ImbXMLNSCParser.cpp: 759: ImbXMLNSCParser::refreshBitStreamFromElementsCommon: ComIbmSOAPInputNode: SOAPtoFile#FCMComposite_1_2
BIP5026E: XML schema validation error: 'cvc-complex-type.3.2: Attribute "portTypeNamespace" is not allowed to appear in element "Context".' Element: '/XMLNSC' Internal error codes: 5012, 1. Line: 1, Column: 420
This error was reported by the XMLNSC parser. The message tree is not valid according to the message definitions in the message set.
The message tree is not valid according to the message definition files in the message set.
- Check that the elements and attributes in the message tree are declared in the message set.
- Check that all attributes in the message tree have been cast as (XMLNSC.Attribute) in the message tree.
- Check that any values of types gDate, gYear, gMonth, gDay, gYearMonth, gMonthDay have been cast as (XMLNSC.gDate), (XMLNSC.gYear) and so on, in the message tree.
- Check that any values of type base64Binary have been cast as (XMLNSC.base64Binary) in the message tree.
The message tree is converted to an XML bitstream before being validated. The line and column number are the coordinates of the error in the XML bitstream. : /build/S610_P/src/MTI/MTIforBroker/GenXmlParser4/ImbXMLNSCDocHandler.cpp: 558: ImbXMLNSCDocHandler::handleParseErrors: ComIbmSOAPInputNode: SOAPtoFile#FCMComposite_1_2</Text>
</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
Vitor
PostPosted: Tue Sep 14, 2010 11:22 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

CuriCAT wrote:
I did that too - moved manually soap data , still getting error.. also i tried completly ignoring soap input- and create new input tree. still getting error. I don;t know whats going wrong


If you did any of this with the skill you built the RFH2 I have an idea why you're getting the error.

And how exactly do you built a new input tree in a Compute node?
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Sep 14, 2010 11:25 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

CuriCAT wrote:
meanwhile i get this error as a response, i am notable to udderstand why i am getting this errorl.


It's very clear

CuriCAT wrote:
BIP3605E: The SOAP logical tree cannot be serialized.
There is a problem with the SOAP logical tree format.


The logical message tree is hosed & won't fit into a bitstream to go onto a queue. You need to resolve this issue and not by randomly adding headers or squeezing it through an RCD node. You need to follow the advice given earlier & construct a message tree the MQOutput node can believe in.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
prasadpav
PostPosted: Sat Nov 20, 2010 2:50 am    Post subject: Reply with quote

Centurion

Joined: 03 Oct 2004
Posts: 142

I guess the error which is actually reported in this thread might be a problem with the product itself

Quote:
Error is:

'cvc-complex-type.3.2: Attribute "portTypeNamespace" is not allowed to appear in element "Context".' Element: '/XMLNSC' Internal error codes: 5012, 1. Line: 1, Column: 420


I've a very simple message flow to create this problem (Message broker version 6.1.0.5):

Quote:
SOAPInput node ---> RCD (Blob)

The validation set to "Content and Value, throw exception for validation failures" and parsing options set to "immediate" on SOAPInput node


Using visual debugger I can see that the message goes to RCD node and then fails with the above mentioned error. I however, got the conversion to BLOB working using RCD node if I delete "HTTPInputHeader" by having a compute node between SOAPInput node & RCD node.

Prasad
Back to top
View user's profile Send private message
Vitor
PostPosted: Sat Nov 20, 2010 5:01 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

prasadpav wrote:
I guess the error which is actually reported in this thread might be a problem with the product itself


If you seriously believe that, you should raise a PMR.

prasadpav wrote:
Using visual debugger I can see that the message goes to RCD node and then fails with the above mentioned error.


That's nice. What does a user trace say the broker is actually doing, rather than the debugger's interpretation of what's happening?

prasadpav wrote:
I however, got the conversion to BLOB working using RCD node if I delete "HTTPInputHeader" by having a compute node between SOAPInput node & RCD node.


And?
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
prasadpav
PostPosted: Sat Nov 20, 2010 7:14 am    Post subject: Reply with quote

Centurion

Joined: 03 Oct 2004
Posts: 142

Quote:
If you seriously believe that, you should raise a PMR.

I'll do, once I'm convinced that I'm not doing anything wrong.

The reason I brought up visual debugger is - it proved that the input message validation is successful.

Here is the user trace and says exactly the same about the error. Note that "portTypeNameSpace" is within SOAP.Context tree which is automatically populated by SOAPInput node. Don't know why it specifically complains about this element, when there are few elements before and after this.
Quote:
Timestamps are formatted in local time, local time is GMT.
Trace written by version ; formatter version 6105

2010-11-20 14:38:37.978988 11033 UserTrace BIP6060I: Parser type ''Properties'' created on behalf of node 'UT2.SOAP Input - /Test/TestService' to handle portion of incoming message of length 0 bytes beginning at offset '0'.
2010-11-20 14:38:37.986808 11033 UserTrace BIP6061I: Parser type ''SOAP'' created on behalf of node 'UT2.SOAP Input - /Test/TestService' to handle portion of incoming message of length '8' bytes beginning at offset '0'. Parser type selected based on value ''SOAP'' from previous parser.
2010-11-20 14:38:37.986956 11033 UserTrace BIP3907I: Message received and propagated to 'out' terminal of input node 'UT2.SOAP Input - /Test/TestService'.
2010-11-20 14:38:37.995944 11033 UserTrace BIP5026E: XML schema validation error: 'cvc-complex-type.3.2: Attribute "portTypeNamespace" is not allowed to appear in element "Context".' Element: '/XMLNSC' Internal error codes: 5012, 1. Line: 1, Column: 665
This error was reported by the XMLNSC parser. The message tree is not valid according to the message definitions in the message set.
The message tree is not valid according to the message definition files in the message set.
- Check that the elements and attributes in the message tree are declared in the message set.
- Check that all attributes in the message tree have been cast as (XMLNSC.Attribute) in the message tree.
- Check that any values of types gDate, gYear, gMonth, gDay, gYearMonth, gMonthDay have been cast as (XMLNSC.gDate), (XMLNSC.gYear) and so on, in the message tree.
- Check that any values of type base64Binary have been cast as (XMLNSC.base64Binary) in the message tree.
The message tree is converted to an XML bitstream before being validated. The line and column number are the coordinates of the error in the XML bitstream.
2010-11-20 14:38:37.996496 11033 UserTrace BIP2231E: Error detected whilst processing a message in node 'UT2.SOAP Input - /Test/TestService'.
The message broker detected an error whilst processing a message in node 'UT2.SOAP Input - /Test/TestService'. The message has been augmented with an exception list and has been propagated to the node's failure terminal for further processing.
See the following messages for details of the error.
2010-11-20 14:38:37.996508 11033 RecoverableException BIP2230E: Error detected whilst processing a message in node 'UT2.ResetContentDescriptor'.
The message broker detected an error whilst processing a message in node 'UT2.ResetContentDescriptor'. An exception has been thrown to cut short the processing of the message.
See the following messages for details of the error.
2010-11-20 14:38:37.996512 11033 ParserException BIP3605E: The SOAP logical tree cannot be serialized.
There is a problem with the SOAP logical tree format.
Review further error messages for an indication to the cause of the error. Check that the SOAP logical supplied is correctly formatted.
2010-11-20 14:38:37.996520 11033 ParserException BIP5010E: XML Writing Errors have occurred.
Errors have occurred during writing of XML.
Review further error messages for an indication to the cause of the errors.
2010-11-20 14:38:37.996528 11033 ParserException BIP5026E: XML schema validation error: 'cvc-complex-type.3.2: Attribute "portTypeNamespace" is not allowed to appear in element "Context".' Element: '/XMLNSC' Internal error codes: 5012, 1. Line: 1, Column: 665
This error was reported by the XMLNSC parser. The message tree is not valid according to the message definitions in the message set.
The message tree is not valid according to the message definition files in the message set.
- Check that the elements and attributes in the message tree are declared in the message set.
- Check that all attributes in the message tree have been cast as (XMLNSC.Attribute) in the message tree.
- Check that any values of types gDate, gYear, gMonth, gDay, gYearMonth, gMonthDay have been cast as (XMLNSC.gDate), (XMLNSC.gYear) and so on, in the message tree.
- Check that any values of type base64Binary have been cast as (XMLNSC.base64Binary) in the message tree.
The message tree is converted to an XML bitstream before being validated. The line and column number are the coordinates of the error in the XML bitstream.
2010-11-20 14:38:37.996568 11033 UserTrace BIP4460I: Message propagated to out terminal from node 'UT2.Passthrough1'.
A pass through node has received a message and is propagating it to any nodes connected to its out terminal.
No user action required.

Threads encountered in this trace:
11033
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Sun Nov 21, 2010 12:16 am    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

Well have you tried unpacking the soap message with the SOAP extract nodes before the RCD?
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
prasadpav
PostPosted: Mon Nov 22, 2010 2:59 am    Post subject: Reply with quote

Centurion

Joined: 03 Oct 2004
Posts: 142

I tried that...it works, however, I loose SOAP headers when I extract the envelope
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » SOAPInput to MQOuput
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.