Skip to main content

[ejb-spec issues] [JIRA] Commented: (EJB_SPEC-30) Extension of @DependsOn annotation with Class[] beans() element

  • From: "dblevins (JIRA)" <jira-no-reply@...>
  • To: issues@...
  • Subject: [ejb-spec issues] [JIRA] Commented: (EJB_SPEC-30) Extension of @DependsOn annotation with Class[] beans() element
  • Date: Wed, 30 Jan 2013 19:52:53 +0000 (GMT+00:00)
  • Auto-submitted: auto-generated


    [ 
http://java.net/jira/browse/EJB_SPEC-30?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=354724#action_354724
 ] 

dblevins commented on EJB_SPEC-30:
----------------------------------

In case I'm not the only one, I do support a simple version of this proposal:

{code}
@EJB
@DependsOn
private FooBean fooBean;
{code}

Or possibly

{code}
@EJB(dependsOn=true)
private FooBean fooBean;
{code}

Or possibly

{code}
@EJB(dependency=true)
private FooBean fooBean;
{code}

Gets right to the heart of the @DependsOn logic.  We should have done this 
the first time around.  Using the string name of the bean was a bad idea 
given the @EJB referencing semantics allow for far more expression.  We 
should have extended those to simply say "this bean we reference must exist 
is used in my @PostConstruct"

Given the real meaning of "@DependsOn" is "these things must initialize 
before me", perhaps even

{code}
@EJB(init=true)
private FooBean fooBean;
{code}


> Extension of @DependsOn annotation with Class[] beans() element
> ---------------------------------------------------------------
>
>                 Key: EJB_SPEC-30
>                 URL: http://java.net/jira/browse/EJB_SPEC-30
>             Project: ejb-spec
>          Issue Type: New Feature
>    Affects Versions: Future version
>            Reporter: abien
>             Fix For: Future version
>
>
> The @DependsOn annotation should be extended with an additional element 
> Class[] beans
> @Target(value = {ElementType.TYPE})
> @Retention(value = RetentionPolicy.RUNTIME)
> public @interface DependsOn {
>     public Class[] beans(); //NEW
>     public String[] value();
> }
> Reason:
> in EJB 3.1 only the name of the bean can be used, what can be easily 
> misspelled. The syntactical correctness of the bean-class would be checked 
> by the compiler.
> Furthermore you will get  auto-completion IDE-support as well.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://java.net/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


[ejb-spec issues] [JIRA] Commented: (EJB_SPEC-30) Extension of @DependsOn annotation with Class[] beans() element

dblevins (JIRA) 01/30/2013
 
 
Close
loading
Please Confirm
Close