Author: rmannibucau Date: Wed Dec 26 09:12:19 2012 New Revision: 1425860 URL: http://svn.apache.org/viewvc?rev=1425860&view=rev Log: avoiding NPE
Modified: openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/ReportValidationResults.java openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/rules/CheckCdiEnabled.java Modified: openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/ReportValidationResults.java URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/ReportValidationResults.java?rev=1425860&r1=1425859&r2=1425860&view=diff ============================================================================== --- openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/ReportValidationResults.java (original) +++ openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/ReportValidationResults.java Wed Dec 26 09:12:19 2012 @@ -79,11 +79,7 @@ public class ReportValidationResults imp logger.info("Set the '"+VALIDATION_LEVEL+"' system property to "+ join(" or ", levels) +" for increased validation details."); } - validationFailedException = new ValidationFailedException("Module failed validation. " + uberContext.getModuleType() + "(name=" + uberContext.getName() + ")", uberContext, validationFailedException); - - if (validationFailedException != null) throw validationFailedException; - - return appModule; + throw new ValidationFailedException("Module failed validation. " + uberContext.getModuleType() + "(name=" + uberContext.getName() + ")", uberContext, validationFailedException); } private void logResults(ValidationContext context, Level level) { Modified: openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/rules/CheckCdiEnabled.java URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/rules/CheckCdiEnabled.java?rev=1425860&r1=1425859&r2=1425860&view=diff ============================================================================== --- openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/rules/CheckCdiEnabled.java (original) +++ openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/rules/CheckCdiEnabled.java Wed Dec 26 09:12:19 2012 @@ -17,15 +17,24 @@ package org.apache.openejb.config.rules; import org.apache.openejb.config.EjbModule; +import org.apache.xbean.finder.IAnnotationFinder; import javax.inject.Inject; public class CheckCdiEnabled extends ValidationBase { public void validate(EjbModule ejbModule) { + if (ejbModule.getFinder() == null) { + return; + } + if (ejbModule.getBeans() == null - && (!ejbModule.getFinder().findAnnotatedMethods(Inject.class).isEmpty() - || !ejbModule.getFinder().findAnnotatedFields(Inject.class).isEmpty())) { + && hasAtInject(ejbModule.getFinder())) { warn(ejbModule.getModuleId(), "cdi.notEnabled", ejbModule.getModuleId()); } } + + private static boolean hasAtInject(final IAnnotationFinder finder) { + return !finder.findAnnotatedMethods(Inject.class).isEmpty() + || !finder.findAnnotatedFields(Inject.class).isEmpty(); + } }