Author: ivaynberg
Date: Sat Mar 26 06:57:06 2011
New Revision: 1085658

URL: http://svn.apache.org/viewvc?rev=1085658&view=rev
Log:

Issue: WICKET-3548

Modified:
    
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java
    
wicket/trunk/wicket-ioc/src/main/java/org/apache/wicket/proxy/LazyInitProxyFactory.java

Modified: 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java?rev=1085658&r1=1085657&r2=1085658&view=diff
==============================================================================
--- 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java
 (original)
+++ 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java
 Sat Mar 26 06:57:06 2011
@@ -56,30 +56,19 @@ public class WicketObjects
         * @param className
         *            Class to resolve
         * @return Resolved class
+        * @throws ClassNotFoundException
         */
        @SuppressWarnings("unchecked")
-       public static <T> Class<T> resolveClass(final String className)
+       public static <T> Class<T> resolveClass(final String className) throws 
ClassNotFoundException
        {
-               if (className == null)
+               if (Application.exists())
                {
-                       return null;
-               }
-               try
-               {
-                       if (Application.exists())
-                       {
-                               return (Class<T>)Application.get()
-                                       .getApplicationSettings()
-                                       .getClassResolver()
-                                       .resolveClass(className);
-                       }
-                       return (Class<T>)Class.forName(className);
-               }
-               catch (ClassNotFoundException e)
-               {
-                       log.warn("Could not resolve class: " + className);
-                       return null;
+                       return (Class<T>)Application.get()
+                               .getApplicationSettings()
+                               .getClassResolver()
+                               .resolveClass(className);
                }
+               return (Class<T>)Class.forName(className);
        }
 
        /**
@@ -435,21 +424,9 @@ public class WicketObjects
                        try
                        {
                                Class<?> c = 
WicketObjects.resolveClass(className);
-                               if (c == null)
-                               {
-                                       throw new 
WicketRuntimeException("Unable to create " + className);
-                               }
                                return c.newInstance();
                        }
-                       catch (ClassCastException e)
-                       {
-                               throw new WicketRuntimeException("Unable to 
create " + className, e);
-                       }
-                       catch (InstantiationException e)
-                       {
-                               throw new WicketRuntimeException("Unable to 
create " + className, e);
-                       }
-                       catch (IllegalAccessException e)
+                       catch (Exception e)
                        {
                                throw new WicketRuntimeException("Unable to 
create " + className, e);
                        }

Modified: 
wicket/trunk/wicket-ioc/src/main/java/org/apache/wicket/proxy/LazyInitProxyFactory.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-ioc/src/main/java/org/apache/wicket/proxy/LazyInitProxyFactory.java?rev=1085658&r1=1085657&r2=1085658&view=diff
==============================================================================
--- 
wicket/trunk/wicket-ioc/src/main/java/org/apache/wicket/proxy/LazyInitProxyFactory.java
 (original)
+++ 
wicket/trunk/wicket-ioc/src/main/java/org/apache/wicket/proxy/LazyInitProxyFactory.java
 Sat Mar 26 06:57:06 2011
@@ -16,7 +16,6 @@
  */
 package org.apache.wicket.proxy;
 
-import java.io.InvalidClassException;
 import java.io.ObjectStreamException;
 import java.io.Serializable;
 import java.lang.reflect.InvocationHandler;
@@ -228,14 +227,16 @@ public class LazyInitProxyFactory
 
                private Object readResolve() throws ObjectStreamException
                {
-                       Class<?> clazz;
-                       clazz = WicketObjects.resolveClass(type);
-                       if (clazz == null)
+                       try
+                       {
+                               Class<?> clazz = 
WicketObjects.resolveClass(type);
+                               return LazyInitProxyFactory.createProxy(clazz, 
locator);
+                       }
+                       catch (ClassNotFoundException e)
                        {
-                               throw new InvalidClassException(type, "could 
not resolve class [" + type +
-                                       "] when deserializing proxy");
+                               throw new RuntimeException("Could not resolve 
class [" + type +
+                                       "] when deserializing proxy", e);
                        }
-                       return LazyInitProxyFactory.createProxy(clazz, locator);
                }
        }
 


Reply via email to