You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by jk...@apache.org on 2006/08/26 22:16:15 UTC

svn commit: r437222 - in /tapestry/tapestry4/trunk/tapestry-framework/src: java/org/apache/tapestry/coerce/ test/org/apache/tapestry/coerce/

Author: jkuhnert
Date: Sat Aug 26 13:16:13 2006
New Revision: 437222

URL: http://svn.apache.org/viewvc?rev=437222&view=rev
Log:
Fixes TAPESTRY-1076 by providing clearer error message when trying to go from -> to a certain value type. 

Modified:
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/CoerceMessages.java
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/CoerceStrings.properties
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/ValueConverterImpl.java
    tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/coerce/TestValueConverter.java

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/CoerceMessages.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/CoerceMessages.java?rev=437222&r1=437221&r2=437222&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/CoerceMessages.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/CoerceMessages.java Sat Aug 26 13:16:13 2006
@@ -32,7 +32,13 @@
     {
         return _formatter.format("no-converter", ClassFabUtils.getJavaClassName(desiredType));
     }
-
+    
+    static String noConverter(Class fromType, Class desiredType)
+    {
+        return _formatter.format("no-converter-from", ClassFabUtils.getJavaClassName(desiredType),
+                ClassFabUtils.getJavaClassName(fromType));
+    }
+    
     static String stringToNumberConversionError(String value, Class targetClass, Throwable cause)
     {
         return _formatter.format(

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/CoerceStrings.properties
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/CoerceStrings.properties?rev=437222&r1=437221&r2=437222&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/CoerceStrings.properties (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/CoerceStrings.properties Sat Aug 26 13:16:13 2006
@@ -13,6 +13,7 @@
 # limitations under the License.
 
 no-converter=No type converter for type {0} is available.
+no-converter-from=Unable to convert from type {1} to {0}. No type converter for {1} is available.
 string-to-number-conversion-error=Unable to convert ''{0}'' to an instance of {1}: {2}
 
 

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/ValueConverterImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/ValueConverterImpl.java?rev=437222&r1=437221&r2=437222&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/ValueConverterImpl.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/coerce/ValueConverterImpl.java Sat Aug 26 13:16:13 2006
@@ -102,7 +102,7 @@
             return null;
 
         if (converter == null)
-            throw new ApplicationRuntimeException(CoerceMessages.noConverter(effectiveType));
+            throw new ApplicationRuntimeException(CoerceMessages.noConverter(value.getClass(), effectiveType));
 
         return converter.convertValue(value);
     }

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/coerce/TestValueConverter.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/coerce/TestValueConverter.java?rev=437222&r1=437221&r2=437222&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/coerce/TestValueConverter.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/coerce/TestValueConverter.java Sat Aug 26 13:16:13 2006
@@ -68,7 +68,7 @@
         }
         catch (ApplicationRuntimeException ex)
         {
-            assertEquals(CoerceMessages.noConverter(Date.class), ex.getMessage());
+            assertEquals(CoerceMessages.noConverter(String.class, Date.class), ex.getMessage());
         }
     }
 
@@ -87,7 +87,7 @@
         }
         catch (ApplicationRuntimeException ex)
         {
-            assertEquals(CoerceMessages.noConverter(Integer.class), ex.getMessage());
+            assertEquals(CoerceMessages.noConverter(Object.class, Integer.class), ex.getMessage());
         }
     }