Author: rmannibucau
Date: Wed Aug 15 00:59:23 2012
New Revision: 1373184

URL: http://svn.apache.org/viewvc?rev=1373184&view=rev
Log:
trying to avoid NPE (appears on builbot) + logging a warning if a a war is 
deployed without extension

Modified:
    
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/ValidatorBuilder.java
    
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java

Modified: 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/ValidatorBuilder.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/ValidatorBuilder.java?rev=1373184&r1=1373183&r2=1373184&view=diff
==============================================================================
--- 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/ValidatorBuilder.java
 (original)
+++ 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/ValidatorBuilder.java
 Wed Aug 15 00:59:23 2012
@@ -81,6 +81,9 @@ public final class ValidatorBuilder {
                 factory = Validation.buildDefaultValidatorFactory();
             } else {
                 Configuration<?> configuration = getConfig(config);
+                if (configuration == null) {
+                    configuration = getConfig(config);
+                }
                 try {
                     factory = configuration.buildValidatorFactory();
                 } catch (ValidationException ve) {

Modified: 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java?rev=1373184&r1=1373183&r2=1373184&view=diff
==============================================================================
--- 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java
 (original)
+++ 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java
 Wed Aug 15 00:59:23 2012
@@ -84,6 +84,7 @@ import java.util.jar.Attributes;
 import java.util.jar.JarEntry;
 import java.util.jar.JarFile;
 import java.util.jar.Manifest;
+import java.util.zip.ZipEntry;
 
 import static org.apache.openejb.config.NewLoaderLogic.applyBuiltinExcludes;
 import static org.apache.openejb.config.TldScanner.scanForTagLibs;
@@ -1538,6 +1539,19 @@ public class DeploymentLoader implements
 
             if (classFinder.find(filter)) {
                 cls = EjbModule.class;
+                // if it is a war just throw an error
+                try {
+                    final File ar = URLs.toFile(urls);
+                    if (!ar.isDirectory() && !ar.getName().endsWith("ar")) { 
// guess no archive extension, check it is not a hidden war
+                        final JarFile war = new JarFile(ar);
+                        final ZipEntry entry = war.getEntry("WEB-INF/");
+                        if (entry != null) {
+                            logger.warning("you deployed " + 
urls.toExternalForm() + ", it seems it is a war with no extension, please 
rename it");
+                        }
+                    }
+                } catch (Exception ignored) {
+                    // no-op
+                }
             }
 
             if (otherTypes.size() > 0) {


Reply via email to