[
https://issues.apache.org/jira/browse/DELTASPIKE-1364?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nicolò Chieffo updated DELTASPIKE-1364:
---------------------------------------
Description:
reading a property with injection does not correctly use project stage
properties.
I have a property file with this content:
{code:java}
xxx.frontend.prefix=https://dev.xxx.it
xxx.frontend.prefix.Production=https://prod.xxx.it
xxx.rsalogin.url=${xxx.frontend.prefix}/#/rsalogin/{rsalogin}
{code}
when reading xxx.rsalogin.url using annontations
{code:java}
@Inject
@ConfigProperty(name = "xxx.rsalogin.url")
private String url;
{code}
In the production environment (noticed that I don't have a
org.apache.deltaspike.ProjectStage=Production property set because by default
the stage is Production) it should be evaluated as
*[https://prod.xxx.it/#/rsalogin/\{rsalogin}|https://prod.xxx.it/#/rsalogin/]*
but instead I get
*[https://dev.xxx.it/#/rsalogin/\{rsalogin}|https://dev.xxx.it/#/rsalogin/]*
When using the declarative API it works correctly
{code:java}
ConfigResolver.getProjectStageAwarePropertyValue("xxx.rsalogin.url", "");{code}
was:
reading a property with injection does not correctly use project stage
properties.
I have a property file with this content:
{code:java}
xxx.frontend.prefix=https://dev.xxx.it
xxx.frontend.prefix.Production=https://prod.xxx.it
xxx.rsalogin.url=${xxx.frontend.prefix}/#/rsalogin/{rsalogin}
{code}
when reading xxx.rsalogin.url using annontations
{code:java}
@Inject
@ConfigProperty(name = "xxx.rsalogin.url")
private String url;
{code}
In the production environment (noticed that I don't have a
org.apache.deltaspike.ProjectStage=Production property set because by default
the stage is Production) it should be evaluated as
*https://prod.xxx.it/#/rsalogin/\{rsalogin}* but instead I get
https://*dev*.xxx.it/#/rsalogin/\{rsalogin}
When using the declarative API it works correctly
{code:java}
ConfigResolver.getProjectStageAwarePropertyValue("xxx.rsalogin.url", "");{code}
> Variable Replacement with @ConfigProperty not project stage aware
> -----------------------------------------------------------------
>
> Key: DELTASPIKE-1364
> URL: https://issues.apache.org/jira/browse/DELTASPIKE-1364
> Project: DeltaSpike
> Issue Type: Bug
> Components: Configuration
> Affects Versions: 1.8.2
> Reporter: Nicolò Chieffo
> Priority: Major
>
> reading a property with injection does not correctly use project stage
> properties.
> I have a property file with this content:
>
> {code:java}
> xxx.frontend.prefix=https://dev.xxx.it
> xxx.frontend.prefix.Production=https://prod.xxx.it
> xxx.rsalogin.url=${xxx.frontend.prefix}/#/rsalogin/{rsalogin}
> {code}
>
>
> when reading xxx.rsalogin.url using annontations
> {code:java}
> @Inject
> @ConfigProperty(name = "xxx.rsalogin.url")
> private String url;
> {code}
> In the production environment (noticed that I don't have a
> org.apache.deltaspike.ProjectStage=Production property set because by default
> the stage is Production) it should be evaluated as
> *[https://prod.xxx.it/#/rsalogin/\{rsalogin}|https://prod.xxx.it/#/rsalogin/]*
> but instead I get
> *[https://dev.xxx.it/#/rsalogin/\{rsalogin}|https://dev.xxx.it/#/rsalogin/]*
> When using the declarative API it works correctly
> {code:java}
> ConfigResolver.getProjectStageAwarePropertyValue("xxx.rsalogin.url",
> "");{code}
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)