После долгих часов чтения и понимания синтаксиса wso2.Ниже приведено решение моей проблемы после удаления отображения URL в моей последовательности API, поскольку оно мешало моему посреднику вызовов, и я добавил blocking
, чтобы он был true
, чтобы мой вызов был синхронным
<?xml version="1.0" encoding="UTF-8"?>
<sequence name="balanceEnquirySeqIN" trace="disable" xmlns="http://ws.apache.org/ns/synapse">
<log level="custom">
<property expression="json-eval($.)" name="in_request"/>
</log>
<switch source="json-eval($.agentInstitutionCode)">
<case regex="001">
<payloadFactory media-type="json">
<format>{
"channel": "",
"type": "",
"customerId": "$1",
"customerIdType": "",
"submissionTime": "",
"reqTranId": "$2",
"passcode": ""
}
</format>
<args>
<arg evaluator="json" expression="$.agentAccountNumber"/>
<arg evaluator="json" expression="$.requestID"/>
</args>
</payloadFactory>
<log level="custom">
<property expression="json-eval($.)" name="CHANGED_REQUEST"/>
</log>
<call blocking="true"/>
<property name="messageType" scope="default" type="STRING" value="application/json"/>
<log level="custom">
<property expression="json-eval($.)" name="DATA_RETURNED"/>
</log>
<enrich>
<source clone="true" type="inline">
<direct xmlns="">001</direct>
</source>
<target action="child" type="body"/>
</enrich>
<log level="full">
<property expression="json-eval($.)" name="msg2"/>
</log>
<loopback/>
</case>
</switch>
</sequence>