Forum Replies Created
-
AuthorPosts
-
If you want to embed a message as an Xml string into a Xml node of another message you can use this trick in a message assignment shape:
[code:1:e6d251cdc5]xmlDocVariable = innerMessage;
xpath(outerMessage, \"xpath to node\") = xmlDocVariable.DocumentElement.OuterXml[/code:1:e6d251cdc5]How are you passing the parameter to the servlet
Is it in the QueryString
e.g. http://server/ebXml/servlet.jsp?ParameterOr is it in the Http header
e.g. SOAPAction:\”ebXML\”Hi,
I don’t know the cause of this but I was trying to deploy the app from VS 2005 and I get an error stating that something can’t connect to SQL Server.
I would assume the problem is with VS trying to load the Message Box, but it is only a guess.
Any thoughts?
Mike 😉
Thank you..it works as charm..
Thanks. I was able to accomplish that by stripping FILE.ReceivedFileName in a custom pipeline component and promoting it as well. Works like a charm now.
If anyone else is looking to do the same thing, this blog site has good info on how to do just that (Look towards the end of the page)
http://geekswithblogs.net/synBoogaloo/
Thanks again
I’ve tried installing Biztalk on a Windows XP machine but I can’t select the \”MQSeries Agent\” option. Even after running the MQSConfigWiz.exe utility in the installation media.
I’m running v6.0 of the Web sphere MQ Client.
Any ideas?
>> My guess would be by changing the message to NewOrderNEBIPayload in the C# class, this message no longer matches the schema.
You were very much right about it. Fixed this one with a proper map as you suggested. /*It is my honor to pass along to you a virtual handshake from our team*/>> Can you explain what your C# class does to the message.
Another durty trick from us.
We have ebXML communication with the service provider. ebXML is basically XML with attachments. Each ebXML messages in the attachment contains a NEBI payload where one of the fields contains the actual XML payload as a string. Why make the life simple, right?
We couldn’t find the way to construct and send those messages from BizTalk directly. So what we do: we use C# \”servlet\” to create ebXML out of NEBI payload. This ebXML should be re-send if we do not get ACK whithin 5 minutes. So we need to use the correlation. This approach has a number of issues yet to be resolved.The most critical one: how to pass a parameter to a servlet via http send port together with the xml itself. /*Hope I’m not too greedy here asking too many questions. This is the last one!*/
>> If you wish to create an output message with no namespaces then you can just clear the target namespace property on the <schema> node of your schema.
Worked for NEBI payload. Thanks! Will not work for the inner payload because we cannot alter the schema from the Webservice provider, I’m afraid. So the cleaning is left to the servlet.Thanks, that seems to have done the trick.
Hi,
I would like to know if it’s possible to edit the EDI transport properties! Or better.. how can I list an adittional schema![img:bd63f602fd]http://img414.imageshack.us/img414/307/prop2ox.jpg[/img:bd63f602fd]
I’m using an EDI with D96A, I’ve made a XSD file and edited the codelist database, I would like to know what else do I need to do for the D96A to be listed (Without the covast \”plugin\”)!Thanks in adavance!
Catch-22
You can’t publish the web service without a schema and when you reference the web service a copy of the schema is created.
One thing you might like to try is not adding the web reference to your consumer application. But add a reference to the reporting assembly. And use the original schema to create the orchestration message and a SOAP send port to send it.
My guess would be by changing the message to NewOrderNEBIPayload in the C# class, this message no longer matches the schema.
The property definition for BuyerRef uses an Xpath string which is specific to the schema and will only work if the message matches the schema.If the xpath reference is invalid then you do not have access to the property field within the message – hence the errors
Can you explain what your C# class does to the message.
You say the message has no prefixes – does this mean you have removed the namespaces altogether or used removed the prefixes i.e using the default namespace.It should be possible to create a schema for NewOrderNEBIPayload and map directly to this schema, eliminating the intermediate message and C# class. If you wish to create an output message with no namespaces then you can just clear the target namespace property on the <schema> node of your schema.
I had tried setting the message’s BodyPart.Data to null, but not the entire returned message. Initial testing points to setting the entire message to null successfully consumes the message within the custom component.
Thanks Greg! I’ll continue testing to see if this does infact fix our problem.
–Scott
[b:00f2481ad0]greg.forsythe[/b:00f2481ad0]
Kindly thank you!>> The problem appears to be, there is no BuyerRef data in the message.
Do you make such a conclusion based on the first exception, or on the second one?
>> Are you able to view the suspended message with the Biztalk Administrator?
The message itself is fine, it contains <BuyerRef>1</BuyerRef> as expected.
>> How was the Order message created?
That is the tricky part. I construct an intermidiate message -NewOrderPayload- with a map, then I call C# class in a MessageAssign shape where the final order message -NewOrderNEBIPayload- is constructed. NewOrderNEBIPayload is just a wrapper for NewOrderPayload.According to the protocol, this message contains no prefixes (meaning no \”ns0:\”). Therefore I have to use NewOrderNEBIPayload(XMLNORM.AllowUnrecognizedMessage) = true;
in order to be able to send it via XMLTransmit pipeline.
In the same MessageAssign shape (following Flexible Correlation approach) I set
NewOrderNEBIPayload(Telenor_B2B_Integration.BuyerRef)=\”myCorrelationTokenValue\”;
when the NewOrderNEBIPayload is constructed just being paranoid.What I’d really like to understand is why can’t I simply use basic Correlation set in the first place (only Flexible seems to be working) and why do I have to initialize the BuyerRef property directly.
Hi Greg,
Thanks again. I’ve tried your method and it worked well.
Thank you very much.
Regards,
FredWhen you send a message and initialize a correlation, the data that you are correlating on, in this case the BuyerRef field, is extracted from the message and stored by the orchestration.
The problem appears to be, there is no BuyerRef data in the message.
Are you able to view the suspended message with the Biztalk Administrator?
How was the Order message created?April 6, 2006 at 8:19 PM in reply to: Orchestration exposed as web service — XmlDocument Type #13309Hi all,
I have an orchestration that I am attempting to expose as a web service where the in and out message type are untyped XmlDocument objects.
I can build, deploy and run the publishing wizard and generate the web service and add a reference to the WS from a basic VS.NET 2003 windows application.
Two things I’m not seeing well is the ability to receive the outgoing message, and I’m also getting an error I wouldn’t expect.
Here’s the client call:
[code:1:526496f1db]Function ProcessSalesFeed(ByVal xmlSale As XmlDocument) as XmlDocumentTry
Dim wsBTS As New BTSServices.ProcessSale
Dim xmlOut As New Xml.XmlDocumentwsBTS.ProcessSale(xmlSale)
Catch ex As Exception
MsgBox(ex.Message)
End TryEnd Function
[/code:1:526496f1db]The call to wsBTS.ProcessSale reports that it does not produce as value as I need it to, and when I make the actual call, I catch the following exception in HAT:
[code:1:526496f1db]specified cast is not valid[/code:1:526496f1db]
Any ideas?? Has anybody else has any success with using untyped messages within an orchestration exposed as a web service?
-Rich
-
AuthorPosts