@Test
public void testDateToDateConversion2() {

    Calendar localTime = Calendar.getInstance(TimeZone.getTimeZone("America/Chicago"));
    localTime.set(Calendar.MONTH, Calendar.JUNE);
    localTime.set(Calendar.DAY_OF_MONTH, 22);
    localTime.set(Calendar.YEAR, 2004);
    localTime.set(Calendar.HOUR, 23);
    localTime.set(Calendar.MINUTE, 15);
    localTime.set(Calendar.SECOND, 20);
    localTime.set(Calendar.AM_PM, Calendar.PM);
    Date converted = TimestampWithTimezone.createDate(localTime, Calendar.getInstance(TimeZone.getTimeZone("Europe/London"))); //$NON-NLS-1$ 
    Calendar cal = Calendar.getInstance();
    cal.setTime(converted);
    assertThat(cal.get(Calendar.MILLISECOND), is(0));
}