Service WSO2服务链接到服务的请求未发送到服务器,但以默认失败顺序结束,没有详细信息
我正在使用WSO2 ESB执行PoC 我有3个服务存根,1个是de request to Personen,它会将个人及其组织的CSV列表发回 然后为每个组织(Organization1和Organization2)提供两个服务,这些组织在其addPersoon方法中接受此CSV字符串 非常直接,迭代的东西。 但是,当我创建SOAP消息并将其发送到服务时,它没有被接收,而是以默认的“错误”序列结束,并且没有关于什么是错误的提示:Service WSO2服务链接到服务的请求未发送到服务器,但以默认失败顺序结束,没有详细信息,service,iterator,wso2,esb,chaining,Service,Iterator,Wso2,Esb,Chaining,我正在使用WSO2 ESB执行PoC 我有3个服务存根,1个是de request to Personen,它会将个人及其组织的CSV列表发回 然后为每个组织(Organization1和Organization2)提供两个服务,这些组织在其addPersoon方法中接受此CSV字符串 非常直接,迭代的东西。 但是,当我创建SOAP消息并将其发送到服务时,它没有被接收,而是以默认的“错误”序列结束,并且没有关于什么是错误的提示: TID: [0] [ESB] [2015-03-12 09:25:
TID: [0] [ESB] [2015-03-12 09:25:38,295] INFO {org.apache.synapse.mediators.builtin.LogMediator} - To: http://127.0.0.1:8080/Organisatie2/Organisatie2, WSAction: addPersoon, SOAPAction: addPersoon, MessageID: urn:uuid:368f931c-2b26-48cc-a84c-1cd27175154e, Direction: response, MESSAGE = Executing default "fault" sequence, ERROR_CODE = null, ERROR_MESSAGE = null, ERROR_DETAIL = null, ERROR_EXCEPTION = null, Envelope: <?xml version="1.0" encoding="utf-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><ns2:addPersoon xmlns:ns2="http://services.esb.phonax.com/"><persoon>ORG2, Verbaan, Georgina</persoon></ns2:addPersoon></soapenv:Body></soapenv:Envelope> {org.apache.synapse.mediators.builtin.LogMediator}
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://ws.apache.org/ns/synapse">
<registry provider="org.wso2.carbon.mediation.registry.WSO2Registry">
<parameter name="cachableDuration">15000</parameter>
</registry>
<proxy name="Distributor"
transports="http"
startOnLoad="true"
trace="enable"
statistics="enable">
<description/>
<target>
<inSequence>
<send receive="PersonenLijst">
<endpoint key="Personen"/>
</send>
</inSequence>
<outSequence>
<aggregate>
<completeCondition>
<messageCount/>
</completeCondition>
<onComplete xmlns:s12="http://www.w3.org/2003/05/soap-envelope"
xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/"
expression="/s11:Envelope/s11:Body/child::*[position()=1] | /s12:Envelope/s12:Body/child::*[position()=1]">
<drop/>
</onComplete>
</aggregate>
<send/>
</outSequence>
</target>
<publishWSDL uri="http://192.168.178.23:8080/Personen/Personen?wsdl"/>
</proxy>
<endpoint name="Organisatie2">
<wsdl service="Organisatie2"
port="Organisatie2Port"
uri="http://192.168.178.23:8080/Organisatie2/Organisatie2?wsdl"/>
</endpoint>
<endpoint name="Personen">
<wsdl service="Personen"
port="PersonenPort"
uri="http://192.168.178.23:8080/Personen/Personen?wsdl"/>
</endpoint>
<endpoint name="Organisatie1">
<wsdl service="Organisatie1"
port="Organisatie1Port"
uri="http://192.168.178.23:8080/Organisatie1/Organisatie1?wsdl"/>
</endpoint>
<sequence name="DistributePerson">
<payloadFactory media-type="xml">
<format>
<ns2:addPersoon xmlns:ns2="http://services.esb.phonax.com/">
<persoon xmlns="">$1</persoon>
</ns2:addPersoon>
</format>
<args>
<arg evaluator="xml" expression="//return[1]"/>
</args>
</payloadFactory>
<header name="Action" value="addPersoon"/>
<log level="full"/>
<switch xmlns:m0="http://services.samples" source="//persoon[1]">
<case regex=" ORG1.*">
<header name="To" value="http://127.0.0.1:8080/Organisatie1/Organisatie1"/>
<log level="full">
<property name="MSG" value="ORG1 BABY!"/>
</log>
<send>
<endpoint key="Organisation1"/>
</send>
</case>
<case regex=" ORG2.*">
<header name="To" value="http://127.0.0.1:8080/Organisatie2/Organisatie2"/>
<log level="full">
<property name="MSG" value="ORG2 BABY!"/>
</log>
<send>
<endpoint key="Organisation2"/>
</send>
</case>
<default>
<log>
<property name="symbol" expression="fn:concat('NO CASE FOR - ', //persoon[1])"/>
</log>
<drop/>
</default>
</switch>
<send/>
</sequence>
<sequence name="PersonenLijst">
<log level="full"/>
<iterate xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"
id="personID"
expression="//return">
<target sequence="DistributePerson"/>
</iterate>
</sequence>
<sequence name="fault">
<log level="full">
<property name="MESSAGE" value="Executing default "fault" sequence"/>
<property name="ERROR_CODE" expression="get-property('ERROR_CODE')"/>
<property name="ERROR_MESSAGE" expression="get-property('ERROR_MESSAGE')"/>
<property name="ERROR_DETAIL" expression="get-property('ERROR_DETAIL')"/>
<property name="ERROR_EXCEPTION" expression="get-property('ERROR_EXCEPTION')"/>
</log>
<drop/>
</sequence>
<sequence name="main">
<log/>
<drop/>
</sequence>
TID:[0][ESB][2015-03-12 09:25:38295]INFO{org.apache.synapse.mediators.builtin.LogMediator}-发送至:http://127.0.0.1:8080/Organisatie2/Organisatie2,WSAction:addPersoon,SOAPAction:addPersoon,消息ID:urn:uuid:368f931c-2b26-48cc-a84c-1cd27175154e,方向:响应,消息=执行默认的“故障”序列,错误代码=null,ERROR\u MESSAGE=null,ERROR\u DETAIL=null,ERROR\u EXCEPTION=null,信封:ORG2,Verbaan,Georgina{org.apache.synapse.mediators.builtin.LogMediator}
15000
$1
欢迎给这个新手任何建议,谢谢 当你说
“…并将其发送到未接收到的服务,而是以
默认的“故障”序列
您的意思是您将消息发送到代理服务还是单个服务?如果是后者,则需要获得代理服务的正确端点(通过单击consoleUI->services选项卡中的服务)。代理将链接您的服务
此外,如果消息流在任何地方碰到你能粘贴一些日志和soap请求吗 事实上我发现了这个问题。我使用JAX-WS,您需要@WebMethod注释中的“action”关键字。另外,由于某种原因,它只有在我在行中指定了结束点之后才开始工作,而没有引用。我还没有完全理解。