You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by re...@apache.org on 2007/02/21 19:24:05 UTC

svn commit: r510136 - in /cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet: ReloadingClassloaderCreationException.java ReloadingClassloaderManager.java ReloadingSpringFilter.java

Author: reinhard
Date: Wed Feb 21 10:24:04 2007
New Revision: 510136

URL: http://svn.apache.org/viewvc?view=rev&rev=510136
Log:
- always expect URLs in the ReloadingClassloader properties
  (paths are not supported anymore)

Modified:
    cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingClassloaderCreationException.java
    cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingClassloaderManager.java
    cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingSpringFilter.java

Modified: cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingClassloaderCreationException.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingClassloaderCreationException.java?view=diff&rev=510136&r1=510135&r2=510136
==============================================================================
--- cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingClassloaderCreationException.java (original)
+++ cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingClassloaderCreationException.java Wed Feb 21 10:24:04 2007
@@ -17,9 +17,13 @@
 package org.apache.cocoon.servlet;
 
 public class ReloadingClassloaderCreationException extends RuntimeException {
+    
+    public ReloadingClassloaderCreationException(String msg) {
+        super(msg);
+    }
 
     public ReloadingClassloaderCreationException(String msg, Exception e) {
         super(msg, e);
     }
-    
+
 }

Modified: cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingClassloaderManager.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingClassloaderManager.java?view=diff&rev=510136&r1=510135&r2=510136
==============================================================================
--- cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingClassloaderManager.java (original)
+++ cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingClassloaderManager.java Wed Feb 21 10:24:04 2007
@@ -33,6 +33,8 @@
 
 public class ReloadingClassloaderManager {
 
+    private static final String FILE_PROTOCOL = "file:";
+
     private static final String WEB_INF_RCL_URLCL_CONF = "/WEB-INF/cocoon/rclwrapper.urlcl.conf";
     
     private static final String WEB_INF_RCLWRAPPER_RCL_CONF = "/WEB-INF/cocoon/rclwrapper.rcl.conf";        
@@ -97,7 +99,15 @@
             List lines = IOUtils.readLines(context.getResourceAsStream(WEB_INF_RCLWRAPPER_RCL_CONF));
             for (Iterator linesIt = lines.iterator(); linesIt.hasNext();) {
                 String line = (String) linesIt.next();
-                org.apache.commons.jci.listeners.ReloadingListener rl = new CocoonReloadingListener(new File(line));
+                if(!line.startsWith(FILE_PROTOCOL)) {
+                    throw new ReloadingClassloaderCreationException("Only support file: URLs.");
+                }
+                String url = line.substring(FILE_PROTOCOL.length());
+                // windows paths
+                if(url.indexOf(2) == ':') {
+                    url = url.substring(1);
+                }
+                org.apache.commons.jci.listeners.ReloadingListener rl = new CocoonReloadingListener(new File(url));
                 reloadingListeners.add(rl);
             }
             return reloadingListeners;

Modified: cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingSpringFilter.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingSpringFilter.java?view=diff&rev=510136&r1=510135&r2=510136
==============================================================================
--- cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingSpringFilter.java (original)
+++ cocoon/trunk/tools/cocoon-rcl/cocoon-rcl-webapp-wrapper/src/main/java/org/apache/cocoon/servlet/ReloadingSpringFilter.java Wed Feb 21 10:24:04 2007
@@ -50,6 +50,7 @@
                 System.out.println("old appContext: " + appContext);
                 
                 ContextLoader springContextLoader = new ContextLoader();
+                System.out.println("rsf: " + springContextLoader.getClass().getClassLoader());
                 springContextLoader.closeWebApplicationContext(this.config.getServletContext());
                 this.config.getServletContext().removeAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
                 springContextLoader.initWebApplicationContext(this.config.getServletContext());