From 1566413b7562cd2f261d1ba483b8428c6bc035ec Mon Sep 17 00:00:00 2001 From: Eduardo Sant'Ana da Silva Date: Sat, 12 May 2012 20:53:12 -0300 Subject: [PATCH] AS7-2164 Warn if CDI annotations present but no beans.xml --- .../src/main/java/org/jboss/as/weld/WeldSubsystemAdd.java | 2 ++ .../as/weld/deployment/processors/BeansXmlProcessor.java | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/subsystem/src/main/java/org/jboss/as/weld/WeldSubsystemAdd.java b/subsystem/src/main/java/org/jboss/as/weld/WeldSubsystemAdd.java index 43265aa..230c5c6 100644 --- a/subsystem/src/main/java/org/jboss/as/weld/WeldSubsystemAdd.java +++ b/subsystem/src/main/java/org/jboss/as/weld/WeldSubsystemAdd.java @@ -30,6 +30,7 @@ import org.jboss.as.server.AbstractDeploymentChainStep; import org.jboss.as.server.DeploymentProcessorTarget; import org.jboss.as.server.deployment.Phase; +import org.jboss.as.weld.deployment.CdiAnnotationProcessor; import org.jboss.as.weld.deployment.processors.BeanArchiveProcessor; import org.jboss.as.weld.deployment.processors.BeansXmlProcessor; import org.jboss.as.weld.deployment.processors.WebIntegrationProcessor; @@ -61,6 +62,7 @@ protected void performBoottime(OperationContext context, ModelNode operation, Mo context.addStep(new AbstractDeploymentChainStep() { protected void execute(DeploymentProcessorTarget processorTarget) { processorTarget.addDeploymentProcessor(WeldExtension.SUBSYSTEM_NAME, Phase.DEPENDENCIES, Phase.DEPENDENCIES_WELD, new WeldDependencyProcessor()); + processorTarget.addDeploymentProcessor(WeldExtension.SUBSYSTEM_NAME, Phase.PARSE, Phase.PARSE_CDI_ANNOTATIONS, new CdiAnnotationProcessor()); processorTarget.addDeploymentProcessor(WeldExtension.SUBSYSTEM_NAME, Phase.PARSE, Phase.PARSE_WELD_DEPLOYMENT, new BeansXmlProcessor()); processorTarget.addDeploymentProcessor(WeldExtension.SUBSYSTEM_NAME, Phase.POST_MODULE, Phase.POST_MODULE_WELD_WEB_INTEGRATION, new WebIntegrationProcessor()); processorTarget.addDeploymentProcessor(WeldExtension.SUBSYSTEM_NAME, Phase.POST_MODULE, Phase.POST_MODULE_WELD_BEAN_ARCHIVE, new BeanArchiveProcessor()); diff --git a/subsystem/src/main/java/org/jboss/as/weld/deployment/processors/BeansXmlProcessor.java b/subsystem/src/main/java/org/jboss/as/weld/deployment/processors/BeansXmlProcessor.java index 097d807..0e9ae84 100644 --- a/subsystem/src/main/java/org/jboss/as/weld/deployment/processors/BeansXmlProcessor.java +++ b/subsystem/src/main/java/org/jboss/as/weld/deployment/processors/BeansXmlProcessor.java @@ -42,6 +42,7 @@ import org.jboss.as.weld.WeldMessages; import org.jboss.as.weld.deployment.BeanArchiveMetadata; import org.jboss.as.weld.deployment.BeansXmlParser; +import org.jboss.as.weld.deployment.CdiAnnotationMarker; import org.jboss.as.weld.deployment.WeldDeploymentMetadata; import org.jboss.vfs.VirtualFile; import org.jboss.weld.bootstrap.spi.BeansXml; @@ -121,6 +122,10 @@ public void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitPro if (deploymentUnit.getParent() != null) { WeldDeploymentMarker.mark(deploymentUnit.getParent()); } + } else { + if (CdiAnnotationMarker.isCdiDeployment(deploymentUnit)) { + WeldLogger.DEPLOYMENT_LOGGER.warn("Deployment contains CDI annotations but beans.xml was not found."); + } } }