Index: org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/dataTypes/impl/coercion/CoerceToDate.java
===================================================================
--- org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/dataTypes/impl/coercion/CoerceToDate.java	(revision 1998)
+++ org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/dataTypes/impl/coercion/CoerceToDate.java	(revision 1999)
@@ -28,13 +28,12 @@
 import java.util.Date;
 import java.util.Locale;
 
-
 /**
  * Coerces a value to a {@link Date}. If the value is not a {@link Date}, it
- * will use the {@link Object#toString()} method to convert the
- * resulting {@link String} to a Date object using the current locale default
- * formatter for Date through the {@link DateFormat#getDateInstance(int)} method
- * and the {@link DateFormat#SHORT} style.
+ * will use the {@link Object#toString()} method to convert the resulting
+ * {@link String} to a Date object using the current locale default formatter
+ * for Date through the {@link DateFormat#getDateInstance(int)} method and the
+ * {@link DateFormat#SHORT} style.
  *
  * @author gvSIG Team
  * @version $Id$
@@ -44,10 +43,11 @@
 
     @Override
     protected DateFormat[] getFormatters(Locale locale) {
-        return new DateFormat[] {
+        return new DateFormat[]{
             DateFormat.getDateInstance(DateFormat.SHORT, locale),
             DateFormat.getDateInstance(DateFormat.MEDIUM, locale),
             DateFormat.getDateInstance(DateFormat.LONG, locale),
+            DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG, locale),
             new SimpleDateFormat("yyyy-MM-dd") // PostgreSQL format
         };
     }
Index: org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/dataTypes/impl/coercion/CoerceToDateTime.java
===================================================================
--- org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/dataTypes/impl/coercion/CoerceToDateTime.java	(revision 1998)
+++ org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/dataTypes/impl/coercion/CoerceToDateTime.java	(revision 1999)
@@ -45,7 +45,8 @@
     protected DateFormat[] getFormatters(Locale locale) {
         return new DateFormat[] {
             DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.MEDIUM, locale),
-            DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT, locale)
+            DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT, locale),
+            DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.LONG, locale)
         };
     }
 
Index: org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/dataTypes/impl/coercion/CoerceToString.java
===================================================================
--- org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/dataTypes/impl/coercion/CoerceToString.java	(revision 1998)
+++ org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/dataTypes/impl/coercion/CoerceToString.java	(revision 1999)
@@ -23,6 +23,7 @@
  */
 package org.gvsig.tools.dataTypes.impl.coercion;
 
+import java.sql.Time;
 import java.text.NumberFormat;
 import java.util.Date;
 import java.util.Locale;
@@ -32,50 +33,60 @@
 
 public class CoerceToString implements CoercionWithLocale {
 
-    @Override
-    public Object coerce(Object value) throws CoercionException {
-        if (value == null) {
-            return null;
-        }
-        try {
-            if (value instanceof Date) {
-                Locale locale = Locale.getDefault();
-                DateFormat df = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG, locale);
-                value = df.format(value);
-            } else if (!(value instanceof String)) {
-                value = value.toString();
-            }
-            return value;
-        } catch (Exception e) {
-            throw new CoercionException(e);
-        }
+	@Override
+	public Object coerce(Object value) throws CoercionException {
+		if (value == null) {
+			return null;
+		}
+		try {
+			if (value instanceof Time) {
+				Locale locale = Locale.getDefault();
+				DateFormat df = DateFormat.getTimeInstance(DateFormat.LONG, locale);
+				value = df.format(value);
+			} else if (value instanceof Date) {
+				Locale locale = Locale.getDefault();
+				DateFormat df = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG, locale);
+				value = df.format(value);
+			} else if (!(value instanceof String)) {
+				Locale locale = Locale.getDefault();
+				if (value instanceof Float || value instanceof Double) {
+					NumberFormat nf = NumberFormat.getInstance(locale);
+					value = nf.format(((Number) value).doubleValue());
+				} else {
+					value = value.toString();
+				}
+			}
+			return value;
+		} catch (Exception e) {
+			throw new CoercionException(e);
+		}
 
-    }
+	}
 
-    @Override
-    public Object coerce(Object value, Locale locale) throws CoercionException {
-        if (value == null) {
-            return null;
-        }
-        try {
-            if (value instanceof Date) {
-                if (locale == null) {
-                    locale = Locale.getDefault();
-                }
-                DateFormat df = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG, locale);
-                value = df.format(value);
-            } else if (!(value instanceof String)) {
-                if (value instanceof Float || value instanceof Double) {
-                    NumberFormat nf = NumberFormat.getInstance(locale);
-                    value = nf.format(((Number) value).doubleValue());
-                } else {
-                    value = value.toString();
-                }
-            }
-            return value;
-        } catch (Exception e) {
-            throw new CoercionException(e);
-        }
-    }
+	@Override
+	public Object coerce(Object value, Locale locale) throws CoercionException {
+		if (value == null) {
+			return null;
+		}
+		try {
+			if (value instanceof Date) {
+				if (locale == null) {
+					locale = Locale.getDefault();
+				}
+				DateFormat df = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG, locale);
+				value = df.format(value);
+			} else if (!(value instanceof String)) {
+				if (value instanceof Float || value instanceof Double) {
+					NumberFormat nf = NumberFormat.getInstance(locale);
+					value = nf.format(((Number) value).doubleValue());
+				} else {
+					value = value.toString();
+				}
+			}
+			return value;
+		} catch (Exception e) {
+			throw new CoercionException(e);
+		}
+	}
 
 }
