2012-04-03 66 views
0

我正在關注的微軟文檔 「使用微軟的BizTalk Server 2010與Microsoft Dynamics AX_AX2012.pdf交換文檔」。我有BizTalk收集的示例XML訂單創建,轉換並傳遞到AX,這是由AX入站端口收集,但然後我收到以下錯誤:AX 2012 ContractFilter不匹配

請求失敗,出現以下錯誤:由於EndpointDispatcher中的ContractFilter不匹配,Action'http://schemas.microsoft.com/dynamics/2008/01/services/SalesOrderService/Create'無法在接收方處理。這可能是因爲合同不匹配(發件人和收件人之間的操作不匹配)或發件人和收件人之間的綁定/安全性不匹配。檢查發送方和接收方是否有相同的合同和相同的綁定(包括安全要求,例如消息,傳輸,無)。

我是新來的斧頭,不知道如何以最佳方式解決此。我如何找到描述SalesOrderService/Create操作的WSDL?有什麼我失蹤?謝謝,羅布。

回答

0

我不知道的Dynamix AX,但在發生任何的錯誤消息所描述的問題,這是一個相當常見的錯誤。

在你已經在BizTalk創建的發送端口,確保:

  • 還要注意的是Soap Actions are case sensitive(即/創建不/創建)
  • WS-NetTcp的類型(你也可以嘗試WCF的定製與NetTcp綁定 - 配置 - 選項卡2#)
  • 在「配置」選項卡,在頂部(地址URL似乎是正確的)。請注意有關端口8201
  • 該點以下textarea的需要設置SOAP行動http://schemas.microsoft.com/Microsoft動力/ 2008/01 /服務/ SalesOrderService /讀

如果這不起作用,你可能會看到,如果有無論如何,讓Dynamix AX使用basicHttpBinding或wsHttpBinding公開其服務 - 這樣,使用像Fiddler這樣的工具來調試通信會容易得多。

回覆:你是如何看待的墨西哥/ WSDL工作? 希望AX有一個爲net.tcp端點啓用了http-get的mex端點。見WCF NetTcpBinding with mex

+0

使用各種WCF綁定可以與AX進行同步交換。但是,當交換大量數據時,這被認爲效率較低(從AX的角度來看) - 因此我想通過文件適配器證明異步通信。 – 2012-04-03 12:44:07