I have one service that is sending XML content to TN just fine now via wm.tn.doc.xml:recordToBizdoc and then wm.tn.submit
but I tried another one in what I thought was an identical way, just using a different input on the boundNode input. I can see the document submissions in the transaction log, but looking at the content tab says “Document content not available”. is there a more friendly error message of why the document content is not in TN? is this a common problem caused by something someone can easily point out?
I’ll keep playing with it, just thought I’d post in case someone has a good idea of what it may be, or things to try.
when I step thru the flow services that runs wm.tn.doc.xml:recordToBizdoc, this output is displayed in the system log…(I removed the dates for readability)
BizDocTypeReg: recognize and create starting [TRNSERV.000019.000030]
BizDocTypeReg: recognizing pipeline [TRNSERV.000019.000023]
BizDocTypeReg: pipeline will not be a wm.b2b.editn.EDITransactionDocType [TRNSERV.000019.000012]
BizDocTypeReg: pipeline will not be a wm.b2b.editn.EDIEnvelopeDocType [TRNSERV.000019.000012]
BizDocTypeReg: pipeline will not be a wm.b2b.editn.EDIGroupDocType [TRNSERV.000019.000012]
BizDocTypeReg: pipeline will not be a wm.EDIINT.doc.EDIINTEnvelopeDocType [TRNSERV.000019.000012]
BizDocTypeReg: pipeline will not be a com.wm.app.tn.doc.XMLDocType [TRNSERV.000019.000012]
BizDocTypeReg: pipeline will not be a wm.EDIINT.doc.EDIINTMDNEnvelopeDocType [TRNSERV.000019.0000
12]
BizDocTypeReg: input pipeline is UNKNOWN [TRNSERV.000019.000003]
what would cause the input pipeline to be unkown? in comparison to my other service, the pipeline in on this step is nearly identical. one instance of an IS doc, from a list that is being looped over, and the $iteration variable. and the IS doc is being mapped to the boundNode input of the recordToBizdoc service.
I resolved it. I stepped all the way into the recordToBizdoc and looked at the xml code it was sending in. the namespace I was using (pidx) was not defined in the root element.
back in IS, I added a string under the root document type with the name ‘xmlns:pidx’ and when creating the document, set the value equal to the URI of the PIDX namespace.
Is there not a way to bring in the namespace declaration automatically when you create the document type based on a schema that has a namespace? is there a way to assign the namespace declaration at the recordToBizdoc service level? if not, is there a way to assign a namespace declaration at the stringToDocument service level? or, more easily…where can I assign the namespace declaration for a document type?
Other way is you can declare namespace using the recordToDocument service which gives xmldata string and convert it to Node object and route to TN using wm.tn:receive or routeXML services
hmmm…that may work. but the WmTN package includes the ‘recordToBizdoc’ flow service, which uses ‘pub.web:stringToDocument’ rather than ‘recordToDocument’
and that was something interesting. I don’t find a stringToDocument service in the pub.web package/folder at all…I had to go into the filesystem under packages/WmPublic/ns/pub/web to just see the node.ndf file.
even thought the recordToBizdoc comes with stringToDocument, how could I invoke these services regularly if I can’t find them in the package/folder system?
You must be using wM IS 6.*. From “IntegrationServerBISReference.pdf” –
===== pub.web:stringToDocument
WmPublic. Deprecated—Use pub.xml:xmlStringToXMLNode. Converts an XML document (represented as a String, byte, or InputStream) to an XML node.
This is something from IS prior to 6.*. As the doc suggests, use pub.xml:xmlStringToXMLNode. This is not much more than a name change
I do have 6.1. odd that they have deprecated stringToDocument, but that is still the service used by the recordToBizdoc service. Thanks for the info, though.