Why system properties are not resolved with blueprint's external property-placeholder ?

Solution Verified - Updated -

Issue

  • Camel blueprint does not accept external properties. Either custom or predefined like karaf.etc. Need to pass external folder location specified as ether environment property or system property.
  • Hardcoded filepath in camel blueprint works fine.
  • Environment or System variables are not resolved to actual value when used with ext:location tag. Below is the blueprint snippet
 <ext:property-placeholder placeholder-prefix="$(" placeholder-suffix=")">
        <ext:location>file:${karaf.home}/etc/application-config/test/test.account.properties</ext:location>
    </ext:property-placeholder> 
    <ext:property-placeholder placeholder-prefix="[[" placeholder-suffix="]]">
        <ext:location>file:/path/to/es-datasync.account.properties</ext:location>
    </ext:property-placeholder> 
  • My blueprint definition for property-placeholder files works, but it is too restrictive for our needs, in that:
  • The files must live in ${fuse.home}/etc
  • They must end with ".cfg"
    • We need to move these files into a sub-folder of ${fuse.home}/etc AND want to change the extension to ".properties". Something like this...
${fuse.home}/etc/application-config/test/test.account.properties
${fuse.home}/etc/application-config/test/test.fuse.env.properties

Environment

  • Red Hat JBoss Fuse
    • 6.2.0
    • 6.2.1

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content