无法使用BizTalk 2010中的WCF-Adapter调用Peoplesoft服务的一种方法 [英] Unable to call one way Peoplesoft service with WCF-Adapter from BizTalk 2010
问题描述
我们正在尝试使用WCF-BasicHttp绑定和单向发送端口调用不返回来自BizTalk 2010的任何响应的PeopleSoft服务的一种方式.
We are trying to call a one way PeopleSoft service that does not return any response from BizTalk 2010 with WCF-BasicHttp binding and one-way send port.
我们收到以下错误.
System.ServiceModel.CommunicationException:服务器未提供有意义的回复;这可能是由于合同不匹配,会话过早关闭或服务器内部错误引起的.
System.ServiceModel.CommunicationException: The server did not provide a meaningful reply; this might be caused by a contract mismatch, a premature session shutdown or an internal server error.
我已经阅读了有关此问题的几篇文章.有人说,由于可靠的传递功能,BizTalk不支持消息的一种方法
I have read several articles regarding this issue. This one says due to reliable delivery feature one way messages are not supported by BizTalk
social.msdn.microsoft.com/Forums/zh-CN/biztalkgeneral/thread/3a55a044-0a07-416c-9931-1dd6bdeb717a
social.msdn.microsoft.com/Forums/en-US/biztalkgeneral/thread/3a55a044-0a07-416c-9931-1dd6bdeb717a
这说我需要创建WCF代理,该代理将调用单向Web服务并将空消息返回到BizTalk,这样消息传递过程就不会超时等待答案. (如果可能,我想避免这种情况)
This one says I need to create WCF proxy that will call a one way web service and return an empty message to BizTalk so the messaging process doesn’t timeout waiting for an answer. (I would like to avoid this if possible)
www.pvle.be/2008/12/calling-one-way-wcf-service-with-biztalk-wcf-adapter-part-2/
www.pvle.be/2008/12/calling-one-way-wcf-service-with-biztalk-wcf-adapter-part-2/
在此线程的结尾,Rajesh说他们针对相同的问题使用了SOAP适配器. (不建议使用SOAP适配器)
At the end of this thread Rajesh says they used SOAP adapter for the same problem. (SOAP Adapter is deprecated)
在另一个话题中,拉杰什说
In another thread Rajesh says
正如Steef前面提到的,BizTalk中不支持严格的WCF发送端口的一种方法.因此,您可以尝试将单向发送端口更改为双向发送端口,然后在编排中忽略不需要的响应消息
As Steef mentioned earlier, a strict one way WCF-Send port is not supported in BizTalk. So you could try changing one-way send port to two-way send port and then you can ignore the response message in your orchestration if you dont need it
我尝试将单向发送端口更改为两向发送端口.我仍然遇到相同的错误.
I tried changing the one-way send port to two way send port. I'm still getting the same error.
所以我的问题是:
是否可以在不编写其他WCF代理的情况下调用不返回任何来自BizTalk 2010响应的服务?如果是,您可以提供一个分步示例吗?
Is it possible to call a service that does not return any response from BizTalk 2010 without writing additional WCF proxies? If yes, can you provide a step-by-step example?
感谢您耐心等待我的冗长帖子.
Thanks for your patience with my long post.
Alper
推荐答案
在这种情况下,我相信您将不得不为其编写代理. BizTalk完全是关于请求/响应的,而单向并不是人们发现的一种真正的方式.看看这篇文章
In this situation I believe your going to have to write a proxy for it. BizTalk is all about request / response and one-way is not really one way as people have found out. Take a look at this article here as it sheds some light on a similar topic.
这篇关于无法使用BizTalk 2010中的WCF-Adapter调用Peoplesoft服务的一种方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!