You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2013/02/27 10:06:01 UTC

svn commit: r1450683 - in /tomee/tomee/trunk: container/openejb-core/src/main/java/org/apache/openejb/config/ container/openejb-core/src/main/java/org/apache/openejb/util/ tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ tomee/tomee-loader...

Author: rmannibucau
Date: Wed Feb 27 09:06:01 2013
New Revision: 1450683

URL: http://svn.apache.org/r1450683
Log:
TOMEE-780 redeploy feature of tomcat (##001) should work (respecting its limitation) in tomee

Modified:
    tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/AutoDeployer.java
    tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/AnnotationFinder.java
    tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/LinkResolver.java
    tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/URLs.java
    tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
    tomee/tomee/trunk/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/TomcatEmbedder.java

Modified: tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/AutoDeployer.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/AutoDeployer.java?rev=1450683&r1=1450682&r2=1450683&view=diff
==============================================================================
--- tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/AutoDeployer.java (original)
+++ tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/AutoDeployer.java Wed Feb 27 09:06:01 2013
@@ -129,7 +129,7 @@ public class AutoDeployer {
 
                         for (final String location : app.paths) {
 
-                            final File delete = new File(location.replace("%20", " "));
+                            final File delete = new File(location.replace("%20", " ").replace("%23", "#"));
 
                             for (int i = 0; i < 3; i++) {
                                 try {

Modified: tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/AnnotationFinder.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/AnnotationFinder.java?rev=1450683&r1=1450682&r2=1450683&view=diff
==============================================================================
--- tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/AnnotationFinder.java (original)
+++ tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/AnnotationFinder.java Wed Feb 27 09:06:01 2013
@@ -123,7 +123,7 @@ public class AnnotationFinder {
                 } else if (location.getProtocol().equals("file")) {
                     try {
                         // See if it's actually a jar
-                        final URL jarUrl = new URL("jar", "", location.toExternalForm().replace("%20", " ") + "!/");
+                        final URL jarUrl = new URL("jar", "", location.toExternalForm().replace("%20", " ").replace("%23", "#") + "!/");
                         final JarURLConnection juc = (JarURLConnection) jarUrl.openConnection();
                         classNames.addAll(jar(juc.getJarFile()));
                     } catch (IOException e) {
@@ -227,7 +227,7 @@ public class AnnotationFinder {
         }
         final URL url = new URL(jarPath);
         if ("file".equals(url.getProtocol())) { // ZipFile is faster than ZipInputStream
-            final JarFile jarFile = new JarFile(url.getFile().replace("%20", " "));
+            final JarFile jarFile = new JarFile(url.getFile().replace("%20", " ").replace("%23", "#"));
             return jar(jarFile);
         } else {
             InputStream in = url.openStream();

Modified: tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/LinkResolver.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/LinkResolver.java?rev=1450683&r1=1450682&r2=1450683&view=diff
==============================================================================
--- tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/LinkResolver.java (original)
+++ tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/LinkResolver.java Wed Feb 27 09:06:01 2013
@@ -55,7 +55,7 @@ public class LinkResolver<E> {
     }
 
     private URI resolve(URI moduleURI, String name) {
-        name = name.replace(" ", "%20");
+        name = name.replace(" ", "%20").replace("#", "%23");
         return moduleURI.resolve("#" + name);
     }
 

Modified: tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/URLs.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/URLs.java?rev=1450683&r1=1450682&r2=1450683&view=diff
==============================================================================
--- tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/URLs.java (original)
+++ tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/util/URLs.java Wed Feb 27 09:06:01 2013
@@ -108,7 +108,7 @@ public class URLs {
                 return f.toURI();
             }
         }
-        return URI.create(uri.replace(" ", "%20"));
+        return URI.create(uri.replace(" ", "%20").replace("#", "%23"));
     }
 
     private URLs() { }

Modified: tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java?rev=1450683&r1=1450682&r2=1450683&view=diff
==============================================================================
--- tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java (original)
+++ tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java Wed Feb 27 09:06:01 2013
@@ -1154,8 +1154,7 @@ public class TomcatWebAppBuilder impleme
         // appInfo is null when deployment fails
         if (contextInfo.appInfo != null) {
             for (final WebAppInfo w : contextInfo.appInfo.webApps) {
-                final String wId = getId(w.host, w.contextRoot);
-                if (id.equals(wId)) {
+                if (id.equals(getId(w.host, w.contextRoot)) || id.equals(getId(w.host, w.moduleId))) {
                     if (webAppInfo == null) {
                         webAppInfo = w;
                     } else if (w.host != null && w.host.equals(standardContext.getHostname())) {

Modified: tomee/tomee/trunk/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/TomcatEmbedder.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/TomcatEmbedder.java?rev=1450683&r1=1450682&r2=1450683&view=diff
==============================================================================
--- tomee/tomee/trunk/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/TomcatEmbedder.java (original)
+++ tomee/tomee/trunk/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/TomcatEmbedder.java Wed Feb 27 09:06:01 2013
@@ -136,6 +136,11 @@ public class TomcatEmbedder {
             if (url.contains(" ")) {
                 url = url.replaceAll(" ", "%20");
             }
+
+            if (url.contains("#")) {
+                url = url.replaceAll("#", "%23");
+            }
+
             uri = new URI(url);
 
             if (uri.getPath() == null){