Author |
Message
|
pcelari |
Posted: Thu Oct 15, 2009 5:33 am Post subject: problem creating SOAP tree from bitstream |
|
|
Chevalier
Joined: 31 Mar 2006 Posts: 411 Location: New York
|
Hello,
I'm getting "problem creating SOAP tree from bitstream" after a SOAP request node receives response from WS server. It's not an exception though. I search the internet, found only two related postings, none contains an answer.
Can any expert please share some insight where to look for the cause?
thanks a lot.
 _________________ pcelari
-----------------------------------------
- a master of always being a newbie |
|
Back to top |
|
 |
kishoreraju |
Posted: Thu Oct 15, 2009 6:13 am Post subject: |
|
|
Disciple
Joined: 30 Sep 2004 Posts: 156
|
you will get these kind of errors only when the response message is not compatable with the structure of WSDL.
Get latest WSDL and create the Message set and test it |
|
Back to top |
|
 |
kimbert |
Posted: Thu Oct 15, 2009 6:52 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
How do you know it's not an exception? Have you taken a user trace ( with the debugger disconnected )? |
|
Back to top |
|
 |
pcelari |
Posted: Thu Oct 15, 2009 8:13 am Post subject: |
|
|
Chevalier
Joined: 31 Mar 2006 Posts: 411 Location: New York
|
Yes, I did. it turns into an exception only when the msg reaches a downstream SOAPExtract node. The exception is
java.lang.RuntimeException: An invalid SOAP message was received in the SOAPExtract node: SOAPExtract.
This apparently confirms what kishoreraju suggested. I'll check with the WS providing developer and get back. _________________ pcelari
-----------------------------------------
- a master of always being a newbie |
|
Back to top |
|
 |
tariqjawed83 |
Posted: Tue Nov 24, 2009 6:38 pm Post subject: Same Problem |
|
|
Newbie
Joined: 24 Nov 2009 Posts: 6
|
Did you solved the problem, I have got the same problem after the soap-request node, getting error message
Problem creating SOAP tree from bitstream |
|
Back to top |
|
 |
edasnarik |
Posted: Sun Feb 07, 2010 9:56 pm Post subject: |
|
|
Acolyte
Joined: 10 Mar 2009 Posts: 61
|
got "problem creating SOAP tree from bitstream " when trying to parse a input message using SOAPInput Node. Any suggestions !? |
|
Back to top |
|
 |
Herbert |
Posted: Mon Feb 08, 2010 1:32 am Post subject: |
|
|
 Centurion
Joined: 05 Dec 2006 Posts: 146 Location: Leersum, The Netherlands
|
edasnarik wrote: |
got "problem creating SOAP tree from bitstream " when trying to parse a input message using SOAPInput Node. Any suggestions !? |
There is something wrong with your input message, look at the ExcepionList or do a user-trace. I found below compute module at the catch terminal very handy during development of a flow with SOAPInput as input node. It gives the complete ExceptionList back in the SOAP Fault message. (don't forget to include "Exception" at "Compute mode")
Code: |
CREATE COMPUTE MODULE SOAPInput_Catch
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
DECLARE ptrException REFERENCE TO InputExceptionList;
DECLARE ptrInsert REFERENCE TO InputExceptionList;
DECLARE msg CHAR '';
DECLARE LF CHAR CAST(x'0A0D' as char CCSID 819);
MOVE ptrException LASTCHILD;
WHILE lastmove(ptrException) DO
IF ptrException.Number is not null THEN
SET msg = msg || LF || LF || CAST(ptrException.Number as char) || ' - ' || ptrException.Text;
MOVE ptrInsert to ptrException.Insert;
WHILE lastmove(ptrInsert) DO
SET msg = msg || ' ''' || ptrInsert.Text || '''';
MOVE ptrInsert NEXTSIBLING;
END WHILE;
IF COALESCE(ptrException.Label, '') <> '' THEN
SET msg = msg || LF || ptrException.Label;
END IF;
END IF;
MOVE ptrException LASTCHILD;
END WHILE;
SET msg = msg || LF || LF;
THROW USER EXCEPTION MESSAGE 2951 VALUES(msg) ;
END;
END MODULE; |
|
|
Back to top |
|
 |
edasnarik |
Posted: Mon Feb 08, 2010 6:49 am Post subject: |
|
|
Acolyte
Joined: 10 Mar 2009 Posts: 61
|
Code: |
2010-02-08 20:15:34.747028 4584 UserTrace BIP3630I: The broker has received an HTTP message on port '7800' with URL path '/CommonBusinessProcessEventService'.
The broker is listening on port '7800' and has received a message sent by a client using URL path '/CommonBusinessProcessEventService'. This message will be sent on to either a SOAP Input Node or a SOAP Asynchronous Response Node.
No action required.
2010-02-08 20:15:34.748336 5940 UserTrace BIP6060I: Parser type ''Properties'' created on behalf of node 'CommonService.CBPE_Create_MF.CBE_SOAPInput' to handle portion of incoming message of length 0 bytes beginning at offset '0'.
2010-02-08 20:15:34.748489 5940 UserTrace BIP6061I: Parser type ''SOAP'' created on behalf of node 'CommonService.CBPE_Create_MF.CBE_SOAPInput' to handle portion of incoming message of length '4' bytes beginning at offset '0'. Parser type selected based on value ''SOAP'' from previous parser.
2010-02-08 20:15:34.748523 5940 UserTrace BIP3907I: Message received and propagated to 'out' terminal of input node 'CommonService.CBPE_Create_MF.CBE_SOAPInput'. |
This is the part of the message I see when I did a user trace. |
|
Back to top |
|
 |
smdavies99 |
Posted: Mon Feb 08, 2010 7:48 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
Did you think of putting a TraceNode after the SoapInput Node and look at what the message contains at that point. _________________ 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 |
|
 |
edasnarik |
Posted: Wed Feb 10, 2010 2:40 am Post subject: |
|
|
Acolyte
Joined: 10 Mar 2009 Posts: 61
|
Code: |
Root : ( ['SOAPRoot' : 0x5f76560]
(0x01000000):Properties = ( ['SOAPPROPERTYPARSER' : 0x464e530]
(0x03000000):MessageSet = 'test' (CHARACTER)
(0x03000000):MessageType = '' (CHARACTER)
(0x03000000):MessageFormat = '' (CHARACTER)
(0x03000000):Encoding = 546 (INTEGER)
(0x03000000):CodedCharSetId = 1208 (INTEGER)
(0x03000000):Transactional = FALSE (BOOLEAN)
(0x03000000):Persistence = FALSE (BOOLEAN)
(0x03000000):CreationTime = GMTTIMESTAMP '2010-02-10 10:37:44.733' (GMTTIMESTAMP)
(0x03000000):ExpirationTime = -1 (INTEGER)
(0x03000000):Priority = 0 (INTEGER)
(0x03000000):ReplyIdentifier = X'000000000000000000000000000000000000000000000000' (BLOB)
(0x03000000):ReplyProtocol = 'SOAP-AXIS2' (CHARACTER)
(0x03000000):Topic = NULL
(0x03000000):ContentType = 'text/xml' (CHARACTER)
(0x03000000):IdentitySourceType = '' (CHARACTER)
(0x03000000):IdentitySourceToken = '' (CHARACTER)
(0x03000000):IdentitySourcePassword = '' (CHARACTER)
(0x03000000):IdentitySourceIssuedBy = '' (CHARACTER)
(0x03000000):IdentityMappedType = '' (CHARACTER)
(0x03000000):IdentityMappedToken = '' (CHARACTER)
(0x03000000):IdentityMappedPassword = '' (CHARACTER)
(0x03000000):IdentityMappedIssuedBy = '' (CHARACTER)
)
(0x01000000):HTTPInputHeader = ( ['WSINPHDR' : 0x477fd18]
(0x03000000):X-Original-HTTP-Command = 'POST http://localhost:7800/CommonBusinessProcessEventService HTTP/1.1' (CHARACTER)
(0x03000000):Host = 'localhost' (CHARACTER)
(0x03000000):Content-Length = '3637' (CHARACTER)
(0x03000000):Content-Type = 'text/xml' (CHARACTER)
(0x03000000):Connection = 'close' (CHARACTER)
(0x03000000):X-Remote-Addr = '127.0.0.1' (CHARACTER)
(0x03000000):X-Remote-Host = '127.0.0.1' (CHARACTER)
(0x03000000):X-Server-Name = 'localhost' (CHARACTER)
(0x03000000):X-Server-Port = '7800' (CHARACTER)
(0x03000000):X-Query-String = '' (CHARACTER)
(0x03000000):X-Scheme = 'http' (CHARACTER)
)
(0x01000000):SOAP = |
This is the entire Trace for ${Root}. |
|
Back to top |
|
 |
edasnarik |
Posted: Wed Feb 10, 2010 2:58 am Post subject: |
|
|
Acolyte
Joined: 10 Mar 2009 Posts: 61
|
Disabling strict Validation (from Content and Value to None) , did the trick and I am able to see the message being parsed now.
Will have to check with the requirements now. |
|
Back to top |
|
 |
smdavies99 |
Posted: Wed Feb 10, 2010 3:37 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
edasnarik wrote: |
Disabling strict Validation (from Content and Value to None) , did the trick and I am able to see the message being parsed now.
Will have to check with the requirements now. |
Perhaps there is a difference between your message and the model you are validating it against? _________________ 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 |
|
 |
nukalas2010 |
Posted: Wed Dec 08, 2010 12:41 am Post subject: |
|
|
 Master
Joined: 04 Oct 2010 Posts: 220 Location: Somewhere in the World....
|
hii all,
I am also getting the same problemm...
getting "problem creating SOAP tree from bitstream" after SOAPRequest Node...
I had given correct WSDL's and XSD's watever it want..
WHile I am cheking this flow using SOAPUI tool.. it works fine and I am getting the correct response..
But while testing this flow from WPS Machine it shows this message like "problem creating SOAP tree from bitstream" after SOAPRequest Node..
Can anyone please share yr Ideas here... |
|
Back to top |
|
 |
harish_td |
Posted: Wed Dec 08, 2010 5:49 pm Post subject: |
|
|
Master
Joined: 13 Feb 2006 Posts: 236
|
nukalas2010 wrote: |
WHile I am cheking this flow using SOAPUI tool.. it works fine and I am getting the correct response..
But while testing this flow from WPS Machine it shows this message like "problem creating SOAP tree from bitstream" after SOAPRequest Node..
|
Check User Trace
What is the difference in the data (soapUI and WPS data)that is captured by the trace node that is placed after the SOAPRequest node tell you?
If the problem is in your SOAPRequest node, then clearly the back end does not like what you are sending via WPS route
Last edited by harish_td on Thu Dec 09, 2010 4:14 am; edited 1 time in total |
|
Back to top |
|
 |
kimbert |
Posted: Thu Dec 09, 2010 1:42 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
Why is there no mention of a user trace on this thread? If you get an error that you don't understand, your first action should be to check the system log. If you don't find anything interesting/useful there, your next step should be to take a user trace.
If you are getting a validation error then the user trace *will* contain the full text of the error. |
|
Back to top |
|
 |
|