Author: rmannibucau
Date: Tue May 29 12:23:17 2012
New Revision: 1343695

URL: http://svn.apache.org/viewvc?rev=1343695&view=rev
Log:
avoiding NPE when the servlet cant be added

Removed:
    openejb/trunk/openejb/arquillian/arquillian-tomee-extensions/
Modified:
    
openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEContainer.java
    openejb/trunk/openejb/arquillian/pom.xml
    
openejb/trunk/openejb/server/openejb-webservices/src/main/java/org/apache/openejb/server/webservices/WsService.java

Modified: 
openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEContainer.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEContainer.java?rev=1343695&r1=1343694&r2=1343695&view=diff
==============================================================================
--- 
openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEContainer.java
 (original)
+++ 
openejb/trunk/openejb/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEContainer.java
 Tue May 29 12:23:17 2012
@@ -171,7 +171,15 @@ public abstract class TomEEContainer<Con
         for (WebAppInfo webApps : appInfo.webApps) {
             for (ServletInfo servlet : webApps.servlets) {
                 // weird but arquillianurl doesn't match the servlet url but 
its context
-                httpContext.add(new Servlet(servlet.servletClass, 
webApps.contextRoot));
+                String clazz = servlet.servletClass;
+                if (clazz == null) {
+                    clazz = servlet.servletName;
+                    if (clazz == null) {
+                        continue;
+                    }
+                }
+
+                httpContext.add(new Servlet(clazz, webApps.contextRoot));
                 /*
                 for (String mapping : servlet.mappings) {
                     httpContext.add(new Servlet(servlet.servletClass, 
startWithSlash(uniqueSlash(webApps.contextRoot, mapping))));
@@ -231,9 +239,7 @@ public abstract class TomEEContainer<Con
             httpContext.add(new Servlet("ArquillianServletRunner", 
arquillianServlet));
             addServlets(httpContext, appInfo);
 
-            // we should probably get all servlets and add them to the context
-            final ProtocolMetaData metadata = new 
ProtocolMetaData().addContext(httpContext);
-            return metadata;
+            return new ProtocolMetaData().addContext(httpContext);
         } catch (Exception e) {
             e.printStackTrace();
             throw new DeploymentException("Unable to deploy", e);

Modified: openejb/trunk/openejb/arquillian/pom.xml
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/arquillian/pom.xml?rev=1343695&r1=1343694&r2=1343695&view=diff
==============================================================================
--- openejb/trunk/openejb/arquillian/pom.xml (original)
+++ openejb/trunk/openejb/arquillian/pom.xml Tue May 29 12:23:17 2012
@@ -48,6 +48,5 @@
     <module>arquillian-tomee-moviefun-example</module>
     <module>arquillian-openejb-embedded-4</module>
     <module>ziplock</module>
-    <module>arquillian-tomee-extensions</module>
   </modules>
 </project>

Modified: 
openejb/trunk/openejb/server/openejb-webservices/src/main/java/org/apache/openejb/server/webservices/WsService.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-webservices/src/main/java/org/apache/openejb/server/webservices/WsService.java?rev=1343695&r1=1343694&r2=1343695&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-webservices/src/main/java/org/apache/openejb/server/webservices/WsService.java
 (original)
+++ 
openejb/trunk/openejb/server/openejb-webservices/src/main/java/org/apache/openejb/server/webservices/WsService.java
 Tue May 29 12:23:17 2012
@@ -323,8 +323,14 @@ public abstract class WsService implemen
         }
 
         for (ServletInfo servlet : webApp.servlets) {
+            if (servlet.servletName == null) {
+                continue;
+            }
+
             PortInfo portInfo = ports.get(servlet.servletName);
-            if (portInfo == null) continue;
+            if (portInfo == null) {
+                continue;
+            }
 
             try {
                 ClassLoader classLoader = webContext.getClassLoader();
@@ -396,8 +402,14 @@ public abstract class WsService implemen
                 }
 
                 for (ServletInfo servlet : webApp.servlets) {
+                    if (servlet.servletClass == null) {
+                        continue;
+                    }
+
                     PortInfo portInfo = ports.get(servlet.servletClass);
-                    if (portInfo == null) continue;
+                    if (portInfo == null) {
+                        continue;
+                    }
 
                     // remove wsdl addresses from global registry
                     String address = servletAddresses.remove(webApp.moduleId + 
"." + servlet.servletName);


Reply via email to