Hi Niek
> Thank you again for the quick response. I have also tried this but thr
> problem seems that properties set in the inSequence are not available
> in the outSequence
This cant be! I just tested this before I shared the configuration...
Which version of Synapse are you using? I tried with a snapshot from
probably a few weeks back..
> <inSequence>
> <property action='set' name="filename"
> expression="fn:concat(get-property('SYSTEM_DATE', 'yyMMddHHmmss') ,
> '-', get-property('transport', 'FILE_NAME'), '.xml')"
> scope='transport' />
> <log level="custom">
> <property name="show-name"
> expression="get-property('transport','filename')" />
## Don't do this.. if you want to check if the 'filename' property was
set correctly as required to be read in the outSequence, just use
get-property('filename') and drop the transport scope this time..
> So first I compose the name and assign it to the property filename.
> Next I write the variable to the log. Now I am sure the variable is
> set correctly.
Well .. the code is right to set it.. but your reading was faulty..
> <outSequence>
> <log level="custom">
> <property name="-filename-" expression="get-property('transport',
> 'filename')" />
> </log>
This is wrong.. you can share properties only in the default scope - and
thus you will not have the transport scope available during inSequence
in your outSequence
> <property name="transport.vfs.ReplyFileName"
> expression="get-property('filename', 'transport')" />
Make sure to mark this message as OUT_ONLY too as shown in my example

Cheers
asankha

-- 
Asankha C. Perera
AdroitLogic, http://adroitlogic.org

http://esbmagic.blogspot.com




Reply via email to