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.