Author |
Message
|
kimbert |
Posted: Thu Feb 14, 2008 4:29 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5543 Location: Southampton
|
Quote: |
...
(0x01000000):XmlDeclaration = (
(0x03000000):Version = '1.0'
(0x03000000):Encoding = 'UTF-8'
)
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:Envelope = (
...
|
The field type on the XML declaration is wrong. See http://publib.boulder.ibm.com/infocenter/wmbhelp/v6r1m0/topic/com.ibm.etools.mft.doc/ac67180_.htm
As far as the XMLNSC parser is concerned, the syntax element with name 'XmlDeclaration' is just an ordinary XML tag. So it outputs it as the root tag of the XML document. Then it encounters the soap envelope, and correctly throws an exception because otherwise it would output an XML document with two root tags.
So how did this happen? Because when you saved the input message in the environment, you forgot to specify a domain. When you copied the XMLNSC data into the domain-less environment, all the parser-specific field types were automatically zeroed.
Solution
Code: |
CREATE LASTCHILD OF Environment NAME 'mySavedMessage' DOMAIN 'XMLNSC' |
|
|
Back to top |
|
 |
rsmile |
Posted: Thu Feb 14, 2008 6:01 am Post subject: |
|
|
Apprentice
Joined: 13 Feb 2008 Posts: 38
|
I tried doing the same by setting the domain to the environment root by using the following code:
Quote: |
CREATE LASTCHILD OF Environment.Variables DOMAIN('XMLNSC') NAME 'OriginalMsg';
SET Environment.Variables.OriginalMsg = InputRoot.XMLNSC; |
Before the input goes to the next XMLT node there is an RCD that is setting the domain to XMLNSC.
Still I get the error below:
Quote: |
(
(0x01000000):Properties = (
(0x03000000):MessageSet = ''
(0x03000000):MessageType = ''
(0x03000000):MessageFormat = ''
(0x03000000):Encoding = 273
(0x03000000):CodedCharSetId = 437
(0x03000000):Transactional = TRUE
(0x03000000):Persistence = FALSE
(0x03000000):CreationTime = GMTTIMESTAMP '2008-02-14 13:54:59'
(0x03000000):ExpirationTime = -1
(0x03000000):Priority = 0
(0x03000000):ReplyIdentifier = X'000000000000000000000000000000000000000000000000'
(0x03000000):ReplyProtocol = 'MQ'
(0x03000000):Topic = NULL
(0x03000000):ContentType = ''
)
(0x01000000):MQMD = (
(0x03000000):SourceQueue = 'Input'
(0x03000000):Transactional = TRUE
(0x03000000):Encoding = 273
(0x03000000):CodedCharSetId = 437
(0x03000000):Format = 'MQSTR '
(0x03000000):Version = 2
(0x03000000):Report = 0
(0x03000000):MsgType = 8
(0x03000000):Expiry = -1
(0x03000000):Feedback = 0
(0x03000000):Priority = 0
(0x03000000):Persistence = 0
(0x03000000):MsgId = X'414d5120444944455620202020202020921db4472000141f'
(0x03000000):CorrelId = X'000000000000000000000000000000000000000000000000'
(0x03000000):BackoutCount = 0
(0x03000000):ReplyToQ = ' '
(0x03000000):ReplyToQMgr = 'DIDEV '
(0x03000000):UserIdentifier = 'rcherukuri '
(0x03000000):AccountingToken = X'16010515000000dbeb0c503b245e6907e53b2bf003000000000000000000000b'
(0x03000000):ApplIdentityData = ' '
(0x03000000):PutApplType = 11
(0x03000000):PutApplName = 'ava\jdk1.5.0_14\bin\java.exe'
(0x03000000):PutDate = DATE '2008-02-14'
(0x03000000):PutTime = GMTTIME '13:54:59'
(0x03000000):ApplOriginData = ' '
(0x03000000):GroupId = X'000000000000000000000000000000000000000000000000'
(0x03000000):MsgSeqNumber = 1
(0x03000000):Offset = 0
(0x03000000):MsgFlags = 0
(0x03000000):OriginalLength = -1
)
(0x01000000):XMLNSC = (
(0x01000400):XmlDeclaration = (
(0x03000100):Version = '1.0'
(0x03000100):Encoding = 'UTF-8'
)
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:Envelope = (
(0x03000102)http://www.w3.org/2000/xmlns/:soapenv = 'http://schemas.xmlsoap.org/soap/envelope/'
(0x03000102)http://www.w3.org/2000/xmlns/:web = 'http://datashare.nyc.gov/schema/webservice'
(0x03000102)http://www.w3.org/2000/xmlns/:arr = 'http://datashare.nyc.gov/schema/exchange/arrestreport'
(0x03000102)http://www.w3.org/2000/xmlns/:xsl = 'http://www.w3.org/1999/XSL/Transform'
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:Header = (
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:DoittHeader = (
(0x03000100):version = '1.0'
(0x01000000):service = (
(0x03000100):version = '1.0'
(0x03000000):serviceId = 'ARRESTREPORT'
)
(0x01000000):user = (
(0x03000000):userId = 'User01'
(0x01000000):securityToken =
)
(0x01000000):context = (
(0x03000000):externalId = 'NYPD'
(0x03000000):instanceId = 'Instanceid01'
)
(0x03000000):audit = 'true'
(0x03000000):logLevel = '1'
)
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:ExchangeHeader = (
(0x03000100):version = '1.0'
(0x01000000):description = (
(0x03000100):version = '1.0'
(0x03000000):id = 'id'
(0x03000000):name = 'name'
(0x03000000):group = 'group'
)
(0x01000000):validation = (
(0x03000000):validate = 'true'
(0x03000000):id = '10'
)
(0x01000000):transformation = (
(0x03000000):transform = 'true'
(0x03000000):id = '20'
)
(0x01000000):persistence = (
(0x03000000):persist = 'false'
(0x03000000):id = '30'
)
(0x01000000):publication = (
(0x03000000):publish = 'true'
(0x03000000):id = '10'
)
)
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:ValidationHeader = (
(0x03000100):id = '10'
(0x03000100):version = '1.0'
(0x03000000):type = 'XSLT'
(0x01000000):xsltContext = (
(0x03000100):version = '1.0'
(0x03000000):source = 'INLINE'
(0x01000000):file = (
(0x03000000):name = 'arrestReport.xsl'
(0x03000000):directory = 'InputValidation'
)
(0x01000000):db = (
(0x03000000):name = 'XSLT'
(0x03000000):xsltId = 'REPORT1'
)
(0x01000000):xslt = (
(0x01000000)http://www.w3.org/1999/XSL/Transform:stylesheet = (
(0x03000100):id = 'arrestssId'
(0x03000100):version = '1.0'
(0x03000102)http://www.w3.org/2000/xmlns/:soapenv = 'http://schemas.xmlsoap.org/soap/envelope/'
(0x03000102)http://www.w3.org/2000/xmlns/:arr = 'http://datashare.nyc.gov/schema/exchange/arrestreport'
(0x03000102)http://www.w3.org/2000/xmlns/:xsl = 'http://www.w3.org/1999/XSL/Transform'
(0x01000000)http://www.w3.org/1999/XSL/Transform:template = (
(0x03000100):match = '/'
(0x01000000):ValidationResult = (
(0x01000000)http://www.w3.org/1999/XSL/Transform:if = (
(0x03000100):test = 'string-length(/soapenv:Envelope/soapenv:Body/arr:ArrestReportDocument/arrestee/id/arrestId) <13'
(0x01000000)http://www.w3.org/1999/XSL/Transform:value-of = (
(0x03000100):select = '/soapenv:Envelope/soapenv:Body/arr:ArrestReportDocument/arrestee/id/firstName'
)
)
(0x01000000)http://www.w3.org/1999/XSL/Transform:if = (
(0x03000100):test = 'string-length(/soapenv:Envelope/soapenv:Body/arr:ArrestReportDocument/arrest/location/state) > 2'
(0x03000000)http://www.w3.org/1999/XSL/Transform:message = 'State value can not be greater than 2 characters'
(
(0x03000100):terminate = 'yes'
)
)
)
)
)
)
)
(0x01000000):wsContext = (
(0x03000100):version = '1.0'
(0x03000000):operation = '/ArrestReportValidation/ArrestReportInterfaceImpl'
(0x03000000):url = '192.168.41.24:7001'
)
(0x01000000):mrmContext = (
(0x03000100):version = '1.0'
(0x03000000):messageSet = 'messageSet'
(0x03000000):messageType = 'messageType'
(0x03000000):messageFormat = 'messageFormat'
)
)
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:TransformationHeader = (
(0x03000100):id = '20'
(0x03000100):version = '1.0'
(0x03000000):type = 'XSLT'
(0x01000000):xsltContext = (
(0x03000100):version = '1.0'
(0x03000000):source = 'DB'
(0x01000000):file = (
(0x03000000):name = 'arrestReport.xsl'
(0x03000000):directory = 'InputValidation'
)
(0x01000000):db = (
(0x03000000):name = 'XSLT'
(0x03000000):xsltId = 'REPORT2'
)
(0x01000000):xslt = (
(0x01000000)http://www.w3.org/1999/XSL/Transform:stylesheet = (
(0x03000100):id = 'arrestssId1'
(0x03000100):version = '1.0'
(0x03000102)http://www.w3.org/2000/xmlns/:soapenv = 'http://schemas.xmlsoap.org/soap/envelope/'
(0x03000102)http://www.w3.org/2000/xmlns/:arr = 'http://datashare.nyc.gov/schema/exchange/arrestreport'
(0x03000102)http://www.w3.org/2000/xmlns/:xsl = 'http://www.w3.org/1999/XSL/Transform'
(0x01000000)http://www.w3.org/1999/XSL/Transform:template = (
(0x03000100):match = '/'
(0x01000000):ValidationResult = (
(0x01000000)http://www.w3.org/1999/XSL/Transform:if = (
(0x03000100):test = 'string-length(/soapenv:Envelope/soapenv:Body/arr:ArrestReportDocument/arrestee/id/arrestId) <13'
(0x01000000)http://www.w3.org/1999/XSL/Transform:value-of = (
(0x03000100):select = '/soapenv:Envelope/soapenv:Body/arr:ArrestReportDocument/arrestee/id/lastName'
)
)
(0x01000000)http://www.w3.org/1999/XSL/Transform:if = (
(0x03000100):test = 'string-length(/soapenv:Envelope/soapenv:Body/arr:ArrestReportDocument/arrest/location/state) > 2'
(0x03000000)http://www.w3.org/1999/XSL/Transform:message = 'State value can not be greater than 2 characters'
(
(0x03000100):terminate = 'yes'
)
)
)
)
)
)
)
(0x01000000):wsContext = (
(0x03000100):version = '1.0'
(0x03000000):operation = '/ArrestReportValidation/ArrestReportInterfaceImpl'
(0x03000000):url = '192.168.41.24:7001'
)
(0x01000000):mrmContext = (
(0x03000100):version = '1.0'
(0x03000000):messageSet = 'messageSet'
(0x03000000):messageType = 'messageType'
(0x03000000):messageFormat = 'messageFormat'
)
)
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:PersistanceHeader = (
(0x03000100):id = '10'
(0x03000100):version = '1.0'
(0x03000000):content = 'BINARY'
(0x01000000):storagetype = (
(0x01000000):dbStorage = (
(0x03000000):dbURL = 'dbURL'
(0x03000000):dbName = 'dbName'
)
(0x01000000):queueStorage = (
(0x03000000):queueName = 'queueName'
(0x03000000):queueManager = 'queueManager'
)
(0x01000000):fileStorage = (
(0x03000000):fileName = 'fileName'
(0x03000000):directory = 'directory'
)
)
(0x03000000):binaryContentType = 'PDF'
(0x01000000):pocketContentType = (
(0x03000000):pocketSize = '1'
(0x03000000):docType = 'BINARY'
)
)
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:PublicationHeader = (
(0x03000100):id = '10'
(0x03000100):version = '1.0'
)
)
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:Body = (
(0x03000100)http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd:Id = 'Body-6d6012b1-c7a8-425f-b3e8-cfcf082a823d'
(0x03000102)http://www.w3.org/2000/xmlns/:wsu = 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd'
(0x01000000)http://datashare.nyc.gov/schema/exchange/arrestreport:ArrestReportDocument = (
(0x01000000):arrestee = (
(0x01000000):id = (
(0x03000000):arrestId = 'NYC-ARRA4-01'
(0x03000000):firstName = 'Siva'
(0x03000000):lastName = 'Natarajan'
)
(0x03000000):gender = 'Male'
(0x03000000):age = '30'
(0x03000000):alias = 'God'
)
(0x01000000):arrest = (
(0x01000000):location = (
(0x03000000):street = 'Wall Street'
(0x03000000):city = 'New York'
(0x03000000):state = 'NY'
(0x03000000):zip = '19380'
)
(0x03000000):processingType = 'Testing'
(0x03000000):isFingerPrintable = 'true'
(0x03000000):isCopySent = 'false'
(0x01000000):incidentData = (
(0x03000000):comment = 'Incident1'
)
(0x01000000):deskAppearanceData = (
(0x03000000):comment = 'Desk1'
)
(0x01000000):bookingData = (
(0x03000000):comment = 'Booking Comment1'
)
(0x03000000):topChargeMethodType = 'TopCharge'
(0x03000000):crimeEventCode = 'CrimeEvent'
)
(0x01000000):arrestingOfficer = (
(0x03000000):firstName = 'Farhan'
(0x03000000):lastName = 'Abbasi'
(0x03000000):internalRank = 'Officer'
(0x03000000):command = 'Command01'
(0x03000000):shieldNo = '2343'
)
(0x01000000):charges = (
(0x01000000):chargeCode = (
(0x03000000):code = '200'
(0x03000000):class = 'Roe'
(0x03000000):title = 'Test'
(0x03000000):counts = '1'
(0x03000000):attemptedFlag = 'true'
(0x03000000):legalLanguage = 'Y'
)
)
)
)
)
)
)
|
|
|
Back to top |
|
 |
kimbert |
Posted: Thu Feb 14, 2008 6:45 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5543 Location: Southampton
|
Where is the error? That looks like a perfectly good message tree now. |
|
Back to top |
|
 |
rsmile |
Posted: Fri Feb 15, 2008 2:11 am Post subject: |
|
|
Apprentice
Joined: 13 Feb 2008 Posts: 38
|
The message flow was still failing to give proper output though we had set the domain accordingly.
But we tried applying the latest fix pack for MB 6.0 (fixpack 6.0.0.6) Runtime.
When we did this the flows started working fine.
Thank you every one for your responses & helping us solve the problem.
[/b] |
|
Back to top |
|
 |
kimbert |
Posted: Fri Feb 15, 2008 2:40 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5543 Location: Southampton
|
Still very puzzled about your last post:
Quote: |
Still I get the error below: |
which did not contain any error at all.
Please can you describe the problem which you solved by upgrading to FP 6.0.0.6. It is your opportunity to give something back to this forum. |
|
Back to top |
|
 |
rsmile |
Posted: Fri Feb 15, 2008 3:22 am Post subject: |
|
|
Apprentice
Joined: 13 Feb 2008 Posts: 38
|
There was a problem with the XMLT transformation unable to retain the name spaces after the transformation. which seems to be fixed in FP 6.0.0.6.
So, though we had set the domain while copying the message to the environment and we were getting proper output as I posted in the trace that I had posted and kimbert said it to be a valid message, the message was going to the failure terminal with out any exception list.
So the last resort was to apply a fixpack as we had observed that the fixpack 6.0.0.6 was having some fixes with XMLT.
After we applied the FP the message was going to the out terminal and finally being successful. |
|
Back to top |
|
 |
|