public String encode(Object object, String value) throws Exception { final Date date = (Date) object; Object hint = Hints.getSystemDefault(Hints.LOCAL_DATE_TIME_HANDLING); Calendar calendar; if (Boolean.TRUE.equals(hint)) { calendar = Calendar.getInstance(); } else { calendar = Calendar.getInstance(TimeZone.getTimeZone("GMT")); } calendar.clear(); calendar.setTimeInMillis(date.getTime()); return DatatypeConverterImpl.getInstance().printDate(calendar); } }
private String convertToString(Object unconvertedValue) { String textValue = null; if (unconvertedValue instanceof Calendar) { Calendar cal = (Calendar) unconvertedValue; textValue = DatatypeConverterImpl.getInstance().printDateTime(cal); } else if (unconvertedValue instanceof java.sql.Date) { DatatypeConverterImpl converter = DatatypeConverterImpl.getInstance(); Object hint = Hints.getSystemDefault(Hints.LOCAL_DATE_TIME_HANDLING); Calendar cal; if (Boolean.TRUE.equals(hint)) { cal = Calendar.getInstance(); } else { cal = Calendar.getInstance(TimeZone.getTimeZone("GMT")); } cal.setTimeInMillis(((java.util.Date) unconvertedValue).getTime()); textValue = converter.printDate(cal); } else if (unconvertedValue instanceof java.util.Date) { Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("GMT")); cal.setTimeInMillis(((java.util.Date) unconvertedValue).getTime()); DatatypeConverterImpl converter = DatatypeConverterImpl.getInstance(); if (unconvertedValue instanceof java.sql.Time) { textValue = converter.printTime(cal); } else { // java.util.Date and java.sql.TimeStamp textValue = converter.printDateTime(cal); } } return textValue; } }