You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2008/08/10 00:08:28 UTC

svn commit: r684361 - in /myfaces/commons/trunk: myfaces-commons-converters/src/main/java/org/apache/myfaces/commons/converter/ myfaces-commons-converters/src/test/java/org/apache/myfaces/commons/converter/ myfaces-commons-utils/src/main/resources/org/...

Author: lu4242
Date: Sat Aug  9 15:08:28 2008
New Revision: 684361

URL: http://svn.apache.org/viewvc?rev=684361&view=rev
Log:
add informative message when targetClass is not an enum and set targetClass as required

Modified:
    myfaces/commons/trunk/myfaces-commons-converters/src/main/java/org/apache/myfaces/commons/converter/EnumConverter.java
    myfaces/commons/trunk/myfaces-commons-converters/src/test/java/org/apache/myfaces/commons/converter/EnumConverterTest.java
    myfaces/commons/trunk/myfaces-commons-utils/src/main/resources/org/apache/myfaces/commons/Messages.properties

Modified: myfaces/commons/trunk/myfaces-commons-converters/src/main/java/org/apache/myfaces/commons/converter/EnumConverter.java
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-converters/src/main/java/org/apache/myfaces/commons/converter/EnumConverter.java?rev=684361&r1=684360&r2=684361&view=diff
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-converters/src/main/java/org/apache/myfaces/commons/converter/EnumConverter.java (original)
+++ myfaces/commons/trunk/myfaces-commons-converters/src/main/java/org/apache/myfaces/commons/converter/EnumConverter.java Sat Aug  9 15:08:28 2008
@@ -43,6 +43,7 @@
     public static final String CONVERTER_ID = "org.apache.myfaces.commons.converter.Enum";
     public static final String ENUM_ID = "org.apache.myfaces.commons.converter.EnumConverter.ENUM";
     public static final String ENUM_NO_CLASS_ID = "org.apache.myfaces.commons.converter.EnumConverter.ENUM_NO_CLASS";
+    public static final String ENUM_NO_ENUM_CLASS = "org.apache.myfaces.commons.converter.EnumConverter.ENUM_NO_ENUM_CLASS";
     
     private Class targetClass;
     
@@ -100,6 +101,13 @@
                                                                        ENUM_NO_CLASS_ID, 
                                                                        params));
         }
+        if (!targetClass.isEnum())
+        {
+            Object[] params = new Object[]{value, MessageUtils.getLabel(facesContext, uiComponent)};
+            throw new ConverterException(MessageUtils.getMessage(FacesMessage.SEVERITY_ERROR,
+                                                                       ENUM_NO_ENUM_CLASS, 
+                                                                       params));
+        }
     }
 
     // find the first constant value of the targetClass and return as a String
@@ -130,7 +138,8 @@
     /**
      * The enum class to be used for this converter as reference
      * 
-     * @JSFProperty 
+     * @JSFProperty
+     *   required = "true" 
      */
     public Class getTargetClass()
     {

Modified: myfaces/commons/trunk/myfaces-commons-converters/src/test/java/org/apache/myfaces/commons/converter/EnumConverterTest.java
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-converters/src/test/java/org/apache/myfaces/commons/converter/EnumConverterTest.java?rev=684361&r1=684360&r2=684361&view=diff
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-converters/src/test/java/org/apache/myfaces/commons/converter/EnumConverterTest.java (original)
+++ myfaces/commons/trunk/myfaces-commons-converters/src/test/java/org/apache/myfaces/commons/converter/EnumConverterTest.java Sat Aug  9 15:08:28 2008
@@ -79,7 +79,7 @@
         }
         catch (ConverterException exception)
         {
-            fail();
+            fail(exception.getMessage());
         }
     }
     

Modified: myfaces/commons/trunk/myfaces-commons-utils/src/main/resources/org/apache/myfaces/commons/Messages.properties
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-utils/src/main/resources/org/apache/myfaces/commons/Messages.properties?rev=684361&r1=684360&r2=684361&view=diff
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-utils/src/main/resources/org/apache/myfaces/commons/Messages.properties (original)
+++ myfaces/commons/trunk/myfaces-commons-utils/src/main/resources/org/apache/myfaces/commons/Messages.properties Sat Aug  9 15:08:28 2008
@@ -30,4 +30,10 @@
 org.apache.myfaces.commons.validator.csv.SUFFIX= - on entry #{0}
 org.apache.myfaces.commons.validator.csv.INVALID_SEPARATOR=invalid separator {0}
 org.apache.myfaces.commons.validator.Url.INVALID = The given url {0} is invalid
-org.apache.myfaces.commons.validator.ISBN.INVALID = The given isbn {0} is invalid
\ No newline at end of file
+org.apache.myfaces.commons.validator.ISBN.INVALID =The given isbn {0} is invalid
+org.apache.myfaces.commons.converter.EnumConverter.ENUM = Conversion Error.
+org.apache.myfaces.commons.converter.EnumConverter.ENUM_detail = {2} : The given value {0} does not match with any enum value as {1}.
+org.apache.myfaces.commons.converter.EnumConverter.ENUM_NO_CLASS = No target class selected.
+org.apache.myfaces.commons.converter.EnumConverter.ENUM_NO_CLASS_detail = {1} :  enum targetClass for converter does not exists. 
+org.apache.myfaces.commons.converter.EnumConverter.ENUM_NO_ENUM_CLASS = Class is not an enum.
+org.apache.myfaces.commons.converter.EnumConverter.ENUM_NO_ENUM_CLASS_detail = {1} : The class selected as targetClass for the converter is not an enum.
\ No newline at end of file