Wso2 如何在Developer Studio中捕获web服务输出
我们有一个web服务,它正在数据库表中创建一个记录,并在成功插入SOAP UI后以“成功”的形式给出响应/输出 我们在DeveloperStudio中开发了一个项目,并使用AddressEndPoint调用了这个webservice,并在ESB服务器上部署了CAR文件 webservice正在通过ESB成功调用,并且记录正在表中插入,但是我们无法在调用后使用log mediator(AddressEndPoint)mediator的任何位置记录“成功”状态,但它没有记录webservice响应。 以下是我的来源:Wso2 如何在Developer Studio中捕获web服务输出,wso2,wso2esb,wso2developerstudio,Wso2,Wso2esb,Wso2developerstudio,我们有一个web服务,它正在数据库表中创建一个记录,并在成功插入SOAP UI后以“成功”的形式给出响应/输出 我们在DeveloperStudio中开发了一个项目,并使用AddressEndPoint调用了这个webservice,并在ESB服务器上部署了CAR文件 webservice正在通过ESB成功调用,并且记录正在表中插入,但是我们无法在调用后使用log mediator(AddressEndPoint)mediator的任何位置记录“成功”状态,但它没有记录webservice响应。
<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
name="EslSfaOFAOMSOIntegrationPS"
startOnLoad="true"
statistics="disable"
trace="disable"
transports="http,https">
<target>
<inSequence>
<call>
<endpoint>
<address format="soap11"
uri="http://10.1.6.175:9763/services/EslSfaOMSODataService.SOAP11Endpoint/"/>
</endpoint>
</call>
<log level="full"/>
<datamapper config="gov:datamapper/EslSfaOFAOMSOIntegrationMapping.dmc"
inputSchema="gov:datamapper/EslSfaOFAOMSOIntegrationMapping_inputSchema.json"
inputType="XML"
outputSchema="gov:datamapper/EslSfaOFAOMSOIntegrationMapping_outputSchema.json"
outputType="XML"/>
<log description="" level="full"/>
<header name="Authorization"
scope="transport"
value="Basic cHdjLmV0aXNhbGF0OkZlcmd1c29uMTIz"/>
<log level="full"/>
<call>
<endpoint>
<address format="soap11"
uri="https://eere-test.scm.ap1.oraclecloud.com:443/soa-infra/services/default/DooDecompReceiveOrderExternalComposite/ReceiveOrderRequestService"/>
</endpoint>
</call>
<enrich>
<source clone="true" type="body"/>
<target property="ReceiveOrderServiceResponseMessage" type="property"/>
</enrich>
<log level="custom">
<property expression="get-property('ReceiveOrderServiceResponseMessage')"
name="moidSiddiqui"/>
</log>
<respond/>
</inSequence>
<outSequence/>
<faultSequence/>
</target>
<description/>
</proxy>
我在调用中介程序之后使用此属性来获取状态
<log>
property xmlns:ns="http://org.apache.synapse/xsd" name="Status"
expression="get property('axis2','HTTP_SC')"/>
</log>
属性xmlns:ns=”http://org.apache.synapse/xsd“name=”Status“
expression=“get属性('axis2','HTTP_SC')”/>
你可以在这里找到更多信息
获取我使用的服务的响应
<enrich>
<source clone="true" type="body"/>
<target property="Ouput_Respose_Service" type="property"/>
</enrich>
<log level="custom" separator=",">
<property expression="get-property('Ouput_Respose_Service')" name="Service_Response"/>
</log>
请详细说明或给出代码示例。您应该能够通过在ESB中使用Try enabling wirelogs[1]简单地进行日志记录,并检查ESB是否确实从webservice获得了“成功”响应。我启用了wirelogs,但它只是日志原始响应,而不是实际的webservice outputAlber:我已经共享了问题中的源代码,我已经按照您的建议添加了,我的webservice输出名称是“ReceiveOrderServiceResponseMessage”,但在carbon.log中,我针对属性名称得到了null Hi,您已经验证了第二个服务响应正常吗?,在第二次调用后添加完整日志,以查看产生的响应