[英]WSO2 requests from BPS (BPEL) to ESB with missing soapAction header
我正在使用WSO2 BPS 3.2.0,WSO2應用程序服務器5.2.1和WSO2身份服務器5.0.0。 我制作了BPS流程,該流程通過HTTPS與基本身份驗證安全的ESB代理服務進行通信。 工藝有肥皂作用的問題。 請求以故障響應結束:
<message><fault><faultcode xmlns:soapenv="http://schemas.xmlsoap.org/soa...">axis2ns10:Client</faultcode><faultstring xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">The endpoint reference (EPR) for the Operation not found is /services/RepositoryService and the WSA Action = . If this EPR was previously reachable, please contact the server administrator.</faultstring></fault></message>
我使用此博客中的統一端點(UEP)。
<wsa:EndpointReference
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3schools.com uep_schema.xsd"
xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/">
<wsa:Action>http://docs.oasis-open.org/ns/cmis/ws/200908/RepositoryServicePort/getRepositoriesRequest</wsa:Action>
<wsa:Metadata>
<id>SInvokeEPR</id>
<transport type="http">
<authorization-username>user</authorization-username>
<authorization-password>pass</authorization-password>
</transport>
</wsa:Metadata>
</wsa:EndpointReference>
我發現分配有一些可能性
<bpel:literal>
<wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing">http://docs.oasis-open.org/ns/cmis/ws/200908/RepositoryServicePort/getRepositoriesRequest</wsa:Action>
</bpel:literal>
輸出變量屬性
<bpel:to variable="RepositoryServicePLRequest" header="Action"></bpel:to>
但這是行不通的。 但是我發現當我在ESB中啟用SOAP Message Tracer時,它開始工作。 為什么?
您可以在這篇文章中使用修復
添加參數
<parameter name="disableOperationValidation" locked="false">true</parameter>
到WSO2 ESB中的代理配置
最近兩天我一直在解決這個問題。 我對您的問題和答案有幾點要點。 讓您知道我沒有ESB,所以我有同樣的問題,但是我不能使用這種方法來解決。
首先檢查您的第一個鏈接,您將看到沒有wsa:Action,因此您需要指定wsa:address。
第二個問題是您的SOAPACTION未設置。 如果使用SOAP 1.1,則需要此標頭,因此BPS會為您將其設置為“”,但是大多數服務器都需要實際操作。 為了解決這個問題,您需要在epr文件中啟用addressing。 這有點令人困惑,因為它添加了適當的ws尋址信息,但是它控制與之無關的SOAPACTION。
因此,要解決該問題,只需將您的epr設置如下:
<wsa:EndpointReference
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3schools.com uep_schema.xsd"
xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/">
**<wsa:Address>http://docs.oasis-open.org/ns/cmis/ws/200908/RepositoryServicePort</wsa:Address>**
<wsa:Metadata>
<id>SInvokeEPR</id>
<transport type="http">
<authorization-username>user</authorization-username>
<authorization-password>pass</authorization-password>
</transport>
**<qos>
<enableAddressing version="final" separateListener="true"/>
</qos>**
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.