While I agree that injecting using the @Name with the String value isn't recommended, it works right now.
That said, section 3.3.8 seems to clearly indicate that the @Named qualifier for a producer method should provide a default value that follows JavaBean property getter names. IE a method named getProducts() should get the default name (if annotated with @Named) of "products" and not "getProducts" which appears to be what is happening now. I do not believe this Issue is invalid, but perhaps I am misreading 3.3.8? Sincerely, Joe On Mon, Jan 18, 2010 at 4:10 PM, Gurkan Erdogdu (JIRA) <[email protected]>wrote: > > [ > https://issues.apache.org/jira/browse/OWB-239?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel] > > Gurkan Erdogdu closed OWB-239. > ------------------------------ > > Resolution: Invalid > > This is true action. @Named is a qualifier. You have to give it a > @Named(value) in producer method. So you have to define producer method as > > @Produces > @Named("products") > public String getProducts() > { > return "Sucess from getProducts"; > } > > @Named value does not get producer method name automatically. > > Also using @Named with string members are not recommended usage. See > specification 3.11. The qualifier @Named at injection points > > > > JavaBeans property getter naming convention with Producer Methods gives > UnsatisfiedResolutionException > > > ------------------------------------------------------------------------------------------------------ > > > > Key: OWB-239 > > URL: https://issues.apache.org/jira/browse/OWB-239 > > Project: OpenWebBeans > > Issue Type: Bug > > Components: Injection and Lookup > > Affects Versions: M3 > > Environment: Windows, Eclipse running Jetty > > Reporter: Bill Wigger > > Assignee: Gurkan Erdogdu > > Fix For: M3 > > > > > > Problem: > > JavaBeans property getter naming convention with Producer Methods gives > UnsatisfiedResolutionException > > Injection in class X: > > @Produces @Named public String getProducts() { > > return "Sucess from getProducts"; > > } > > Injection Point in Y: > > public @Inject @Named("products") String N3; > > public String getTestNamed3() { > > String y = N3; > > return y; > > } > > Actual Results when getTestNamed3 is called from a JSP: > > javax.enterprise.inject.UnsatisfiedResolutionException: Api type > [java.lang.String] is not found with the qualifiers > [[email protected](value=products)] > > at > org.apache.webbeans.container.ResolutionUtil.checkResolvedBeans(ResolutionUtil.java:93) > > at > org.apache.webbeans.container.InjectionResolver.getInjectionPointBean(InjectionResolver.java:232) > > at > org.apache.webbeans.inject.AbstractInjectable.inject(AbstractInjectable.java:90) > > etc.... > > > > Desired Results: > > "Sucess from getProducts" > > -- > This message is automatically generated by JIRA. > - > You can reply to this email to add a comment to the issue online. > >
