Интеграция Biztalk и SalesForce - PullRequest
1 голос
/ 29 марта 2012

Я пытаюсь связаться с SalesForce из Biztalk.

Чтобы создать POC, в который я только что вошел, я попробовал следующее: Visual Studio: Создать схему из партнера SalesForce wsdl

Biztalk: Я сделал место получения, которое читает сообщение login.xml, содержащее имя пользователя и пароль. Затем импортировал SforceService.BindingInfo.xml, чтобы сделать мой sendport и настроить фильтры для него.

When I run the example i get the following exception:
WcfSendPort_SforceService_Soap 
https://login.salesforce.com/services/Soap/u/24.0 
   System.InvalidOperationException: An action mapping was defined but BTS.Operation 
was not found in the message context. 
at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfClient 

Я хочу вызвать следующую операцию в веб-службе SalesForce:

<Operation Name="login" Action="" />

Есть идеи о том, как позвонить в систему без использования оркестровок?

1 Ответ

1 голос
/ 29 марта 2012

С http://msdn.microsoft.com/en-us/library/bb743856.aspx

Задание сопоставления действий для WCF. Действие в форме выражения не поддерживается. Необходимо указать сопоставление действий в диалоговом окне свойств транспорта WCF. Затем адаптер WCF выполнит поиск действия SOAP с помощью свойства контекста BTS.Operation, для которого оркестрация устанавливает имя операции на порту, куда отправляется сообщение.

Если исходящие сообщения маршрутизируются с использованием контентно-ориентированной маршрутизации (CBR), где свойство http://schemas.microsoft.com/BizTalk/2003/system-properties#Operation не установлено, адаптеры отправки WCF установят всю строку сопоставления действий для действия исходящих сообщений WCF. Чтобы обойти это, вы можете выполнить одно из следующих действий:

Установите поле действия на порте отправки на http://MyService/IMyContract/MyAction1.

Установить свойство контекста BTS.Operation в конвейере. Например, установите значение http://schemas.microsoft.com/BizTalk/2003/system-properties#Operation на Operation1.

Оставьте поле действия пустым и используйте вместо него действие из входящего сообщения.

Вы также можете использовать мастер использования служб BizTalk WCF, чтобы использовать службы WCF с помощью одного действия или сопоставления действий. Дополнительные сведения см. В разделе Использование мастера использования службы BizTalk WCF для использования службы WCF.

...