TRINIDAD-2470 - GenericConverterFactory needs to throw TypeConversionException in response to exceptions during conversion
diff --git a/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/convert/GenericConverterFactory.java b/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/convert/GenericConverterFactory.java
index 77a2491..9bf8ecd 100644
--- a/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/convert/GenericConverterFactory.java
+++ b/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/convert/GenericConverterFactory.java
@@ -284,8 +284,17 @@
TypeConverter converter = getConverter(source.getClass(), targetType);
if (converter != null)
{
- return converter.convert(source, targetType);
+ try
+ {
+ return converter.convert(source, targetType);
+ }
+ catch(Exception exe)
+ {
+ // Rethrow any resulting exception wrapped in a TypeConversion exception
+ throw new TypeConversionException(source, targetType, exe);
+ }
}
+
throw new TypeConversionException(source, targetType);
}