wso2-am 2.0.0でRESTful APIを作成しました。しかし、私は問題に直面していると、いくつかの助けになります。 URLパラメータを受け取るHTTPメソッドを取得するリソースがあり、POST経由でバックエンドに送信するSOAPペイロードを作成しました(バックエンドはsoap11です)。このためWSO2 API Manager 2.0.0- GETリクエストを受信してバックエンドにPOSTを送信
、私は '配列の' カスタム使用:問題なく、ここまで
<?xml version="1.0" encoding="UTF-8"?>
<sequence name="JSONtoSOAP" trace="disable"
xmlns="http://ws.apache.org/ns/synapse">
<log description="Entrada" level="full" separator=",">
<property expression="get-property('uri.var.cpfCnpj')" name="cpfcnpj" />
<property name="trace"
value="IN LOG" />
</log>
<property name="HTTP_METHOD" value="POST" scope="axis2" type="STRING" />
<property name="messageType" scope="axis2" type="STRING"
value="application/soap+xml" />
<enrich>
<source type="inline">
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body />
</soap:Envelope>
</source>
<target action="replace" type="envelope" />
</enrich>
<payloadFactory media-type="xml">
<format>
<man:QueryCustomerDetailsRequestMessage
xmlns:man="http://www.algartelecom.com.br/SOA/Service/ManageCustomerInformationPortalClientesReqCS">
<man:documentNumber>$1</man:documentNumber>
<man:tagetCRM />
</man:QueryCustomerDetailsRequestMessage>
</format>
<args>
<arg evaluator="xml" expression="get-property('uri.var.cpfCnpj')" />
</args>
</payloadFactory>
<property name="REST_URL_POSTFIX" value="" scope="axis2" />
<header name="Action" scope="default" value="queryCustomerDetails" />
<log description="Saida" level="full" separator=",">
<property name="trace" value="DEBUG LOG" />
</log>
</sequence>
を。
しかし、私はこのように、実行時例外が発生任意のrestClient(例やWSO2-AMストア用SOAPUI)からリソースを呼び出すようにしてみてください:コードと説明のタグが空であることを
<?xml version='1.0' encoding='UTF-8'?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<am:fault xmlns:am="http://wso2.org/apimanager">
<am:code/>
<am:type>Status report</am:type>
<am:message>Runtime Error</am:message>
<am:description/>
</am:fault>
</soap:Body>
</soap:Envelope>
注意し、サーバーのログを確認したところ、私は見つけました:
[2016-09-30 16:53:44,603] INFO - LogMediator STATUS = Executing default 'fault' sequence, ERROR_CODE = null, ERROR_MESSAGE = null
これは安らかなAPIを作成し、SOAPバックエンドを呼び出す正しい方法ですか?
誰でもこの問題について知っていますか? (私は、この機能はWSO2 ESBで機能すると信じています)。
誰かが助けてくれますか?
ありがとうございます!
試してみます。 – ycr