[jboss-cvs] JBossAS SVN: r94005 - branches/Branch_5_x/server/src/main/org/jboss/deployment.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Sep 24 16:46:13 EDT 2009
Author: thomas.diesler at jboss.com
Date: 2009-09-24 16:46:13 -0400 (Thu, 24 Sep 2009)
New Revision: 94005
Modified:
branches/Branch_5_x/server/src/main/org/jboss/deployment/AnnotationMetaDataDeployer.java
Log:
[JBAS-7288] AnnotationMetaDataDeployer failing with NoClassDefFoundError
Modified: branches/Branch_5_x/server/src/main/org/jboss/deployment/AnnotationMetaDataDeployer.java
===================================================================
--- branches/Branch_5_x/server/src/main/org/jboss/deployment/AnnotationMetaDataDeployer.java 2009-09-24 20:25:53 UTC (rev 94004)
+++ branches/Branch_5_x/server/src/main/org/jboss/deployment/AnnotationMetaDataDeployer.java 2009-09-24 20:46:13 UTC (rev 94005)
@@ -54,10 +54,12 @@
* annotations
*
* @author Scott.Stark at jboss.org
+ * @author Thomas.Diesler at jboss.org
* @version $Revision$
*/
public class AnnotationMetaDataDeployer extends AbstractDeployer
{
+ public static final String ANNOTATION_META_DATA_COMPLETE = "org.jboss.deployment.annotation.metadata.complete";
public static final String EJB_ANNOTATED_ATTACHMENT_NAME = "annotated."+EjbJarMetaData.class.getName();
public static final String CLIENT_ANNOTATED_ATTACHMENT_NAME = "annotated."+ApplicationClientMetaData.class.getName();
public static final String WEB_ANNOTATED_ATTACHMENT_NAME = "annotated."+WebMetaData.class.getName();
@@ -111,35 +113,47 @@
protected void deploy(VFSDeploymentUnit unit)
throws DeploymentException
{
+ boolean isComplete = this.isMetaDataCompleteIsDefault();
+
+ // Allow deployment units to say that they are metadata complete
+ // in terms of annotation processing
+ if (isComplete == false)
+ {
+ Boolean unitComplete = unit.getAttachment(ANNOTATION_META_DATA_COMPLETE, Boolean.class);
+ isComplete = Boolean.TRUE.equals(unitComplete);
+ }
+
/* Ignore any spec metadata complete deployments. This expects that a
- deployment unit only represents one of the client, ejb or web
- deployments and its metadata completeness applies to the unit in terms
- of whether annotations should be scanned for.
- */
- boolean isComplete = this.isMetaDataCompleteIsDefault();
+ deployment unit only represents one of the client, ejb or web
+ deployments and its metadata completeness applies to the unit in terms
+ of whether annotations should be scanned for.
+ */
EjbJarMetaData ejbJarMetaData = unit.getAttachment(EjbJarMetaData.class);
- if(ejbJarMetaData != null && ejbJarMetaData instanceof EjbJar3xMetaData)
- {
- isComplete |= ((EjbJar3xMetaData) ejbJarMetaData).isMetadataComplete();
- }
- else if(ejbJarMetaData != null)
- {
- // Any ejb-jar.xml 2.1 or earlier deployment is metadata complete
- isComplete = true;
- }
WebMetaData webMetaData = unit.getAttachment(WebMetaData.class);
- if(webMetaData != null && webMetaData instanceof Web25MetaData)
+ ApplicationClientMetaData clientMetaData = unit.getAttachment(ApplicationClientMetaData.class);
+ if (isComplete == false)
{
- isComplete |= ((Web25MetaData)webMetaData).isMetadataComplete();
+ if(ejbJarMetaData != null && ejbJarMetaData instanceof EjbJar3xMetaData)
+ {
+ isComplete |= ((EjbJar3xMetaData) ejbJarMetaData).isMetadataComplete();
+ }
+ else if(ejbJarMetaData != null)
+ {
+ // Any ejb-jar.xml 2.1 or earlier deployment is metadata complete
+ isComplete = true;
+ }
+ if(webMetaData != null && webMetaData instanceof Web25MetaData)
+ {
+ isComplete |= ((Web25MetaData)webMetaData).isMetadataComplete();
+ }
+ else if(webMetaData != null)
+ {
+ // Any web.xml 2.4 or earlier deployment is metadata complete
+ isComplete = true;
+ }
+ if(clientMetaData != null)
+ isComplete |= clientMetaData.isMetadataComplete();
}
- else if(webMetaData != null)
- {
- // Any web.xml 2.4 or earlier deployment is metadata complete
- isComplete = true;
- }
- ApplicationClientMetaData clientMetaData = unit.getAttachment(ApplicationClientMetaData.class);
- if(clientMetaData != null)
- isComplete |= clientMetaData.isMetadataComplete();
if(isComplete)
{
More information about the jboss-cvs-commits
mailing list