My system located in Singapore (timezone - "Asia/Singapore") receives a String datetime (yyyy-MM-dd HH:mm:ss) from a external system in Indonesia (timezone - "Asia/Jarkata").
How do I convert the received String datetime to UTC in java 1.7?
This is my code:
public void convertToUtc() {
    String inputTime = "2018-02-02 10:09:00";
    TimeZone inputTz = TimeZone.getTimeZone("Asia/Jarkarta");
    TimeZone utcTz = TimeZone.getTimeZone("UTC");
    SimpleDateFormat inputSdf = new SimpleDateFormat(DateTimeUtils.DATE_TIME_FORMAT);
    inputSdf.setTimeZone(inputTz);
    SimpleDateFormat utcSdf = new SimpleDateFormat(DateTimeUtils.ISO_DATE_TIME_FORMAT);
    utcSdf.setTimeZone(utcTz);
    // From time
    Date fromDate = null;
    try {
        fromDate = inputSdf.parse(inputTime);
    } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    // Convert to UTC
    String sUtcDateTime = utcSdf.format(fromDate);
    System.out.println("UTC: " + sUtcDateTime); // UTC: 2018-02-02T10:09:00.000Z. Expected 2018-02-02T03:09:00.000Z
}
 
     
     
    