You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@deltaspike.apache.org by Rainer Schön <ra...@gmail.com> on 2013/11/21 11:42:54 UTC

Project Stage in JSF and DeltaSpike - 2nd

As a follower of the DRY principle, I would like to support Harald Wellmann's post of October 10th, to which there was no answer:
>>
Is there an easy way to propagate the JSF project stage into
DeltaSpike, or vice versa?
<<

Any idea is appreciated.

Thanks and regards, Rainer

Re: Project Stage in JSF and DeltaSpike - 2nd

Posted by Mark Struberg <st...@yahoo.de>.

Another idea might be to provide an ApplicationWrapper which overwrites getProjectStage() and returns the DeltaSpike ProjectStage mapped to JSF.
Any opinions on this?

LieGrue,
strub





>________________________________
> From: Mark Struberg <st...@yahoo.de>
>To: "users@deltaspike.apache.org" <us...@deltaspike.apache.org> 
>Sent: Tuesday, 26 November 2013, 10:11
>Subject: Re: Project Stage in JSF and DeltaSpike - 2nd
> 
>
>Hi Rainer!
>
>Well, if I understood your original post correctly, then you try to set the values into JNDI in a @Singleton @Startup EJBs @PostConstruct method?
>
>The problem is that this is _way_ too late!
>
>Please debug into the following locations to get more details about what's going on:
>
>ProjectStageProducer#resolveProjectStage()
>ConfigResolver#getPropertyValue(String key)
>
>You will see that those methods will get invoked long before you hit the @Startup breakpoint.
>The reason is that the ProjectStage already gets evaluated during the CDI Container boot (via the registered CDI Extensions) and thus any JNDI value you set later will simply not get picked up. 
>
>You could e.g. even add an annotation @Exclude(ifProjectStage=ProjectStage.Production.class) to your @Startup bean - I hope this explains why we need to resolve the ProjectStage much earlier.
>
>Could you please try to take the 0.6-SNAPSHOT from https://repository.apache.org/content/groups/snapshots/
>or you just simply compile DeltaSpike locally yourself. This is really easy, see [1][2].
>We've added some pickup of a few known locations like faces.PROJECT_STAGE and javax.faces.PROJECT_STAGE.
>Will ask Ed if Mojarra does also pick up the ProjectStage from the environment.
>
>
>Please don't hesitate to ping back about your progress, txs! 
>
>
>LieGrue,
>strub
>
>
>[1] http://deltaspike.apache.org/source.html
>[2] http://deltaspike.apache.org/build.html
>
>
>
>>________________________________
>
>> From: Rainer Schön <ra...@gmail.com>
>>To: users@deltaspike.apache.org 
>>Sent: Monday, 25 November 2013, 15:46
>>Subject: Re: Project Stage in JSF and DeltaSpike - 2nd
>> 
>>
>>I think, there is a missunderstanding. My problem is not the timing. As I wrote, the @Startup bean does the job for the JSF project stage. The problem is here, that DS does  n o t  pick up the ProjectStage at start up from JNDI (please see again my reply beneath).
>>
>>Regrads, Rainer
>>
>>
>>Am 25.11.2013 15:33, schrieb Mark Struberg:
>>> timing issue.
>>>
>>> At the time @Startup beans get triggered, all the CDI booting is long time done already!
>>>
>>> LieGrue,
>>> strub
>>>
>>>
>>>
>>>
>>>> ________________________________
>>>> From: Rainer Schön <ra...@gmail.com>
>>>> To: users@deltaspike.apache.org
>>>> Sent: Monday, 25 November 2013, 12:20
>>>> Subject: Re: Project Stage in JSF and DeltaSpike - 2nd
>>>>
>>>>
>>>> Hi Mark
>>>>
>>>> Thanks for your reply. I fiddled a little bit about this problem. The best way I think, is to set the values for ProjectStage (DS + JSF) into the JNDI environment. There you have both at the same place. I tried to set then the desired value programmatically before the JSF app is startet but in the web tier (ConextListener or "StartupServlet" with priority 1 and JSF servlet with priority 2) one is always to late to set the value in time. The solution is to set up a @Singleton @Startup ejb and set the JNDI value for the JSF ProjectStage in its @PostConstruct method (works in WAR and EAR deployments to GF4). This solution has the advantage to have control which DS stage should comply to which JSF stage.
>>>>
>>>> But Alas, the devil is in the details! DS does not pick up its ProjectStage from JNDI (java:comp/env/deltaspike/ProjectStage). Where could be the problem here?
>>>>
>>>> Regards, Rainer
>>>>
>>>>
>>>> Am 21.11.2013 13:09, schrieb Mark Struberg:
>>>>
>>>>>
>>>>>
>>>>> Hi!
>>>>>
>>>>> The JSF spec does not really define environment properties for defining the ProjectStage. As per the JSF spec (parts are only documented in the API!) there are only the following 2 ways to define the JSF ProjectStage:
>>>>> * JNDI java:comp/env/jsf/ProjectStage
>>>>> * web.xml servlet param javax.faces.PROJECT_STAGE
>>>>>
>>>>> Apache MyFaces does also pick up the ProjectStage from the environment via '-Dfaces.PROJECT_STAGE=..' and via JNDI. See [1] for more info.
>>>>> I'm not sure whether Mojarra picks up those settings as well.
>>>>>
>>>>>
>>>>>
>>>>> The configuration which gets picked up in DeltaSpike itself is:
>>>>>
>>>>> * all ConfigResolver locations (JNDI + env + system + deltaspike properties, + custom ConfigResolvers)
>>>>>
>>>>>
>>>>> Currently only the following configuration gets picked up
>>>>> * org.apache.deltaspike.ProjectStage
>>>>>
>>>>> I'm not sure if we already have a JIRA issue for it, but the plan is to 'extend' this behaviour within the ds-jsf-impl to also pick up the JSF locations (except web.xml I'd say). I bet there is some hacking needed on the core-impl to allow for this to happen.
>>>>> Any opinions?
>>>>>
>>>>> LieGrue,
>>>>> strub
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> [1] https://issues.apache.org/jira/browse/MYFACES-2545
>>>>>
>>>>>
>>>>>> ________________________________
>>>>>> From: Rainer Schön <ra...@gmail.com>
>>>>>> To: users@deltaspike.apache.org
>>>>>> Sent: Thursday, 21 November 2013, 11:42
>>>>>> Subject: Project Stage in JSF and DeltaSpike - 2nd
>>>>>>
>>>>>>
>>>>>> As a follower of the DRY principle, I would like to support Harald Wellmann's post of October 10th, to which there was no answer:
>>>>>>
>>>>>>>>
>>>>>> Is there an easy way to propagate the JSF project stage into
>>>>>> DeltaSpike, or vice versa?
>>>>>> <<
>>>>>>
>>>>>> Any idea is appreciated.
>>>>>>
>>>>>> Thanks and regards, Rainer
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>>>
>>
>>
>>
>
>

Re: Project Stage in JSF and DeltaSpike - 2nd

Posted by Rainer Schön <ra...@gmail.com>.
HiMark

Here the results of my further investigations.

1. Setting ProjectStage for JSF: Here you have mistaken me. The solution in the @Startup bean works as expected. The value is set in time and picked up by JSF on startup.

2. DS ProjectStage picked up from JNDI: This does obviously not work in Glassfish 4. The name space java:comp/env is not available until the application is deployed (name referenced in web.xml <resource-ref> or ejb-jar.xml <resource-env-ref>). If DS would query JNDI with the global name "deltaspike/org.apache.deltaspike.ProjectStage" then the value would be found (I tested this from the debugger). But this seems not to be portable. Did you test picking up ProjectStage from JNDI in Glassfish? If you got a green bar I wonder, what I'm doing wrong.

Regards, Rainer

Am 26.11.2013 10:11, schrieb Mark Struberg:
> Hi Rainer!
>
> Well, if I understood your original post correctly, then you try to set the values into JNDI in a @Singleton @Startup EJBs @PostConstruct method?
>
> The problem is that this is _way_ too late!
>
> Please debug into the following locations to get more details about what's going on:
>
> ProjectStageProducer#resolveProjectStage()
> ConfigResolver#getPropertyValue(String key)
>
> You will see that those methods will get invoked long before you hit the @Startup breakpoint.
> The reason is that the ProjectStage already gets evaluated during the CDI Container boot (via the registered CDI Extensions) and thus any JNDI value you set later will simply not get picked up.
>
> You could e.g. even add an annotation @Exclude(ifProjectStage=ProjectStage.Production.class) to your @Startup bean - I hope this explains why we need to resolve the ProjectStage much earlier.
>
> Could you please try to take the 0.6-SNAPSHOT from https://repository.apache.org/content/groups/snapshots/
> or you just simply compile DeltaSpike locally yourself. This is really easy, see [1][2].
> We've added some pickup of a few known locations like faces.PROJECT_STAGE and javax.faces.PROJECT_STAGE.
> Will ask Ed if Mojarra does also pick up the ProjectStage from the environment.
>
>
> Please don't hesitate to ping back about your progress, txs!
>
>
> LieGrue,
> strub
>
>
> [1] http://deltaspike.apache.org/source.html
> [2] http://deltaspike.apache.org/build.html
>
>
>
>> ________________________________
>> From: Rainer Schön <ra...@gmail.com>
>> To: users@deltaspike.apache.org
>> Sent: Monday, 25 November 2013, 15:46
>> Subject: Re: Project Stage in JSF and DeltaSpike - 2nd
>>
>>
>> I think, there is a missunderstanding. My problem is not the timing. As I wrote, the @Startup bean does the job for the JSF project stage. The problem is here, that DS does  n o t  pick up the ProjectStage at start up from JNDI (please see again my reply beneath).
>>
>> Regrads, Rainer
>>
>>
>> Am 25.11.2013 15:33, schrieb Mark Struberg:
>>> timing issue.
>>>
>>> At the time @Startup beans get triggered, all the CDI booting is long time done already!
>>>
>>> LieGrue,
>>> strub
>>>
>>>
>>>
>>>
>>>> ________________________________
>>>> From: Rainer Schön <ra...@gmail.com>
>>>> To: users@deltaspike.apache.org
>>>> Sent: Monday, 25 November 2013, 12:20
>>>> Subject: Re: Project Stage in JSF and DeltaSpike - 2nd
>>>>
>>>>
>>>> Hi Mark
>>>>
>>>> Thanks for your reply. I fiddled a little bit about this problem. The best way I think, is to set the values for ProjectStage (DS + JSF) into the JNDI environment. There you have both at the same place. I tried to set then the desired value programmatically before the JSF app is startet but in the web tier (ConextListener or "StartupServlet" with priority 1 and JSF servlet with priority 2) one is always to late to set the value in time. The solution is to set up a @Singleton @Startup ejb and set the JNDI value for the JSF ProjectStage in its @PostConstruct method (works in WAR and EAR deployments to GF4). This solution has the advantage to have control which DS stage should comply to which JSF stage.
>>>>
>>>> But Alas, the devil is in the details! DS does not pick up its ProjectStage from JNDI (java:comp/env/deltaspike/ProjectStage). Where could be the problem here?
>>>>
>>>> Regards, Rainer
>>>>
>>>>
>>>> Am 21.11.2013 13:09, schrieb Mark Struberg:
>>>>
>>>>>
>>>>>
>>>>> Hi!
>>>>>
>>>>> The JSF spec does not really define environment properties for defining the ProjectStage. As per the JSF spec (parts are only documented in the API!) there are only the following 2 ways to define the JSF ProjectStage:
>>>>> * JNDI java:comp/env/jsf/ProjectStage
>>>>> * web.xml servlet param javax.faces.PROJECT_STAGE
>>>>>
>>>>> Apache MyFaces does also pick up the ProjectStage from the environment via '-Dfaces.PROJECT_STAGE=..' and via JNDI. See [1] for more info.
>>>>> I'm not sure whether Mojarra picks up those settings as well.
>>>>>
>>>>>
>>>>>
>>>>> The configuration which gets picked up in DeltaSpike itself is:
>>>>>
>>>>> * all ConfigResolver locations (JNDI + env + system + deltaspike properties, + custom ConfigResolvers)
>>>>>
>>>>>
>>>>> Currently only the following configuration gets picked up
>>>>> * org.apache.deltaspike.ProjectStage
>>>>>
>>>>> I'm not sure if we already have a JIRA issue for it, but the plan is to 'extend' this behaviour within the ds-jsf-impl to also pick up the JSF locations (except web.xml I'd say). I bet there is some hacking needed on the core-impl to allow for this to happen.
>>>>> Any opinions?
>>>>>
>>>>> LieGrue,
>>>>> strub
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> [1] https://issues.apache.org/jira/browse/MYFACES-2545
>>>>>
>>>>>
>>>>>> ________________________________
>>>>>> From: Rainer Schön <ra...@gmail.com>
>>>>>> To: users@deltaspike.apache.org
>>>>>> Sent: Thursday, 21 November 2013, 11:42
>>>>>> Subject: Project Stage in JSF and DeltaSpike - 2nd
>>>>>>
>>>>>>
>>>>>> As a follower of the DRY principle, I would like to support Harald Wellmann's post of October 10th, to which there was no answer:
>>>>>>
>>>>>>>>
>>>>>> Is there an easy way to propagate the JSF project stage into
>>>>>> DeltaSpike, or vice versa?
>>>>>> <<
>>>>>>
>>>>>> Any idea is appreciated.
>>>>>>
>>>>>> Thanks and regards, Rainer
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>>>
>>
>>
>>


Re: Project Stage in JSF and DeltaSpike - 2nd

Posted by Mark Struberg <st...@yahoo.de>.
Hi Rainer!

Well, if I understood your original post correctly, then you try to set the values into JNDI in a @Singleton @Startup EJBs @PostConstruct method?

The problem is that this is _way_ too late!

Please debug into the following locations to get more details about what's going on:

ProjectStageProducer#resolveProjectStage()
ConfigResolver#getPropertyValue(String key)

You will see that those methods will get invoked long before you hit the @Startup breakpoint.
The reason is that the ProjectStage already gets evaluated during the CDI Container boot (via the registered CDI Extensions) and thus any JNDI value you set later will simply not get picked up. 

You could e.g. even add an annotation @Exclude(ifProjectStage=ProjectStage.Production.class) to your @Startup bean - I hope this explains why we need to resolve the ProjectStage much earlier.

Could you please try to take the 0.6-SNAPSHOT from https://repository.apache.org/content/groups/snapshots/
or you just simply compile DeltaSpike locally yourself. This is really easy, see [1][2].
We've added some pickup of a few known locations like faces.PROJECT_STAGE and javax.faces.PROJECT_STAGE.
Will ask Ed if Mojarra does also pick up the ProjectStage from the environment.


Please don't hesitate to ping back about your progress, txs! 


LieGrue,
strub


[1] http://deltaspike.apache.org/source.html
[2] http://deltaspike.apache.org/build.html



>________________________________
> From: Rainer Schön <ra...@gmail.com>
>To: users@deltaspike.apache.org 
>Sent: Monday, 25 November 2013, 15:46
>Subject: Re: Project Stage in JSF and DeltaSpike - 2nd
> 
>
>I think, there is a missunderstanding. My problem is not the timing. As I wrote, the @Startup bean does the job for the JSF project stage. The problem is here, that DS does  n o t  pick up the ProjectStage at start up from JNDI (please see again my reply beneath).
>
>Regrads, Rainer
>
>
>Am 25.11.2013 15:33, schrieb Mark Struberg:
>> timing issue.
>>
>> At the time @Startup beans get triggered, all the CDI booting is long time done already!
>>
>> LieGrue,
>> strub
>>
>>
>>
>>
>>> ________________________________
>>> From: Rainer Schön <ra...@gmail.com>
>>> To: users@deltaspike.apache.org
>>> Sent: Monday, 25 November 2013, 12:20
>>> Subject: Re: Project Stage in JSF and DeltaSpike - 2nd
>>>
>>>
>>> Hi Mark
>>>
>>> Thanks for your reply. I fiddled a little bit about this problem. The best way I think, is to set the values for ProjectStage (DS + JSF) into the JNDI environment. There you have both at the same place. I tried to set then the desired value programmatically before the JSF app is startet but in the web tier (ConextListener or "StartupServlet" with priority 1 and JSF servlet with priority 2) one is always to late to set the value in time. The solution is to set up a @Singleton @Startup ejb and set the JNDI value for the JSF ProjectStage in its @PostConstruct method (works in WAR and EAR deployments to GF4). This solution has the advantage to have control which DS stage should comply to which JSF stage.
>>>
>>> But Alas, the devil is in the details! DS does not pick up its ProjectStage from JNDI (java:comp/env/deltaspike/ProjectStage). Where could be the problem here?
>>>
>>> Regards, Rainer
>>>
>>>
>>> Am 21.11.2013 13:09, schrieb Mark Struberg:
>>>
>>>>
>>>>
>>>> Hi!
>>>>
>>>> The JSF spec does not really define environment properties for defining the ProjectStage. As per the JSF spec (parts are only documented in the API!) there are only the following 2 ways to define the JSF ProjectStage:
>>>> * JNDI java:comp/env/jsf/ProjectStage
>>>> * web.xml servlet param javax.faces.PROJECT_STAGE
>>>>
>>>> Apache MyFaces does also pick up the ProjectStage from the environment via '-Dfaces.PROJECT_STAGE=..' and via JNDI. See [1] for more info.
>>>> I'm not sure whether Mojarra picks up those settings as well.
>>>>
>>>>
>>>>
>>>> The configuration which gets picked up in DeltaSpike itself is:
>>>>
>>>> * all ConfigResolver locations (JNDI + env + system + deltaspike properties, + custom ConfigResolvers)
>>>>
>>>>
>>>> Currently only the following configuration gets picked up
>>>> * org.apache.deltaspike.ProjectStage
>>>>
>>>> I'm not sure if we already have a JIRA issue for it, but the plan is to 'extend' this behaviour within the ds-jsf-impl to also pick up the JSF locations (except web.xml I'd say). I bet there is some hacking needed on the core-impl to allow for this to happen.
>>>> Any opinions?
>>>>
>>>> LieGrue,
>>>> strub
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> [1] https://issues.apache.org/jira/browse/MYFACES-2545
>>>>
>>>>
>>>>> ________________________________
>>>>> From: Rainer Schön <ra...@gmail.com>
>>>>> To: users@deltaspike.apache.org
>>>>> Sent: Thursday, 21 November 2013, 11:42
>>>>> Subject: Project Stage in JSF and DeltaSpike - 2nd
>>>>>
>>>>>
>>>>> As a follower of the DRY principle, I would like to support Harald Wellmann's post of October 10th, to which there was no answer:
>>>>>
>>>>>>>
>>>>> Is there an easy way to propagate the JSF project stage into
>>>>> DeltaSpike, or vice versa?
>>>>> <<
>>>>>
>>>>> Any idea is appreciated.
>>>>>
>>>>> Thanks and regards, Rainer
>>>>>
>>>>>
>>>>>
>>>>>
>>>
>>>
>>>
>
>
>

Re: Project Stage in JSF and DeltaSpike - 2nd

Posted by Rainer Schön <ra...@gmail.com>.
I think, there is a missunderstanding. My problem is not the timing. As I wrote, the @Startup bean does the job for the JSF project stage. The problem is here, that DS does  n o t  pick up the ProjectStage at start up from JNDI (please see again my reply beneath).

Regrads, Rainer

Am 25.11.2013 15:33, schrieb Mark Struberg:
> timing issue.
>
> At the time @Startup beans get triggered, all the CDI booting is long time done already!
>
> LieGrue,
> strub
>
>
>
>
>> ________________________________
>> From: Rainer Schön <ra...@gmail.com>
>> To: users@deltaspike.apache.org
>> Sent: Monday, 25 November 2013, 12:20
>> Subject: Re: Project Stage in JSF and DeltaSpike - 2nd
>>
>>
>> Hi Mark
>>
>> Thanks for your reply. I fiddled a little bit about this problem. The best way I think, is to set the values for ProjectStage (DS + JSF) into the JNDI environment. There you have both at the same place. I tried to set then the desired value programmatically before the JSF app is startet but in the web tier (ConextListener or "StartupServlet" with priority 1 and JSF servlet with priority 2) one is always to late to set the value in time. The solution is to set up a @Singleton @Startup ejb and set the JNDI value for the JSF ProjectStage in its @PostConstruct method (works in WAR and EAR deployments to GF4). This solution has the advantage to have control which DS stage should comply to which JSF stage.
>>
>> But Alas, the devil is in the details! DS does not pick up its ProjectStage from JNDI (java:comp/env/deltaspike/ProjectStage). Where could be the problem here?
>>
>> Regards, Rainer
>>
>>
>> Am 21.11.2013 13:09, schrieb Mark Struberg:
>>
>>>
>>>
>>> Hi!
>>>
>>> The JSF spec does not really define environment properties for defining the ProjectStage. As per the JSF spec (parts are only documented in the API!) there are only the following 2 ways to define the JSF ProjectStage:
>>> * JNDI java:comp/env/jsf/ProjectStage
>>> * web.xml servlet param javax.faces.PROJECT_STAGE
>>>
>>> Apache MyFaces does also pick up the ProjectStage from the environment via '-Dfaces.PROJECT_STAGE=..' and via JNDI. See [1] for more info.
>>> I'm not sure whether Mojarra picks up those settings as well.
>>>
>>>
>>>
>>> The configuration which gets picked up in DeltaSpike itself is:
>>>
>>> * all ConfigResolver locations (JNDI + env + system + deltaspike properties, + custom ConfigResolvers)
>>>
>>>
>>> Currently only the following configuration gets picked up
>>> * org.apache.deltaspike.ProjectStage
>>>
>>> I'm not sure if we already have a JIRA issue for it, but the plan is to 'extend' this behaviour within the ds-jsf-impl to also pick up the JSF locations (except web.xml I'd say). I bet there is some hacking needed on the core-impl to allow for this to happen.
>>> Any opinions?
>>>
>>> LieGrue,
>>> strub
>>>
>>>
>>>
>>>
>>>
>>> [1] https://issues.apache.org/jira/browse/MYFACES-2545
>>>
>>>
>>>> ________________________________
>>>> From: Rainer Schön <ra...@gmail.com>
>>>> To: users@deltaspike.apache.org
>>>> Sent: Thursday, 21 November 2013, 11:42
>>>> Subject: Project Stage in JSF and DeltaSpike - 2nd
>>>>
>>>>
>>>> As a follower of the DRY principle, I would like to support Harald Wellmann's post of October 10th, to which there was no answer:
>>>>
>>>>>>
>>>> Is there an easy way to propagate the JSF project stage into
>>>> DeltaSpike, or vice versa?
>>>> <<
>>>>
>>>> Any idea is appreciated.
>>>>
>>>> Thanks and regards, Rainer
>>>>
>>>>
>>>>
>>>>
>>
>>
>>


Re: Project Stage in JSF and DeltaSpike - 2nd

Posted by Mark Struberg <st...@yahoo.de>.
timing issue.

At the time @Startup beans get triggered, all the CDI booting is long time done already!

LieGrue,
strub




>________________________________
> From: Rainer Schön <ra...@gmail.com>
>To: users@deltaspike.apache.org 
>Sent: Monday, 25 November 2013, 12:20
>Subject: Re: Project Stage in JSF and DeltaSpike - 2nd
> 
>
>Hi Mark
>
>Thanks for your reply. I fiddled a little bit about this problem. The best way I think, is to set the values for ProjectStage (DS + JSF) into the JNDI environment. There you have both at the same place. I tried to set then the desired value programmatically before the JSF app is startet but in the web tier (ConextListener or "StartupServlet" with priority 1 and JSF servlet with priority 2) one is always to late to set the value in time. The solution is to set up a @Singleton @Startup ejb and set the JNDI value for the JSF ProjectStage in its @PostConstruct method (works in WAR and EAR deployments to GF4). This solution has the advantage to have control which DS stage should comply to which JSF stage.
>
>But Alas, the devil is in the details! DS does not pick up its ProjectStage from JNDI (java:comp/env/deltaspike/ProjectStage). Where could be the problem here?
>
>Regards, Rainer
>
>  
>Am 21.11.2013 13:09, schrieb Mark Struberg:
>
>>
>>
>> Hi!
>>
>> The JSF spec does not really define environment properties for defining the ProjectStage. As per the JSF spec (parts are only documented in the API!) there are only the following 2 ways to define the JSF ProjectStage:
>> * JNDI java:comp/env/jsf/ProjectStage
>> * web.xml servlet param javax.faces.PROJECT_STAGE
>>
>> Apache MyFaces does also pick up the ProjectStage from the environment via '-Dfaces.PROJECT_STAGE=..' and via JNDI. See [1] for more info.
>> I'm not sure whether Mojarra picks up those settings as well.
>>
>>
>>
>> The configuration which gets picked up in DeltaSpike itself is:
>>
>> * all ConfigResolver locations (JNDI + env + system + deltaspike properties, + custom ConfigResolvers)
>>
>>
>> Currently only the following configuration gets picked up
>> * org.apache.deltaspike.ProjectStage
>>
>> I'm not sure if we already have a JIRA issue for it, but the plan is to 'extend' this behaviour within the ds-jsf-impl to also pick up the JSF locations (except web.xml I'd say). I bet there is some hacking needed on the core-impl to allow for this to happen.
>> Any opinions?
>>
>> LieGrue,
>> strub
>>
>>
>>
>>
>>
>> [1] https://issues.apache.org/jira/browse/MYFACES-2545
>>
>>
>>> ________________________________
>>> From: Rainer Schön <ra...@gmail.com>
>>> To: users@deltaspike.apache.org
>>> Sent: Thursday, 21 November 2013, 11:42
>>> Subject: Project Stage in JSF and DeltaSpike - 2nd
>>>
>>>
>>> As a follower of the DRY principle, I would like to support Harald Wellmann's post of October 10th, to which there was no answer:
>>>
>>>>>
>>> Is there an easy way to propagate the JSF project stage into
>>> DeltaSpike, or vice versa?
>>> <<
>>>
>>> Any idea is appreciated.
>>>
>>> Thanks and regards, Rainer
>>>
>>>
>>>
>>>
>
>
>

Re: Project Stage in JSF and DeltaSpike - 2nd

Posted by Rainer Schön <ra...@gmail.com>.
Hi Mark

Thanks for your reply. I fiddled a little bit about this problem. The best way I think, is to set the values for ProjectStage (DS + JSF) into the JNDI environment. There you have both at the same place. I tried to set then the desired value programmatically before the JSF app is startet but in the web tier (ConextListener or "StartupServlet" with priority 1 and JSF servlet with priority 2) one is always to late to set the value in time. The solution is to set up a @Singleton @Startup ejb and set the JNDI value for the JSF ProjectStage in its @PostConstruct method (works in WAR and EAR deployments to GF4). This solution has the advantage to have control which DS stage should comply to which JSF stage.

But Alas, the devil is in the details! DS does not pick up its ProjectStage from JNDI (java:comp/env/deltaspike/ProjectStage). Where could be the problem here?

Regards, Rainer

  
Am 21.11.2013 13:09, schrieb Mark Struberg:
>
>
> Hi!
>
> The JSF spec does not really define environment properties for defining the ProjectStage. As per the JSF spec (parts are only documented in the API!) there are only the following 2 ways to define the JSF ProjectStage:
> * JNDI java:comp/env/jsf/ProjectStage
> * web.xml servlet param javax.faces.PROJECT_STAGE
>
> Apache MyFaces does also pick up the ProjectStage from the environment via '-Dfaces.PROJECT_STAGE=..' and via JNDI. See [1] for more info.
> I'm not sure whether Mojarra picks up those settings as well.
>
>
>
> The configuration which gets picked up in DeltaSpike itself is:
>
> * all ConfigResolver locations (JNDI + env + system + deltaspike properties, + custom ConfigResolvers)
>
>
> Currently only the following configuration gets picked up
> * org.apache.deltaspike.ProjectStage
>
> I'm not sure if we already have a JIRA issue for it, but the plan is to 'extend' this behaviour within the ds-jsf-impl to also pick up the JSF locations (except web.xml I'd say). I bet there is some hacking needed on the core-impl to allow for this to happen.
> Any opinions?
>
> LieGrue,
> strub
>
>
>
>
>
> [1] https://issues.apache.org/jira/browse/MYFACES-2545
>
>
>> ________________________________
>> From: Rainer Schön <ra...@gmail.com>
>> To: users@deltaspike.apache.org
>> Sent: Thursday, 21 November 2013, 11:42
>> Subject: Project Stage in JSF and DeltaSpike - 2nd
>>
>>
>> As a follower of the DRY principle, I would like to support Harald Wellmann's post of October 10th, to which there was no answer:
>>
>>>>
>> Is there an easy way to propagate the JSF project stage into
>> DeltaSpike, or vice versa?
>> <<
>>
>> Any idea is appreciated.
>>
>> Thanks and regards, Rainer
>>
>>
>>
>>


Re: Project Stage in JSF and DeltaSpike - 2nd

Posted by Mark Struberg <st...@yahoo.de>.

Hi!

The JSF spec does not really define environment properties for defining the ProjectStage. As per the JSF spec (parts are only documented in the API!) there are only the following 2 ways to define the JSF ProjectStage:
* JNDI java:comp/env/jsf/ProjectStage
* web.xml servlet param javax.faces.PROJECT_STAGE

Apache MyFaces does also pick up the ProjectStage from the environment via '-Dfaces.PROJECT_STAGE=..' and via JNDI. See [1] for more info.
I'm not sure whether Mojarra picks up those settings as well.



The configuration which gets picked up in DeltaSpike itself is:

* all ConfigResolver locations (JNDI + env + system + deltaspike properties, + custom ConfigResolvers)


Currently only the following configuration gets picked up
* org.apache.deltaspike.ProjectStage

I'm not sure if we already have a JIRA issue for it, but the plan is to 'extend' this behaviour within the ds-jsf-impl to also pick up the JSF locations (except web.xml I'd say). I bet there is some hacking needed on the core-impl to allow for this to happen. 
Any opinions?

LieGrue,
strub





[1] https://issues.apache.org/jira/browse/MYFACES-2545


>________________________________
> From: Rainer Schön <ra...@gmail.com>
>To: users@deltaspike.apache.org 
>Sent: Thursday, 21 November 2013, 11:42
>Subject: Project Stage in JSF and DeltaSpike - 2nd
> 
>
>As a follower of the DRY principle, I would like to support Harald Wellmann's post of October 10th, to which there was no answer:
>
>>>
>Is there an easy way to propagate the JSF project stage into
>DeltaSpike, or vice versa?
><<
>
>Any idea is appreciated.
>
>Thanks and regards, Rainer
>
>
>
>