You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openwebbeans.apache.org by "Jacquelle Leggett (JIRA)" <ji...@apache.org> on 2010/10/14 19:30:33 UTC
[jira] Created: (OWB-472) archive centric beans.xml enabling
archive centric beans.xml enabling
-----------------------------------
Key: OWB-472
URL: https://issues.apache.org/jira/browse/OWB-472
Project: OpenWebBeans
Issue Type: Improvement
Components: Injection and Lookup
Reporter: Jacquelle Leggett
Assignee: Gurkan Erdogdu
This issue was discussed in great detail in June (http://mail-archives.apache.org/mod_mbox/openwebbeans-dev/201006.mbox/browser) on the developers forum. The title of the thread is "problems with lack of archive-centric BeanManager".
The main problem is described below (snippet from discussion):
"...Our current design does not permit either of the following scenarions, AFAICT:
b.jar and c.jar both enable the interceptor defined in a.jar
(treated as a duplicate)
Exactly one of b.jar and c.jar enables the interceptor defined in
a.jar (ends up enabled for beans from either archive if enabled in one
-- this is in the more troubling neighborhood)..."
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (OWB-472) archive centric beans.xml enabling
Posted by "Jacquelle Leggett (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/OWB-472?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jacquelle Leggett updated OWB-472:
----------------------------------
Attachment: patch.txt
Attached patch to process beans.xml per BDA.
> archive centric beans.xml enabling
> -----------------------------------
>
> Key: OWB-472
> URL: https://issues.apache.org/jira/browse/OWB-472
> Project: OpenWebBeans
> Issue Type: Improvement
> Components: Injection and Lookup
> Reporter: Jacquelle Leggett
> Assignee: Gurkan Erdogdu
> Attachments: patch.txt
>
> Original Estimate: 336h
> Remaining Estimate: 336h
>
> This issue was discussed in great detail in June (http://mail-archives.apache.org/mod_mbox/openwebbeans-dev/201006.mbox/browser) on the developers forum. The title of the thread is "problems with lack of archive-centric BeanManager".
> The main problem is described below (snippet from discussion):
> "...Our current design does not permit either of the following scenarions, AFAICT:
> b.jar and c.jar both enable the interceptor defined in a.jar
> (treated as a duplicate)
> Exactly one of b.jar and c.jar enables the interceptor defined in
> a.jar (ends up enabled for beans from either archive if enabled in one
> -- this is in the more troubling neighborhood)..."
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (OWB-472) archive centric beans.xml enabling
Posted by "Mark Struberg (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/OWB-472?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12921268#action_12921268 ]
Mark Struberg commented on OWB-472:
-----------------------------------
agree, we should just write a warning and put all found interceptors into a big fat Set. Of course the reason why Gavin defined the BDA was to be able to define a certain order of interceptors (contrary to EJB the interceptor order is defined in beans.xml and not via the annotations). I think this was a quick and dirty solution (remember the old saying "dirty remains while quick is long forgotten"?) and defining an 'ordinal' property for beans.xml or the <interceptors> section would be much better. See the config.ordinal logic I did for our openwebbeans.properties.
I talked with Pete a while ago and he told me that he extended the beans.xml schema to allow own tags somewhere. Haven't looked at it closely, but this might help us.
> archive centric beans.xml enabling
> -----------------------------------
>
> Key: OWB-472
> URL: https://issues.apache.org/jira/browse/OWB-472
> Project: OpenWebBeans
> Issue Type: Improvement
> Components: Injection and Lookup
> Reporter: Jacquelle Leggett
> Assignee: Gurkan Erdogdu
> Original Estimate: 336h
> Remaining Estimate: 336h
>
> This issue was discussed in great detail in June (http://mail-archives.apache.org/mod_mbox/openwebbeans-dev/201006.mbox/browser) on the developers forum. The title of the thread is "problems with lack of archive-centric BeanManager".
> The main problem is described below (snippet from discussion):
> "...Our current design does not permit either of the following scenarions, AFAICT:
> b.jar and c.jar both enable the interceptor defined in a.jar
> (treated as a duplicate)
> Exactly one of b.jar and c.jar enables the interceptor defined in
> a.jar (ends up enabled for beans from either archive if enabled in one
> -- this is in the more troubling neighborhood)..."
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (OWB-472) archive centric beans.xml enabling
Posted by "Mark Struberg (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/OWB-472?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12921155#action_12921155 ]
Mark Struberg commented on OWB-472:
-----------------------------------
Hi Jacquelle!
Thanks for your effort, but please note that the current behaviour is not a bug but a feature! As explained on the mail thread you already posted: the spec is contradictory in itself and the BDA behaviour for alternatives, interceptors and decorators is _not_ backed by the Spec, _not_ backed by the TCK (we pass those parts of the TCK easily) and completely sick and weird (personal opinion of course). So I'd rather go and report a spec issue than changing our implementation.
The reason: if I e.g. need to enable an <alternative> _inside_ a JAR, then it's completely useless! Because there is NO way to enable this alternative from lets say your webapp _without_ repackaging your JAR every time. Same is true for interceptors and decorators of course.
> archive centric beans.xml enabling
> -----------------------------------
>
> Key: OWB-472
> URL: https://issues.apache.org/jira/browse/OWB-472
> Project: OpenWebBeans
> Issue Type: Improvement
> Components: Injection and Lookup
> Reporter: Jacquelle Leggett
> Assignee: Gurkan Erdogdu
> Original Estimate: 336h
> Remaining Estimate: 336h
>
> This issue was discussed in great detail in June (http://mail-archives.apache.org/mod_mbox/openwebbeans-dev/201006.mbox/browser) on the developers forum. The title of the thread is "problems with lack of archive-centric BeanManager".
> The main problem is described below (snippet from discussion):
> "...Our current design does not permit either of the following scenarions, AFAICT:
> b.jar and c.jar both enable the interceptor defined in a.jar
> (treated as a duplicate)
> Exactly one of b.jar and c.jar enables the interceptor defined in
> a.jar (ends up enabled for beans from either archive if enabled in one
> -- this is in the more troubling neighborhood)..."
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (OWB-472) archive centric beans.xml enabling
Posted by "Jacquelle Leggett (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/OWB-472?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12921206#action_12921206 ]
Jacquelle Leggett commented on OWB-472:
---------------------------------------
I think some aspects of this issue can be considered a bug and other parts represent a non-default implementation. As mentioned in the description, most of us agree that not being able to define the same interceptor in multiple jars of a .war is a bug.
I understand your point (Mark) about having to repackage a jar. In such a case, the user would simply use the default OWB behavior.
If a war contains utility.jar with numerous common classes (some of which are not well-known) and app1classes.jar with application-specific logic, then there should be a way to only enable the modifiers (interceptors, decorators, & alternatives) in app1classes.jar. In this case, a property would be set to enable the archive centric beans.xml solution.
> archive centric beans.xml enabling
> -----------------------------------
>
> Key: OWB-472
> URL: https://issues.apache.org/jira/browse/OWB-472
> Project: OpenWebBeans
> Issue Type: Improvement
> Components: Injection and Lookup
> Reporter: Jacquelle Leggett
> Assignee: Gurkan Erdogdu
> Original Estimate: 336h
> Remaining Estimate: 336h
>
> This issue was discussed in great detail in June (http://mail-archives.apache.org/mod_mbox/openwebbeans-dev/201006.mbox/browser) on the developers forum. The title of the thread is "problems with lack of archive-centric BeanManager".
> The main problem is described below (snippet from discussion):
> "...Our current design does not permit either of the following scenarions, AFAICT:
> b.jar and c.jar both enable the interceptor defined in a.jar
> (treated as a duplicate)
> Exactly one of b.jar and c.jar enables the interceptor defined in
> a.jar (ends up enabled for beans from either archive if enabled in one
> -- this is in the more troubling neighborhood)..."
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (OWB-472) archive centric beans.xml enabling
Posted by "Jacquelle Leggett (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/OWB-472?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12921042#action_12921042 ]
Jacquelle Leggett commented on OWB-472:
---------------------------------------
I have already started working on a patch for this problem. It only enables decorators, interceptors, and alternatives in the BDA that contains such a definition in its beans.xml. This behavior is non-default and enabled via an OWB property.
> archive centric beans.xml enabling
> -----------------------------------
>
> Key: OWB-472
> URL: https://issues.apache.org/jira/browse/OWB-472
> Project: OpenWebBeans
> Issue Type: Improvement
> Components: Injection and Lookup
> Reporter: Jacquelle Leggett
> Assignee: Gurkan Erdogdu
> Original Estimate: 336h
> Remaining Estimate: 336h
>
> This issue was discussed in great detail in June (http://mail-archives.apache.org/mod_mbox/openwebbeans-dev/201006.mbox/browser) on the developers forum. The title of the thread is "problems with lack of archive-centric BeanManager".
> The main problem is described below (snippet from discussion):
> "...Our current design does not permit either of the following scenarions, AFAICT:
> b.jar and c.jar both enable the interceptor defined in a.jar
> (treated as a duplicate)
> Exactly one of b.jar and c.jar enables the interceptor defined in
> a.jar (ends up enabled for beans from either archive if enabled in one
> -- this is in the more troubling neighborhood)..."
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.