BizTalk 2006 R2 EDI

时间:2009-03-30 18:13:35

标签: web-services biztalk edi x12

我有一个工作编排来处理X12消息。现在我需要将业务流程公开为接受文本输入(X12消息)的Web服务(ASMX)并返回文本响应(X12响应)。如果我尝试使用该向导,生成的Web服务将公开X12请求的内部XML表示,而不是其原始的纯文本表示。

简而言之,我希望能够连接到Web服务(ASMX而不是WCF服务),发送X12请求(纯文本)并获得适当的响应(也是纯文本)。

我已经看过使用WCF的示例,但没有使用简单的Web服务。 你能帮我个忙吗?

谢谢!

3 个答案:

答案 0 :(得分:1)

一种可能的解决方案是创建一个SOAP处理程序,将纯文本转换为xml表示(因此BizTalk可以读取它),然后再返回。虽然我自己没有尝试过,但它可能会奏效。您需要为请求创建一个处理程序,并为响应创建一个处理程序,以拦截该字符串并将其转换为xml架构并再次返回。您还可以查看使用通用XML文档而不是字符串,这可能是最简单的。看看这篇文章:

http://blogs.msdn.com/richardbpi/archive/2006/11/10/exposing-biztalk-web-services-that-accept-generic-content.aspx

布莱恩

答案 1 :(得分:1)

虽然我没有尝试过,但我觉得如果没有一定程度的自定义编码,你将无法做到这一点。

当您使用向导发布Web服务时,BizTalk会使用所涉及的模式并将它们用作Web服务的类型,这几乎在所有情况下都有意义,但在您的情况下则不然。

但是,据我所知,没有好的方法可以通过SOAP获取EDI消息;你可以创建你的web服务来接受一个字符串消息,让客户“知道”它需要是X12,但是没有办法在WSDL中描述它。

但是,如果你这样做,你将获得X12消息进入管道,包含在一个元素(或类似的东西,取决于你如何修改你的web服务),然后你到达反汇编程序和对于编排,你必须有一些代码去除它,但这应该相对容易编写。

答案 2 :(得分:0)

我还要将我的x12 260文件翻译成SOAP Webservice。什么是最好的方式... iam转换为XML&发送到SOAP ...但这里有一个问题是我只得到3个xml,其中只包含该文件中的“交易详情”....我的Header&预告片不见了:(

任何人都遇到过这样的问题