[seam-commits] Seam SVN: r13543 - modules/xml/trunk/impl/src/main/java/org/jboss/seam/xml/model.
seam-commits at lists.jboss.org
seam-commits at lists.jboss.org
Sun Aug 1 17:29:30 EDT 2010
Author: swd847
Date: 2010-08-01 17:29:30 -0400 (Sun, 01 Aug 2010)
New Revision: 13543
Modified:
modules/xml/trunk/impl/src/main/java/org/jboss/seam/xml/model/ValueXmlItem.java
Log:
error checking for inline bean definitions
Modified: modules/xml/trunk/impl/src/main/java/org/jboss/seam/xml/model/ValueXmlItem.java
===================================================================
--- modules/xml/trunk/impl/src/main/java/org/jboss/seam/xml/model/ValueXmlItem.java 2010-08-01 21:23:34 UTC (rev 13542)
+++ modules/xml/trunk/impl/src/main/java/org/jboss/seam/xml/model/ValueXmlItem.java 2010-08-01 21:29:30 UTC (rev 13543)
@@ -25,6 +25,7 @@
import java.util.List;
import java.util.Set;
+import javax.enterprise.context.Dependent;
import javax.enterprise.inject.spi.BeanManager;
import org.jboss.seam.xml.core.BeanResult;
@@ -62,10 +63,15 @@
ClassXmlItem inline = inlineBeans.get(0);
for (AnnotationXmlItem i : inline.getChildrenOfType(AnnotationXmlItem.class))
{
- if (manager.isQualifier((Class) i.getJavaClass()))
+ Class annotation = (Class) i.getJavaClass();
+ if (manager.isQualifier(annotation))
{
- throw new XmlConfigurationException("Cannot define qualifiers on inline beans", i.getDocument(), i.getLineno());
+ throw new XmlConfigurationException("Cannot define qualifiers on inline beans, Qualifier: " + annotation.getName(), i.getDocument(), i.getLineno());
}
+ else if (manager.isScope(annotation) && annotation != Dependent.class)
+ {
+ throw new XmlConfigurationException("Inline beans must have @Dependent scope, Scope: " + annotation.getName(), i.getDocument(), i.getLineno());
+ }
}
syntheticQualifierId = InlineBeanIdCreator.getId();
AnnotationXmlItem syntheticQualifier = new AnnotationXmlItem(this, InlineBeanQualifier.class, "" + syntheticQualifierId, Collections.EMPTY_MAP, getDocument(), getLineno());
More information about the seam-commits
mailing list