Я использую wso2esb 4.7.0 и wso2dss 3.1.0. На самом деле, в соответствии с моей конфигурацией прокси, он работает нормально. Даже он отображает сообщение об успешном завершении на стороне сервера, но не на стороне клиента, и в этом проблема. последняя конфигурация последовательности выглядит так:
<sequence xmlns="http://ws.apache.org/ns/synapse" name="Group_Seq3" onError="fault">
<property name="messageType" value="application/json" scope="axis2"/>
<property name="FORCE_ERROR_ON_SOAP_FAULT" value="true"/>
<property xmlns:ns="http://org.apache.synapse/xsd" xmlns:s="http://ws.wso2.org/dataservice" name="userid" expression="//s:userid/text()" scope="default" type="STRING"/>
<log level="custom">
<property name="service called" value="Group_seq3"/>
<property xmlns:ns="http://org.apache.synapse/xsd" name="userid" expression="get-property('userid')"/>
<property xmlns:ns="http://org.apache.synapse/xsd" name="usergroupid" expression="get-property('usergroupid')"/>
</log>
<property name="FORCE_ERROR_ON_SOAP_FAULT" value="true" scope="default" type="STRING"/>
<payloadFactory media-type="xml">
<format>
<p:Capp_insert_into_musergroupdetails_op xmlns:p="http://ws.wso2.org/dataservice">
<p:usergroupid>$1</p:usergroupid>
<p:userid>$2</p:userid>
</p:Capp_insert_into_musergroupdetails_op>
</format>
<args>
<arg xmlns:ns="http://org.apache.synapse/xsd" expression="get-property('usergroupid')" evaluator="xml"/>
<arg xmlns:ns="http://org.apache.synapse/xsd" expression="get-property('userid')" evaluator="xml"/>
</args>
</payloadFactory>
<property name="HTTP_METHOD" value="POST" scope="axis2" type="STRING"/>
<property name="RESPONSE" value="true" scope="default" type="STRING"/>
<property name="NO_ENTITY_BODY" action="remove" scope="axis2"/>
<send receive="Group_Seq4">
<endpoint>
<address uri="http://localhost:9764/services/Capp_GroupDataService/" format="soap11"/>
</endpoint>
</send>
</sequence>
а Group_Seq4 — это последовательность, в которой я написал пользовательскую конфигурацию полезной нагрузки для правильного ответа, например:
<sequence xmlns="http://ws.apache.org/ns/synapse" name="Group_seq4" onError="fault">
<property name="messageType" value="application/json" scope="axis2"/>
<property name="FORCE_ERROR_ON_SOAP_FAULT" value="true"/>
<log level="full"/>
<payloadFactory>
<format>
<ResponseJSON xmlns="">
<Body>
<Datalist>
<Data>Successfully Rows inserted</Data>
</Datalist>
</Body>
<Status>200</Status>
</ResponseJSON>
</format>
</payloadFactory>
<log level="custom">
<property name="Capp_UserGroupDetail_Seq" value="just before send"/>
</log>
<property name="messageType" value="application/json" scope="axis2"/>
<property name="HTTP_METHOD" value="POST" scope="axis2" type="STRING"/>
<property name="RESPONSE" value="true" scope="default" type="STRING"/>
<property name="NO_ENTITY_BODY" action="remove" scope="axis2"/>
<send/>
</sequence>
На стороне сервера показывает:
[2014-07-07 17:16:07,836] INFO - LogMediator service called = CappGroupService, requester userid = 395885751788635281, username = intelligynt.com/tusar|395885751788635281, password = 123456, contactname = sps14youtility14, phonenumber = 47390686756, userdetails = <usergroupdetails><contactname>sps14</contactname><phonenumber>4739068</phonenumber></usergroupdetails><usergroupdetails><contactname>youtility14</contactname><phonenumber>6756</phonenumber></usergroupdetails>
[2014-07-07 17:16:07,853] INFO - LogMediator service called = Group_seq1, userid1 = 395885751788635281, userdetails = <usergroupdetails><contactname>sps14</contactname><phonenumber>4739068</phonenumber></usergroupdetails><usergroupdetails><contactname>youtility14</contactname><phonenumber>6756</phonenumber></usergroupdetails>
[2014-07-07 17:16:07,867] INFO - LogMediator service called = atest, userid1 = 395885751788635281, usergroupid = 400431610974963490, userdetails = <usergroupdetails><contactname>sps14</contactname><phonenumber>4739068</phonenumber></usergroupdetails><usergroupdetails><contactname>youtility14</contactname><phonenumber>6756</phonenumber></usergroupdetails>
[2014-07-07 17:16:07,868] INFO - LogMediator service called = atest after payload, userid1 = sps14youtility14
[2014-07-07 17:16:07,870] INFO - LogMediator service called = test, usergroupid = 400431610974963490, userdetail = <userdetails><usergroupdetails><contactname>sps14</contactname><phonenumber>4739068</phonenumber></usergroupdetails><usergroupdetails><contactname>youtility14</contactname><phonenumber>6756</phonenumber></usergroupdetails></userdetails>
[2014-07-07 17:16:07,880] INFO - LogMediator service called = Group seq2, usergroupid = 400431610974963490, userdetails = <userdetails><usergroupdetails><contactname>sps14</contactname><phonenumber>4739068</phonenumber></usergroupdetails><usergroupdetails><contactname>youtility14</contactname><phonenumber>6756</phonenumber></usergroupdetails></userdetails>
[2014-07-07 17:16:07,880] INFO - LogMediator service called = Group seq2, usergroupid = 400431610974963490, userdetails = <userdetails><usergroupdetails><contactname>sps14</contactname><phonenumber>4739068</phonenumber></usergroupdetails><usergroupdetails><contactname>youtility14</contactname><phonenumber>6756</phonenumber></usergroupdetails></userdetails>
[2014-07-07 17:16:07,881] INFO - LogMediator To: http://www.w3.org/2005/08/addressing/anonymous, WSAction: , SOAPAction: , MessageID: urn:uuid:fef5c93d-a70f-4569-b7fc-a68b8be53c8f, Direction: response, Message = user exist..directly inserting details in musergroupdetail
[2014-07-07 17:16:07,881] INFO - LogMediator To: http://www.w3.org/2005/08/addressing/anonymous, WSAction: , SOAPAction: , MessageID: urn:uuid:41855f56-eb26-49d4-8eaf-2bc23878e830, Direction: response, Message = user exist..directly inserting details in musergroupdetail
[2014-07-07 17:16:07,884] INFO - LogMediator CappGroupService = inside outSequence
[2014-07-07 17:16:07,890] INFO - LogMediator To: http://www.w3.org/2005/08/addressing/anonymous, WSAction: , SOAPAction: , MessageID: urn:uuid:96db545a-00f4-4521-8aca-8c8c9a1b6eb5, Direction: response, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><Fault><faultcode>axis2ns116:Client</faultcode><faultstring>The endpoint reference (EPR) for the Operation not found is http://localhost:9764/services/Capp_GroupDataService/ and the WSA Action = null. If this EPR was previously reachable, please contact the server administrator.</faultstring><detail/></Fault></soapenv:Body></soapenv:Envelope>
[2014-07-07 17:16:07,890] INFO - LogMediator Capp_UserGroupDetail_Seq = just before send
[2014-07-07 17:16:07,892] INFO - LogMediator To: http://www.w3.org/2005/08/addressing/anonymous, WSAction: , SOAPAction: , MessageID: urn:uuid:f0309d34-1ad1-440b-bba9-2a77893909e2, Direction: response, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><axis2ns117:REQUEST_STATUS xmlns:axis2ns117="http://ws.wso2.org/dataservice">SUCCESSFUL</axis2ns117:REQUEST_STATUS></soapenv:Body></soapenv:Envelope>
[2014-07-07 17:16:07,892] INFO - LogMediator Capp_UserGroupDetail_Seq = just before send
Но на стороне клиента он показывает предыдущий вывод последовательности как:
{"Capp_insert_into_musergroupdetails_op":{"usergroupid":"400423758575175449","userid":"400329480066827979"}}
почему так?? в соответствии с моей конфигурацией моя пользовательская фабрика полезной нагрузки верна ... потому что я использовал ту же конфигурацию раньше, и она работает нормально, их ... тогда почему не должно быть здесь?