[weld-issues] [JBoss JIRA] Commented: (WELD-354) Value-less @Named annotation of producer methods has no impact

Johan Eltes (JIRA) jira-events at lists.jboss.org
Wed Jan 6 13:25:36 EST 2010


    [ https://jira.jboss.org/jira/browse/WELD-354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12502554#action_12502554 ] 

Johan Eltes commented on WELD-354:
----------------------------------

Missed that part - coming from Spring - not Seam :) 
I was thinking @Named as the CDI-generalized form of @Resource and its way of defaulting names by convention. So there is basically no corresponding "resolve by name convention" in CDI? I'll have to live with declaring annotations or using string names then. Definitely not a mission critical feature.

> Value-less @Named annotation of producer methods has no impact
> --------------------------------------------------------------
>
>                 Key: WELD-354
>                 URL: https://jira.jboss.org/jira/browse/WELD-354
>             Project: Weld
>          Issue Type: Bug
>    Affects Versions: 1.0.0.GA
>         Environment: Mac OS, Java SE engine bootstrapped from weld-test
>            Reporter: Johan Eltes
>            Assignee: Pete Muir
>            Priority: Critical
>             Fix For: 1.0.1.CR1
>
>
> The following producer methods create beans named 
> {org.jboss.weld.bean-se-module-ProducerMethod-se.callistaenterprise.cadec2010.cdi.javase.basic.JmsTemplateConfigurationProducer.getLogQeueTemplate(int), org.jboss.weld.bean-se-module-ProducerMethod-se.callistaenterprise.cadec2010.cdi.javase.basic.JmsTemplateConfigurationProducer.getErrorQeueTemplate(int)}
> rather than
> {logQeueTemplate, errorQeueTemplate}.
> As a consequence injection fails at the following injection point:
> private @Inject @Named JmsTemplate errorQeueTemplate;
> The producer methods:
> public class JmsTemplateConfigurationProducer {
> 	@Produces
> 	int longReceiveTimeout = 3 * 3600;
> 	@Produces
> 	int shortReceiveTimeout = 100;
> 	@Produces
> 	@Named
> 	public JmsTemplate getErrorQeueTemplate(
> 			@Named("longReceiveTimeout") int receiveTimeout) {
> 		JmsTemplate tmp = new JmsTemplate();
> 		tmp.setReceiveTimeout(receiveTimeout);
> 		return tmp;
> 	}
> 	@Produces
> 	@Named
> 	public JmsTemplate getLogQeueTemplate(
> 			@Named("shortReceiveTimeout") int receiveTimeout) {
> 		JmsTemplate tmp = new JmsTemplate();
> 		tmp.setReceiveTimeout(receiveTimeout);
> 		return tmp;
> 	}
> }

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

        


More information about the weld-issues mailing list