Bugzilla will be upgraded to version 5.0. The upgrade date is tentatively scheduled for 2 December 2018, pending final testing and feedback.
Bug 1086555 - [GSS] (6.4) Weld - Specialization of generic beans throws inappropriate exception
[GSS] (6.4) Weld - Specialization of generic beans throws inappropriate excep...
Status: VERIFIED
Product: JBoss Enterprise Application Platform 6
Classification: JBoss
Component: CDI/Weld (Show other bugs)
6.1.0,6.2.0,6.1.1,6.2.1,6.2.2,6.2.3
Unspecified Unspecified
unspecified Severity medium
: DR1
: EAP 6.4.0
Assigned To: Jozef Hartinger
Tomas Remes
:
: 1120079 (view as bug list)
Depends On: 1111092
Blocks:
  Show dependency treegraph
 
Reported: 2014-04-11 02:24 EDT by Tomas Remes
Modified: 2018-03-06 15:37 EST (History)
5 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
In a previous release of JBoss EAP 6, setting a specialization on a generic bean resulted in a `DefinitionException` being thrown. This behavior was not intended as has been addressed in this release. Setting a specialization on a generic bean now operates as expected.
Story Points: ---
Clone Of:
Environment:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
JBoss Issue Tracker WELD-1651 None None None 2014-08-28 02:38:49 EDT
JBoss Issue Tracker WELD-1707 None None None 2014-08-28 02:38:49 EDT

  None (edit)
Description Tomas Remes 2014-04-11 02:24:58 EDT
Basically having following class in your deployment:

public class BeanDefault<T extends AbstractClass> {}

and its speciliazation like this:

@Specializes
public class BeanCustom<T extends AbstractClass> extends BeanDefault<T> {}

You get following exception (which is IMHO inappropriate) during Weld boot time:

org.jboss.weld.exceptions.DefinitionException: WELD-001511 Specializing bean Managed Bean [class mypackage.BeanCustom] with qualifiers [@Any @Default] does not have bean type class mypackage.BeanDefault<T> of specialized bean Managed Bean [class mypackage.BeanDefault] with qualifiers [@Any @Default]
	at org.jboss.weld.bean.AbstractBean.postSpecialize(AbstractBean.java:287)
	at org.jboss.weld.bean.AbstractBean.initialize(AbstractBean.java:124)
	at org.jboss.weld.bean.AbstractClassBean.initialize(AbstractClassBean.java:175)
	at org.jboss.weld.bean.ManagedBean.initialize(ManagedBean.java:329)
	at org.jboss.weld.bootstrap.AbstractBeanDeployer.deploy(AbstractBeanDeployer.java:117)
	at org.jboss.weld.bootstrap.BeanDeployment.deployBeans(BeanDeployment.java:217)
	at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:357)
	at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:63)
	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1980) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]
	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1913) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]

It manifest with following exception in versions prior to EAP 6.3.0 (Weld 1.1.19.Final):

Caused by: org.jboss.weld.exceptions.DefinitionException: Exception message for key SPECIALIZING_BEAN_MISSING_SPECIALIZED_TYPE not found due to Can't find resource for bundle ch.qos.cal10n.util.CAL10NResourceBundle, key SPECIALIZING_BEAN_MISSING_SPECIALIZED_TYPE
	at org.jboss.weld.bean.AbstractBean.postSpecialize(AbstractBean.java:287)
	at org.jboss.weld.bean.AbstractBean.initialize(AbstractBean.java:124)
	at org.jboss.weld.bean.AbstractClassBean.initialize(AbstractClassBean.java:175)
	at org.jboss.weld.bean.ManagedBean.initialize(ManagedBean.java:329)
	at org.jboss.weld.bootstrap.AbstractBeanDeployer.deploy(AbstractBeanDeployer.java:117)
	at org.jboss.weld.bootstrap.BeanDeployment.deployBeans(BeanDeployment.java:217)
	at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:357)
	at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:63)
	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
Comment 1 JBoss JIRA Server 2014-05-28 09:57:47 EDT
Jozef Hartinger <jharting@redhat.com> updated the status of jira WELD-1651 to Resolved
Comment 2 baranowb 2014-07-16 04:39:48 EDT
BUmping to 6.3.1 and 6.4

Doc text for 6.3 ?
Comment 4 Jozef Hartinger 2014-07-23 04:22:23 EDT
*** Bug 1120079 has been marked as a duplicate of this bug. ***
Comment 5 Jozef Hartinger 2014-07-23 09:44:56 EDT
https://github.com/jbossas/jboss-eap/pull/1535
Comment 6 Tomas Remes 2014-09-26 09:05:42 EDT
Verified on 6.4.0.DR2 release.

Note You need to log in before you can comment on or make changes to this bug.