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;
>
>
>