title: In java getting different value for TimeZone.getDefault().getID() on different system
body: <p>I am getting different value for TimeZone.getDefault().getID() on different systems.
  For example, in case of Indian standard time,
  On one of the system we are getting  "GMT+5:30":
  while on another we are getting "Asia/Calcutta".
  We are expected to get "Asia/calcutta" strings on all machines. </p>
  
  <p>Why is there an inconsistency for such behavior?</p>
  
  <p>Is there any way to get consistent behavior across different systems windows/MAC?</p>
  
  <p>What is the best way to get client time zone programmatically  using Java?</p>