【发布时间】:2013-03-04 09:09:43
【问题描述】:
我是这个领域的新手,我需要通过 ESB 访问我的 Web 服务。正如这里提到的 - Service Mediation Using Proxy Services 我试图创建它。之后我运行它并得到如下响应:
<TryitProxyError xmlns:h="http://wso2.org/ns/TryitProxy"
h:status="SOAP envelope error">org.apache.axis2.AxisFault:
The input stream for an incoming message is null.</TryitProxyError>
但我尝试使用 SOAPUi 运行相同的网络方法并获得预期的输出,如下所示:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<getPatientHistoryResponse xmlns="http://tilani.lk/">
<getPatientHistoryResult>
<NIC>123</NIC>
<FullName>ABC DEF</FullName>
<FirstName>ABC</FirstName>
<Surname>DEF</Surname>
<Title>Mr.</Title>
<Gender>M/Gender>
</getPatientHistoryResult>
</getPatientHistoryResponse>
</soap:Body>
</soap:Envelope>
这是什么原因?我使用 .net 创建了这个
我的 WSDL 地址 - http://localhost:2935/PatientRegService.asmx?WSDL
然后在
定义端点为 - http://localhost:2935/PatientRegService.asmx
编辑 我的代理配置如下:
<proxy xmlns="http://ws.apache.org/ns/synapse" name="PatientManagement" transports="https,http" statistics="disable" trace="disable" startOnLoad="true">
<target>
<outSequence>
<send/>
</outSequence>
<endpoint>
<address uri="http://localhost:2935/PatientRegService.asmx?WSDL"/>
</endpoint>
</target>
<publishWSDL uri="http://localhost:2935/PatientRegService.asmx?WSDL"/>
<description></description>
</proxy>
【问题讨论】:
-
你的代理配置是什么?
-
@Ratha - 我对这个领域完全陌生,我尝试了这里提到的docs.wso2.org/wiki/display/ESB460/Quick+Start+Guide 的客户代理,然后尝试使用 maninda 提到的通过代理.. 但仍然无法配置它。
-
你能给你的直通代理配置(即:突触配置)添加一个示例配置吗..检查一下,看看你是否得到响应。
标签: web-services wso2 wso2esb mediator