You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by ha...@apache.org on 2009/08/14 10:48:06 UTC

svn commit: r804130 - in /ofbiz/trunk/framework: base/src/org/ofbiz/base/util/template/ entity/src/org/ofbiz/entity/jdbc/ widget/src/org/ofbiz/widget/form/

Author: hansbak
Date: Fri Aug 14 08:48:06 2009
New Revision: 804130

URL: http://svn.apache.org/viewvc?rev=804130&view=rev
Log:
reverted 804104 because of compile error

Modified:
    ofbiz/trunk/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java
    ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SQLProcessor.java
    ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SqlJdbcUtil.java
    ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java

Modified: ofbiz/trunk/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java?rev=804130&r1=804129&r2=804130&view=diff
==============================================================================
--- ofbiz/trunk/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java (original)
+++ ofbiz/trunk/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java Fri Aug 14 08:48:06 2009
@@ -78,7 +78,7 @@
 
     public static Configuration makeConfiguration(BeansWrapper wrapper) {
         Configuration newConfig = new Configuration();
-       
+
         newConfig.setObjectWrapper(wrapper);
         newConfig.setSharedVariable("Static", wrapper.getStaticModels());
         newConfig.setLocalizedLookup(false);
@@ -218,11 +218,11 @@
         }
         env.setLocale(locale);
 
-//        TimeZone timeZone = (TimeZone) context.get("timeZone");
-//        if (timeZone == null) {
-//            timeZone = TimeZone.getDefault();
-//        }
-//        env.setTimeZone(timeZone);
+        TimeZone timeZone = (TimeZone) context.get("timeZone");
+        if (timeZone == null) {
+            timeZone = TimeZone.getDefault();
+        }
+        env.setTimeZone(timeZone);
     }
 
     public static Configuration getDefaultOfbizConfig() {

Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SQLProcessor.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SQLProcessor.java?rev=804130&r1=804129&r2=804130&view=diff
==============================================================================
--- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SQLProcessor.java (original)
+++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SQLProcessor.java Fri Aug 14 08:48:06 2009
@@ -27,15 +27,10 @@
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
-import java.util.TimeZone;
 
 import org.ofbiz.base.util.Debug;
-import org.ofbiz.base.util.UtilMisc;
-import org.ofbiz.base.util.UtilValidate;
 import org.ofbiz.entity.GenericDataSourceException;
-import org.ofbiz.entity.GenericDelegator;
 import org.ofbiz.entity.GenericEntityException;
-import org.ofbiz.entity.GenericValue;
 import org.ofbiz.entity.config.DatasourceInfo;
 import org.ofbiz.entity.config.EntityConfigUtil;
 import org.ofbiz.entity.transaction.GenericTransactionException;
@@ -583,27 +578,6 @@
      */
     public void setValue(java.sql.Timestamp field) throws SQLException {
         if (field != null) {
-        	GenericDelegator delegator=GenericDelegator.getGenericDelegator("default");
-        	String userId=delegator.getCurrentUserIdentifier();
-        	try {
-        		if(userId!=null){
-        			String timeZoneId=TimeZone.getDefault().getID();
-        			GenericValue userLogin=delegator.findByPrimaryKey("UserLogin", UtilMisc.toMap("userLoginId", userId));
-        			if(userLogin!=null){
-        				if(UtilValidate.isNotEmpty(userLogin.get("lastTimeZone"))){
-        					timeZoneId=userLogin.getString("lastTimeZone");	
-        					SqlJdbcUtil.setLastTimeZoneId(timeZoneId);
-        				}
-        			}		
-        				if (field instanceof java.sql.Timestamp) { 
-        					String dateField=SqlJdbcUtil.convertTimeZone(field.toString(),timeZoneId, "GMT");
-        					field= java.sql.Timestamp.valueOf(dateField);
-        				}
-        		}
-			} catch (GenericEntityException e) {
-				// TODO Auto-generated catch block
-				e.printStackTrace();
-			} 
             _ps.setTimestamp(_ind, field);
         } else {
             _ps.setNull(_ind, Types.TIMESTAMP);

Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SqlJdbcUtil.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SqlJdbcUtil.java?rev=804130&r1=804129&r2=804130&view=diff
==============================================================================
--- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SqlJdbcUtil.java (original)
+++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SqlJdbcUtil.java Fri Aug 14 08:48:06 2009
@@ -30,15 +30,11 @@
 import java.sql.ResultSetMetaData;
 import java.sql.SQLException;
 import java.sql.Clob;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
 import java.util.Collection;
-import java.util.Date;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
-import java.util.TimeZone;
 import java.util.TreeSet;
 
 import javax.sql.rowset.serial.SerialBlob;
@@ -48,7 +44,6 @@
 
 import org.ofbiz.base.util.Debug;
 import org.ofbiz.base.util.ObjectType;
-import org.ofbiz.base.util.UtilDateTime;
 import org.ofbiz.base.util.UtilGenerics;
 import org.ofbiz.base.util.UtilValidate;
 import org.ofbiz.entity.GenericDataSourceException;
@@ -491,35 +486,7 @@
             }
         }
     }
-    
-    public static String lastTimeZoneId=TimeZone.getDefault().getID();
-    public static void setLastTimeZoneId(String timeZoneId){
-    	lastTimeZoneId=timeZoneId;
-    }
-    public static String getLastTimeZoneId(){
-    	return lastTimeZoneId;
-    }
-    public static String convertTimeZone(String time, String sourceTZ, String destTZ){
-		SimpleDateFormat sdf = new SimpleDateFormat(UtilDateTime.DATE_TIME_FORMAT);
-		Date specifiedTime=null;
-		try {
-			if (sourceTZ != null)
-				sdf.setTimeZone(TimeZone.getTimeZone(sourceTZ));
-			else
-				sdf.setTimeZone(TimeZone.getDefault()); 
-			specifiedTime = sdf.parse(time);
-		
-			if (destTZ != null)
-				sdf.setTimeZone(TimeZone.getTimeZone(destTZ));
-			else
-				sdf.setTimeZone(TimeZone.getDefault());
-		} catch (ParseException e) {
-			// TODO Auto-generated catch block
-			Debug.logError("Error Convert time zone: "+e.getMessage(), module);
-		}
-		return sdf.format(specifiedTime);
-	}
-    
+
     public static void getValue(ResultSet rs, int ind, ModelField curField, GenericEntity entity, ModelFieldTypeReader modelFieldTypeReader) throws GenericEntityException {
         ModelFieldType mft = modelFieldTypeReader.getModelFieldType(curField.getType());
 
@@ -572,12 +539,7 @@
                     break;
 
                 case 2:
-                	Object value=rs.getTimestamp(ind);
-                	if (value!=null&&value instanceof java.sql.Timestamp) { 
-                		String dateField=convertTimeZone(value.toString(),"GMT",lastTimeZoneId);
-                		value= java.sql.Timestamp.valueOf(dateField);
-                	}
-                    entity.dangerousSetNoCheckButFast(curField,value);
+                    entity.dangerousSetNoCheckButFast(curField, rs.getTimestamp(ind));
                     break;
 
                 case 3:

Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java?rev=804130&r1=804129&r2=804130&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java Fri Aug 14 08:48:06 2009
@@ -22,7 +22,6 @@
 import java.math.BigDecimal;
 import java.text.DateFormat;
 import java.text.NumberFormat;
-import java.text.SimpleDateFormat;
 import java.util.HashMap;
 import java.util.LinkedList;
 import java.util.List;
@@ -676,8 +675,7 @@
         if (locale == null) locale = Locale.getDefault();
         TimeZone timeZone = (TimeZone) context.get("timeZone");
         if (timeZone == null) timeZone = TimeZone.getDefault();
-        
-        SimpleDateFormat sdf=new SimpleDateFormat(UtilDateTime.DATE_TIME_FORMAT);
+
         String returnValue;
 
         // if useRequestParameters is TRUE then parameters will always be used, if FALSE then parameters will never be used
@@ -738,32 +736,27 @@
                 }
             }
 
-            if (retVal != null) { 
-            	// format string based on the user's locale and time zone
-            	if (retVal instanceof Double || retVal instanceof Float || retVal instanceof BigDecimal) {
-            		NumberFormat nf = NumberFormat.getInstance(locale); 
-            		nf.setMaximumFractionDigits(10);
-            		returnValue = nf.format(retVal);
-            	} else if (retVal instanceof java.sql.Date) {
-//          		DateFormat df = UtilDateTime.toDateFormat(UtilDateTime.DATE_FORMAT, timeZone, null);
-//          		returnValue = df.format((java.util.Date) retVal);
-            		returnValue=sdf.format((java.util.Date)retVal);
-            	} else if (retVal instanceof java.sql.Time) {
-//          		DateFormat df = UtilDateTime.toTimeFormat(UtilDateTime.TIME_FORMAT, timeZone, null);
-//          		returnValue = df.format((java.util.Date) retVal);
-            		returnValue=sdf.format((java.util.Date)retVal);
-            	} else if (retVal instanceof java.sql.Timestamp) { 
-//          		DateFormat df = UtilDateTime.toTimeFormat(UtilDateTime.TIME_FORMAT, timeZone, null);
-//          		returnValue = df.format((java.util.Date) retVal);
-            		returnValue=sdf.format((java.util.Date)retVal);
-            	} else if (retVal instanceof java.util.Date) {
-//          		DateFormat df = UtilDateTime.toDateTimeFormat("EEE MMM dd hh:mm:ss z yyyy", timeZone, null);
-//          		returnValue = df.format((java.util.Date) retVal);
-            		SimpleDateFormat sdfz=new SimpleDateFormat("EEE MMM dd hh:mm:ss z yyyy");
-            		returnValue=sdfz.format((java.util.Date)retVal);
-            	} else {
-            		returnValue = retVal.toString();
-            	}
+            if (retVal != null) {
+                // format string based on the user's locale and time zone
+                if (retVal instanceof Double || retVal instanceof Float || retVal instanceof BigDecimal) {
+                    NumberFormat nf = NumberFormat.getInstance(locale);
+                    nf.setMaximumFractionDigits(10);
+                    returnValue = nf.format(retVal);
+                } else if (retVal instanceof java.sql.Date) {
+                    DateFormat df = UtilDateTime.toDateFormat(UtilDateTime.DATE_FORMAT, timeZone, null);
+                    returnValue = df.format((java.util.Date) retVal);
+                } else if (retVal instanceof java.sql.Time) {
+                    DateFormat df = UtilDateTime.toTimeFormat(UtilDateTime.TIME_FORMAT, timeZone, null);
+                    returnValue = df.format((java.util.Date) retVal);
+                } else if (retVal instanceof java.sql.Timestamp) {
+                    DateFormat df = UtilDateTime.toDateTimeFormat(UtilDateTime.DATE_TIME_FORMAT, timeZone, null);
+                    returnValue = df.format((java.util.Date) retVal);
+                } else if (retVal instanceof java.util.Date) {
+                    DateFormat df = UtilDateTime.toDateTimeFormat("EEE MMM dd hh:mm:ss z yyyy", timeZone, null);
+                    returnValue = df.format((java.util.Date) retVal);
+                } else {
+                    returnValue = retVal.toString();
+                }
                 return returnValue; // do not encode date and number type fields
             } else {
                 returnValue = defaultValue;



Re: svn commit: r804130 - in /ofbiz/trunk/framework: base/src/org/ofbiz/base/util/template/ entity/src/org/ofbiz/entity/jdbc/ widget/src/org/ofbiz/widget/form/

Posted by Adrian Crum <ad...@hlmksw.com>.
Hans,

Thank you for reverting this. One thing to keep in mind: Timestamps are 
ALWAYS referenced to GMT - your commit didn't change that. If you have 
questions about dates/times/time zones/Timestamps - just ask. I am 
willing to help.

Also keep in mind that UtilDateTime.java has an excellent API for 
handling all of these things. Much of your commit duplicated that code.

-Adrian

hansbak@apache.org wrote:
> Author: hansbak
> Date: Fri Aug 14 08:48:06 2009
> New Revision: 804130
> 
> URL: http://svn.apache.org/viewvc?rev=804130&view=rev
> Log:
> reverted 804104 because of compile error
> 
> Modified:
>     ofbiz/trunk/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java
>     ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SQLProcessor.java
>     ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SqlJdbcUtil.java
>     ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java
> 
> Modified: ofbiz/trunk/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java?rev=804130&r1=804129&r2=804130&view=diff
> ==============================================================================
> --- ofbiz/trunk/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java (original)
> +++ ofbiz/trunk/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java Fri Aug 14 08:48:06 2009
> @@ -78,7 +78,7 @@
>  
>      public static Configuration makeConfiguration(BeansWrapper wrapper) {
>          Configuration newConfig = new Configuration();
> -       
> +
>          newConfig.setObjectWrapper(wrapper);
>          newConfig.setSharedVariable("Static", wrapper.getStaticModels());
>          newConfig.setLocalizedLookup(false);
> @@ -218,11 +218,11 @@
>          }
>          env.setLocale(locale);
>  
> -//        TimeZone timeZone = (TimeZone) context.get("timeZone");
> -//        if (timeZone == null) {
> -//            timeZone = TimeZone.getDefault();
> -//        }
> -//        env.setTimeZone(timeZone);
> +        TimeZone timeZone = (TimeZone) context.get("timeZone");
> +        if (timeZone == null) {
> +            timeZone = TimeZone.getDefault();
> +        }
> +        env.setTimeZone(timeZone);
>      }
>  
>      public static Configuration getDefaultOfbizConfig() {
> 
> Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SQLProcessor.java
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SQLProcessor.java?rev=804130&r1=804129&r2=804130&view=diff
> ==============================================================================
> --- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SQLProcessor.java (original)
> +++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SQLProcessor.java Fri Aug 14 08:48:06 2009
> @@ -27,15 +27,10 @@
>  import java.util.ArrayList;
>  import java.util.List;
>  import java.util.Map;
> -import java.util.TimeZone;
>  
>  import org.ofbiz.base.util.Debug;
> -import org.ofbiz.base.util.UtilMisc;
> -import org.ofbiz.base.util.UtilValidate;
>  import org.ofbiz.entity.GenericDataSourceException;
> -import org.ofbiz.entity.GenericDelegator;
>  import org.ofbiz.entity.GenericEntityException;
> -import org.ofbiz.entity.GenericValue;
>  import org.ofbiz.entity.config.DatasourceInfo;
>  import org.ofbiz.entity.config.EntityConfigUtil;
>  import org.ofbiz.entity.transaction.GenericTransactionException;
> @@ -583,27 +578,6 @@
>       */
>      public void setValue(java.sql.Timestamp field) throws SQLException {
>          if (field != null) {
> -        	GenericDelegator delegator=GenericDelegator.getGenericDelegator("default");
> -        	String userId=delegator.getCurrentUserIdentifier();
> -        	try {
> -        		if(userId!=null){
> -        			String timeZoneId=TimeZone.getDefault().getID();
> -        			GenericValue userLogin=delegator.findByPrimaryKey("UserLogin", UtilMisc.toMap("userLoginId", userId));
> -        			if(userLogin!=null){
> -        				if(UtilValidate.isNotEmpty(userLogin.get("lastTimeZone"))){
> -        					timeZoneId=userLogin.getString("lastTimeZone");	
> -        					SqlJdbcUtil.setLastTimeZoneId(timeZoneId);
> -        				}
> -        			}		
> -        				if (field instanceof java.sql.Timestamp) { 
> -        					String dateField=SqlJdbcUtil.convertTimeZone(field.toString(),timeZoneId, "GMT");
> -        					field= java.sql.Timestamp.valueOf(dateField);
> -        				}
> -        		}
> -			} catch (GenericEntityException e) {
> -				// TODO Auto-generated catch block
> -				e.printStackTrace();
> -			} 
>              _ps.setTimestamp(_ind, field);
>          } else {
>              _ps.setNull(_ind, Types.TIMESTAMP);
> 
> Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SqlJdbcUtil.java
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SqlJdbcUtil.java?rev=804130&r1=804129&r2=804130&view=diff
> ==============================================================================
> --- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SqlJdbcUtil.java (original)
> +++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/jdbc/SqlJdbcUtil.java Fri Aug 14 08:48:06 2009
> @@ -30,15 +30,11 @@
>  import java.sql.ResultSetMetaData;
>  import java.sql.SQLException;
>  import java.sql.Clob;
> -import java.text.ParseException;
> -import java.text.SimpleDateFormat;
>  import java.util.Collection;
> -import java.util.Date;
>  import java.util.Iterator;
>  import java.util.List;
>  import java.util.Map;
>  import java.util.Set;
> -import java.util.TimeZone;
>  import java.util.TreeSet;
>  
>  import javax.sql.rowset.serial.SerialBlob;
> @@ -48,7 +44,6 @@
>  
>  import org.ofbiz.base.util.Debug;
>  import org.ofbiz.base.util.ObjectType;
> -import org.ofbiz.base.util.UtilDateTime;
>  import org.ofbiz.base.util.UtilGenerics;
>  import org.ofbiz.base.util.UtilValidate;
>  import org.ofbiz.entity.GenericDataSourceException;
> @@ -491,35 +486,7 @@
>              }
>          }
>      }
> -    
> -    public static String lastTimeZoneId=TimeZone.getDefault().getID();
> -    public static void setLastTimeZoneId(String timeZoneId){
> -    	lastTimeZoneId=timeZoneId;
> -    }
> -    public static String getLastTimeZoneId(){
> -    	return lastTimeZoneId;
> -    }
> -    public static String convertTimeZone(String time, String sourceTZ, String destTZ){
> -		SimpleDateFormat sdf = new SimpleDateFormat(UtilDateTime.DATE_TIME_FORMAT);
> -		Date specifiedTime=null;
> -		try {
> -			if (sourceTZ != null)
> -				sdf.setTimeZone(TimeZone.getTimeZone(sourceTZ));
> -			else
> -				sdf.setTimeZone(TimeZone.getDefault()); 
> -			specifiedTime = sdf.parse(time);
> -		
> -			if (destTZ != null)
> -				sdf.setTimeZone(TimeZone.getTimeZone(destTZ));
> -			else
> -				sdf.setTimeZone(TimeZone.getDefault());
> -		} catch (ParseException e) {
> -			// TODO Auto-generated catch block
> -			Debug.logError("Error Convert time zone: "+e.getMessage(), module);
> -		}
> -		return sdf.format(specifiedTime);
> -	}
> -    
> +
>      public static void getValue(ResultSet rs, int ind, ModelField curField, GenericEntity entity, ModelFieldTypeReader modelFieldTypeReader) throws GenericEntityException {
>          ModelFieldType mft = modelFieldTypeReader.getModelFieldType(curField.getType());
>  
> @@ -572,12 +539,7 @@
>                      break;
>  
>                  case 2:
> -                	Object value=rs.getTimestamp(ind);
> -                	if (value!=null&&value instanceof java.sql.Timestamp) { 
> -                		String dateField=convertTimeZone(value.toString(),"GMT",lastTimeZoneId);
> -                		value= java.sql.Timestamp.valueOf(dateField);
> -                	}
> -                    entity.dangerousSetNoCheckButFast(curField,value);
> +                    entity.dangerousSetNoCheckButFast(curField, rs.getTimestamp(ind));
>                      break;
>  
>                  case 3:
> 
> Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java?rev=804130&r1=804129&r2=804130&view=diff
> ==============================================================================
> --- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java (original)
> +++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java Fri Aug 14 08:48:06 2009
> @@ -22,7 +22,6 @@
>  import java.math.BigDecimal;
>  import java.text.DateFormat;
>  import java.text.NumberFormat;
> -import java.text.SimpleDateFormat;
>  import java.util.HashMap;
>  import java.util.LinkedList;
>  import java.util.List;
> @@ -676,8 +675,7 @@
>          if (locale == null) locale = Locale.getDefault();
>          TimeZone timeZone = (TimeZone) context.get("timeZone");
>          if (timeZone == null) timeZone = TimeZone.getDefault();
> -        
> -        SimpleDateFormat sdf=new SimpleDateFormat(UtilDateTime.DATE_TIME_FORMAT);
> +
>          String returnValue;
>  
>          // if useRequestParameters is TRUE then parameters will always be used, if FALSE then parameters will never be used
> @@ -738,32 +736,27 @@
>                  }
>              }
>  
> -            if (retVal != null) { 
> -            	// format string based on the user's locale and time zone
> -            	if (retVal instanceof Double || retVal instanceof Float || retVal instanceof BigDecimal) {
> -            		NumberFormat nf = NumberFormat.getInstance(locale); 
> -            		nf.setMaximumFractionDigits(10);
> -            		returnValue = nf.format(retVal);
> -            	} else if (retVal instanceof java.sql.Date) {
> -//          		DateFormat df = UtilDateTime.toDateFormat(UtilDateTime.DATE_FORMAT, timeZone, null);
> -//          		returnValue = df.format((java.util.Date) retVal);
> -            		returnValue=sdf.format((java.util.Date)retVal);
> -            	} else if (retVal instanceof java.sql.Time) {
> -//          		DateFormat df = UtilDateTime.toTimeFormat(UtilDateTime.TIME_FORMAT, timeZone, null);
> -//          		returnValue = df.format((java.util.Date) retVal);
> -            		returnValue=sdf.format((java.util.Date)retVal);
> -            	} else if (retVal instanceof java.sql.Timestamp) { 
> -//          		DateFormat df = UtilDateTime.toTimeFormat(UtilDateTime.TIME_FORMAT, timeZone, null);
> -//          		returnValue = df.format((java.util.Date) retVal);
> -            		returnValue=sdf.format((java.util.Date)retVal);
> -            	} else if (retVal instanceof java.util.Date) {
> -//          		DateFormat df = UtilDateTime.toDateTimeFormat("EEE MMM dd hh:mm:ss z yyyy", timeZone, null);
> -//          		returnValue = df.format((java.util.Date) retVal);
> -            		SimpleDateFormat sdfz=new SimpleDateFormat("EEE MMM dd hh:mm:ss z yyyy");
> -            		returnValue=sdfz.format((java.util.Date)retVal);
> -            	} else {
> -            		returnValue = retVal.toString();
> -            	}
> +            if (retVal != null) {
> +                // format string based on the user's locale and time zone
> +                if (retVal instanceof Double || retVal instanceof Float || retVal instanceof BigDecimal) {
> +                    NumberFormat nf = NumberFormat.getInstance(locale);
> +                    nf.setMaximumFractionDigits(10);
> +                    returnValue = nf.format(retVal);
> +                } else if (retVal instanceof java.sql.Date) {
> +                    DateFormat df = UtilDateTime.toDateFormat(UtilDateTime.DATE_FORMAT, timeZone, null);
> +                    returnValue = df.format((java.util.Date) retVal);
> +                } else if (retVal instanceof java.sql.Time) {
> +                    DateFormat df = UtilDateTime.toTimeFormat(UtilDateTime.TIME_FORMAT, timeZone, null);
> +                    returnValue = df.format((java.util.Date) retVal);
> +                } else if (retVal instanceof java.sql.Timestamp) {
> +                    DateFormat df = UtilDateTime.toDateTimeFormat(UtilDateTime.DATE_TIME_FORMAT, timeZone, null);
> +                    returnValue = df.format((java.util.Date) retVal);
> +                } else if (retVal instanceof java.util.Date) {
> +                    DateFormat df = UtilDateTime.toDateTimeFormat("EEE MMM dd hh:mm:ss z yyyy", timeZone, null);
> +                    returnValue = df.format((java.util.Date) retVal);
> +                } else {
> +                    returnValue = retVal.toString();
> +                }
>                  return returnValue; // do not encode date and number type fields
>              } else {
>                  returnValue = defaultValue;
> 
> 
>