In the week 4 walkthrough of using datamapper to pass argument "code" to SOAP WS "getDeltaFlightsFlow", not matter what query string "code" value I passed in browser, the payload is still showing "SFO". Below is the Flow XML. What I might be missing here?
Thank you
<flow name="getDeltaFlightsFlow">
<http:listener config-ref="HTTP_Listener_Configuration" path="/delta" allowedMethods="GET" doc:name="HTTP"/>
<set-variable variableName="destination" value="# [(message.inboundProperties.'http.query.params'.code==empty) ? 'SFO' : message.inboundProperties.'http.query.params'.code]" doc:name="Set Destination"/>
<data-mapper:transform config-ref="String_To_Xml_findFlight_" input-ref="# [message.inboundProperties["http.method"]]" doc:name="String To Xml<findFlight>">
<data-mapper:input-arguments>
<data-mapper:input-argument key="destination">SFO</data-mapper:input-argument>
</data-mapper:input-arguments>
</data-mapper:transform>
<ws:consumer config-ref="Delta_Web_Service_Consumer" operation="findFlight" doc:name="Web Service Consumer"/>
<mulexml:jaxb-xml-to-object-transformer returnClass="com.mulesoft.training.FlightArray" jaxbContext-ref="JAXB_Context" doc:name="XML to JAXB Object"/>
<set-payload value="# [payload.flights]" doc:name="Set Payload to Flights"/>
<logger level="INFO" doc:name="Logger"/>
</flow>
Select the dataMapper
Double click on the input argument destination
replace Mule expression: "FLO" by # [flowVars.destination]
Now the mapper will use the variable destination as input