Chapter 12. Configuration Properties
SwitchYard supports configuration properties that can be injected into configuration or into service implementations.
12.1. Switchyard Model Configuration
SwitchYard allows you to replace any attribute or element value in the
switchyard.xml
file with a property from the runtime environment. The syntax for a replaced token is:
${varname}
Here, varname is the property name. The configuration layer in SwitchYard is configured with instances of PropertyResolver, which are used to resolve the value of a property based on its name.
Property values are resolved from the following locations:
- System properties passed by
-D
option of Java VM. For example:-Dproperty.name=property.value
- System environment variables, referenced with an
env.
prefix. For example:env.PATH
- Unit test properties
- JBoss EAP properties, including access into the SecurityVault
- Domain properties in
switchyard.xml
file - SCA property definitions in the composite or component
The priority in resolving a property is from top to bottom. So a property defined as a System property always takes precedence over a property defined at domain or composite, and a property at domain level always takes precedence over a property defined at component level.