You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by we...@apache.org on 2006/04/10 14:50:23 UTC

svn commit: r392937 - /incubator/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/ComponentUtil.java

Author: weber
Date: Mon Apr 10 05:50:22 2006
New Revision: 392937

URL: http://svn.apache.org/viewcvs?rev=392937&view=rev
Log:
use submitted Value and application provided converter when rendering values

Modified:
    incubator/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/ComponentUtil.java

Modified: incubator/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/ComponentUtil.java
URL: http://svn.apache.org/viewcvs/incubator/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/ComponentUtil.java?rev=392937&r1=392936&r2=392937&view=diff
==============================================================================
--- incubator/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/ComponentUtil.java (original)
+++ incubator/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/component/ComponentUtil.java Mon Apr 10 05:50:22 2006
@@ -368,9 +368,21 @@
   public static String currentValue(UIComponent component) {
     String currentValue = null;
     if (component instanceof ValueHolder) {
-      Object value = ((ValueHolder) component).getValue();
+      Object value;
+      if (component instanceof EditableValueHolder) {
+        value = ((EditableValueHolder) component).getSubmittedValue();
+        if (value != null) {
+          return (String) value;
+        }
+      }
+
+      value = ((ValueHolder) component).getValue();
       if (value != null) {
         Converter converter = ((ValueHolder) component).getConverter();
+        if (converter == null) {
+          FacesContext context = FacesContext.getCurrentInstance();
+          converter = context.getApplication().createConverter(value.getClass());
+        }
         if (converter != null) {
           currentValue =
               converter.getAsString(FacesContext.getCurrentInstance(),