Can be used to annotate injection points of type TYPE, Optional<TYPE> or
jakarta.inject.Provider<TYPE>, where TYPE can be String and all types which have appropriate
converters.
Injected values are the same values that would be retrieved from an injected
org. instance or from the instance retrieved from
org.
The first sample injects the configured value of the my.long.property property. The injected value does not
change even if the underline property value changes in the org..
Injecting a native value is recommended for a mandatory property and its value does not change at runtime or used by a bean with RequestScoped.
A further recommendation is to use the built in META-INF/microprofile-config.properties file mechanism to
provide default values inside an Application. If no configured value exists for this property, a
DeploymentException will be thrown during startup.
@Inject @ConfigProperty(name = "my.long.property") private Long injectedLongValue;
Contrary to natively injecting, if the property is not specified, this will not lead to a DeploymentException. The
following code injects a Long value to the my.optional.long.property. If the property is not defined, the
value 123 will be assigned to injectedLongValue.
@Inject @ConfigProperty(name = "my.optional.long.property", defaultValue = "123") private Long injectedLongValue;
The following code injects an Optional value of my.optional.int.property.
@Inject @ConfigProperty(name = "my.optional.int.property") private Optional<Integer> intConfigValue;
The next sample injects a Provider for the value of my.long.property property to resolve the property
dynamically. Each invocation to Provider#get() will resolve the latest value from underlying
org. again. The existence of configured values will get checked during
startup. Instances of Provider<T> are guaranteed to be Serializable.
@Inject @ConfigProperty(name = "my.long.property" defaultValue="123") private Provider<Long> longConfigValue;
If ConfigProperty is used with a type where no org. exists,
a deployment error will be thrown.
| Modifier and Type | Field and Description |
|---|---|
| public static final String |
| Modifier and Type | Method and Description |
|---|---|
| public String | Returns: the default value as a stringThe default value if the configured property does not exist. |
| public String | Returns: Name (key) of the config property to injectThe key of the config property used to look up the configuration value. |
| UNCONFIGURED_VALUE | back to summary |
|---|---|
| public static final String UNCONFIGURED_VALUE | |
| defaultValue | back to summary |
|---|---|
| public String defaultValue() The default value if the configured property does not exist. This value acts as a configure source with the lowest ordinal.
If the target Type is not String, a proper
| |
| name | back to summary |
|---|---|
| public String name() The key of the config property used to look up the configuration value.
If it is not specified, it will be derived automatically as
If one of the
| |