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

Reply via email to