I also tried those workarounds yesterday, they didn't work. I can't use enrich since the original scope is not visible. - Try with > operation scope > 1) Enrich mediator, I can't directly get from the operation scope. (AFAIK) 2) I set custom source and used an XPath to get the variable, this gave a VERY wired error. The message got persisted in the esb CONFIG ??? Seems like a bug.
I can't use aggregate mediator since I don't know the message count. - Use > the message count as -1 > 3) Tried this, I didn't send any response to the client not sure why. Timed out after a while. So I came up with following, it's not optimal, but it seems to work <proxy xmlns="http://ws.apache.org/ns/synapse" name="ItrateProxy" transports="https,http" statistics="disable" trace="disable" startOnLoad="true"> <target> <inSequence> <property name="myVar" scope="operation"> <soapenv:Body xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope "> <request xmlns=""/> </soapenv:Body> </property> <iterate continueParent="true" id="pizaIID" preservePayload="true" attachPath="//request" expression="//request/*" sequential="true"> <target> <sequence> <validate> <schema key="schema\mySchema.xsd"/> <on-fail> <drop/> </on-fail> </validate> <filter xpath="get-property('operation','myVar')//request/* "> <then> <enrich> <source clone="true" xpath="get-property('operation','myVar')//request/*"/> <target action="child" xpath="//request"/> </enrich> </then> <else/> </filter> <property name="myVar" expression="$body" scope="operation" type="OM"/> </sequence> </target> </iterate> <log level="custom"> <property name="x" expression="get-property('operation','myVar')"/> </log> </inSequence> </target> <description/> </proxy> Creation process for this went basically like this http://imgur.com/CmavqZB ;-) -- With regards, *Manu*ranga Perera. phone : 071 7 70 20 50 mail : [email protected]
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
