Hi

Yeah use $simple{header.xxx}

On Thu, Jun 27, 2019 at 4:55 PM Steve Huston <shus...@riverace.com> wrote:
>
> Thank you for clarifying that the string for toD is already a simple string. 
> However, it still fails with the same exception at runtime:
>
> Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 
> 'header.SMID' in value "file://.?fileName=status-${header.SMID}.txt"
>
> -Steve
>
> > -----Original Message-----
> > From: Claus Ibsen <claus.ib...@gmail.com>
> > Sent: Wednesday, June 26, 2019 11:41 PM
> > To: users@camel.apache.org
> > Subject: Re: How to use simple expression in properties file?
> >
> > On Wed, Jun 26, 2019 at 11:49 PM Steve Huston <shus...@riverace.com>
> > wrote:
> > >
> > > Is it possible to put a simple() expression in a properties string and 
> > > have
> > Camel evaluate it at run time?
> > >
> > > Here's what I'm trying to do:
> > > - Set a message header ID with a value I want to use later
> > > - Use .toD("{{event.sink}}")
> > >
> > > application.properties can then have something like:
> > >
> > > event.sink = simple("file://.?fileName=status-${header.ID}.txt")
> > >
> >
> > toD using a string is simple language already, so just use
> >
> > event.sink = file://.?fileName=status-${header.ID}.txt
> >
> > > The goal being to have a message body written to a file whose name
> > includes the ID header value.
> > >
> > > When I try to run this I get an exception:
> > >
> > > Caused by: java.lang.IllegalArgumentException: Could not resolve
> > placeholder 'header.ID' in value "simple("file://.?fileName=status-
> > ${header.ID}.txt")"
> > >
> >
> > And you can use $simple{xxx} syntax for the fileName value
> >
> >
> >
> > > Thanks,
> > > -Steve
> >
> >
> >
> > --
> > Claus Ibsen
> > -----------------
> > http://davsclaus.com @davsclaus
> > Camel in Action 2: https://www.manning.com/ibsen2



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Reply via email to