Author: apetrelli
Date: Wed Oct 29 06:37:02 2008
New Revision: 708904

URL: http://svn.apache.org/viewvc?rev=708904&view=rev
Log:
TILES-324
Merge from trunk to TILES_2_0_X branch.
Now the second call to setCurrentClassloader is made only if the original was 
null.
Better deprecation of the old ClassUtil.

Modified:
    tiles/framework/branches/TILES_2_0_X/   (props changed)
    tiles/framework/branches/TILES_2_0_X/src/site/apt/config-reference.apt   
(props changed)
    tiles/framework/branches/TILES_2_0_X/src/site/apt/dev/   (props changed)
    tiles/framework/branches/TILES_2_0_X/src/site/apt/getting_started.apt   
(props changed)
    tiles/framework/branches/TILES_2_0_X/src/site/apt/migration/   (props 
changed)
    tiles/framework/branches/TILES_2_0_X/src/site/apt/selenium.apt   (props 
changed)
    tiles/framework/branches/TILES_2_0_X/src/site/apt/tutorial/   (props 
changed)
    
tiles/framework/branches/TILES_2_0_X/src/site/resources/images/page_to_page.png 
  (props changed)
    
tiles/framework/branches/TILES_2_0_X/src/site/resources/images/tiled_page.png   
(props changed)
    tiles/framework/branches/TILES_2_0_X/src/site/xdoc/dev/building.xml   
(props changed)
    tiles/framework/branches/TILES_2_0_X/src/site/xdoc/dev/snapshots.xml   
(props changed)
    tiles/framework/branches/TILES_2_0_X/src/site/xdoc/images/page_to_page.svg  
 (props changed)
    tiles/framework/branches/TILES_2_0_X/src/site/xdoc/images/tiled_page.svg   
(props changed)
    
tiles/framework/branches/TILES_2_0_X/tiles-api/src/main/java/org/apache/tiles/reflect/
   (props changed)
    
tiles/framework/branches/TILES_2_0_X/tiles-api/src/main/java/org/apache/tiles/reflect/ClassUtil.java
    
tiles/framework/branches/TILES_2_0_X/tiles-core/src/main/java/org/apache/tiles/util/ClassUtil.java

Propchange: tiles/framework/branches/TILES_2_0_X/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk:676655,680114-680116,693549-693560,694754,700541,701807,701815,705699
+/tiles/framework/trunk:676655,680114-680116,693549-693560,694754,700541,701807,701815,705699,708901

Propchange: 
tiles/framework/branches/TILES_2_0_X/src/site/apt/config-reference.apt
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/src/site/apt/config-reference.apt:694754,700541,701807,701815,705699
+/tiles/framework/trunk/src/site/apt/config-reference.apt:694754,700541,701807,701815,705699,708901

Propchange: tiles/framework/branches/TILES_2_0_X/src/site/apt/dev/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/src/site/apt/dev:694754,700541,701807,701815,705699
+/tiles/framework/trunk/src/site/apt/dev:694754,700541,701807,701815,705699,708901

Propchange: 
tiles/framework/branches/TILES_2_0_X/src/site/apt/getting_started.apt
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/src/site/apt/getting_started.apt:694754,700541,701807,701815,705699
+/tiles/framework/trunk/src/site/apt/getting_started.apt:694754,700541,701807,701815,705699,708901

Propchange: tiles/framework/branches/TILES_2_0_X/src/site/apt/migration/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/src/site/apt/migration:694754,700541,701807,701815,705699
+/tiles/framework/trunk/src/site/apt/migration:694754,700541,701807,701815,705699,708901

Propchange: tiles/framework/branches/TILES_2_0_X/src/site/apt/selenium.apt
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/src/site/apt/selenium.apt:694754,700541,701807,701815,705699
+/tiles/framework/trunk/src/site/apt/selenium.apt:694754,700541,701807,701815,705699,708901

Propchange: tiles/framework/branches/TILES_2_0_X/src/site/apt/tutorial/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/src/site/apt/tutorial:694754,700541,701807,701815,705699
+/tiles/framework/trunk/src/site/apt/tutorial:694754,700541,701807,701815,705699,708901

Propchange: 
tiles/framework/branches/TILES_2_0_X/src/site/resources/images/page_to_page.png
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/src/site/resources/images/page_to_page.png:694754,700541,701807,701815,705699
+/tiles/framework/trunk/src/site/resources/images/page_to_page.png:694754,700541,701807,701815,705699,708901

Propchange: 
tiles/framework/branches/TILES_2_0_X/src/site/resources/images/tiled_page.png
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/src/site/resources/images/tiled_page.png:694754,700541,701807,701815,705699
+/tiles/framework/trunk/src/site/resources/images/tiled_page.png:694754,700541,701807,701815,705699,708901

Propchange: tiles/framework/branches/TILES_2_0_X/src/site/xdoc/dev/building.xml
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/src/site/xdoc/dev/building.xml:694754,700541,701807,701815,705699
+/tiles/framework/trunk/src/site/xdoc/dev/building.xml:694754,700541,701807,701815,705699,708901

Propchange: tiles/framework/branches/TILES_2_0_X/src/site/xdoc/dev/snapshots.xml
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/src/site/xdoc/dev/snapshots.xml:694754,700541,701807,701815,705699
+/tiles/framework/trunk/src/site/xdoc/dev/snapshots.xml:694754,700541,701807,701815,705699,708901

Propchange: 
tiles/framework/branches/TILES_2_0_X/src/site/xdoc/images/page_to_page.svg
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/src/site/xdoc/images/page_to_page.svg:694754,700541,701807,701815,705699
+/tiles/framework/trunk/src/site/xdoc/images/page_to_page.svg:694754,700541,701807,701815,705699,708901

Propchange: 
tiles/framework/branches/TILES_2_0_X/src/site/xdoc/images/tiled_page.svg
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/src/site/xdoc/images/tiled_page.svg:694754,700541,701807,701815,705699
+/tiles/framework/trunk/src/site/xdoc/images/tiled_page.svg:694754,700541,701807,701815,705699,708901

Propchange: 
tiles/framework/branches/TILES_2_0_X/tiles-api/src/main/java/org/apache/tiles/reflect/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 29 06:37:02 2008
@@ -1 +1 @@
-/tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/reflect:693549-693560,694754,700541,701807,701815,705699
+/tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/reflect:693549-693560,694754,700541,701807,701815,705699,708901

Modified: 
tiles/framework/branches/TILES_2_0_X/tiles-api/src/main/java/org/apache/tiles/reflect/ClassUtil.java
URL: 
http://svn.apache.org/viewvc/tiles/framework/branches/TILES_2_0_X/tiles-api/src/main/java/org/apache/tiles/reflect/ClassUtil.java?rev=708904&r1=708903&r2=708904&view=diff
==============================================================================
--- 
tiles/framework/branches/TILES_2_0_X/tiles-api/src/main/java/org/apache/tiles/reflect/ClassUtil.java
 (original)
+++ 
tiles/framework/branches/TILES_2_0_X/tiles-api/src/main/java/org/apache/tiles/reflect/ClassUtil.java
 Wed Oct 29 06:37:02 2008
@@ -91,7 +91,11 @@
                             + "'. Make sure that this class has a default 
constructor",
                     e);
         } finally {
-            Thread.currentThread().setContextClassLoader(original);
+            // If the original context classloader of the current thread was
+            // null, it must be reset.
+            if (original == null) {
+                Thread.currentThread().setContextClassLoader(null);
+            }
         }
     }
 

Modified: 
tiles/framework/branches/TILES_2_0_X/tiles-core/src/main/java/org/apache/tiles/util/ClassUtil.java
URL: 
http://svn.apache.org/viewvc/tiles/framework/branches/TILES_2_0_X/tiles-core/src/main/java/org/apache/tiles/util/ClassUtil.java?rev=708904&r1=708903&r2=708904&view=diff
==============================================================================
--- 
tiles/framework/branches/TILES_2_0_X/tiles-core/src/main/java/org/apache/tiles/util/ClassUtil.java
 (original)
+++ 
tiles/framework/branches/TILES_2_0_X/tiles-core/src/main/java/org/apache/tiles/util/ClassUtil.java
 Wed Oct 29 06:37:02 2008
@@ -45,9 +45,12 @@
      * @param className The class name to load and to instantiate.
      * @return The new instance of the class name.
      * @throws TilesException If something goes wrong during instantiation.
+     * @deprecated Use
+     * [EMAIL PROTECTED] 
org.apache.tiles.reflect.ClassUtil#instantiate(String)}.
      */
+    @Deprecated
     public static Object instantiate(String className) throws TilesException {
-        return instantiate(className, false);
+        return org.apache.tiles.reflect.ClassUtil.instantiate(className);
     }
 
     /**
@@ -60,29 +63,14 @@
      * <code>TilesException</code>.
      * @return The new instance of the class name.
      * @throws TilesException If something goes wrong during instantiation.
+     * @deprecated Use
+     * [EMAIL PROTECTED] 
org.apache.tiles.reflect.ClassUtil#instantiate(String, boolean)}.
      */
+    @Deprecated
     public static Object instantiate(String className, boolean returnNull)
         throws TilesException {
-        ClassLoader original = Thread.currentThread().getContextClassLoader();
-        if (original == null) {
-            
Thread.currentThread().setContextClassLoader(ClassUtil.class.getClassLoader());
-        }
-        try {
-            Class<?> namedClass = Class.forName(className);
-            return namedClass.newInstance();
-        } catch (ClassNotFoundException e) {
-            if (returnNull) {
-                return null;
-            }
-            throw new TilesException("Unable to resolve factory class: '" + 
className + "'");
-        } catch (IllegalAccessException e) {
-            throw new TilesException("Unable to access factory class: '" + 
className + "'");
-        } catch (InstantiationException e) {
-            throw new TilesException("Unable to instantiate factory class: '"
-                + className + "'. Make sure that this class has a default 
constructor");
-        } finally {
-            Thread.currentThread().setContextClassLoader(original);
-        }
+        return org.apache.tiles.reflect.ClassUtil.instantiate(className,
+                returnNull);
     }
 
 }


Reply via email to