The TimeZone support in 1.3.1 and earlier is not capable of supporting multiple GMT offsets and DST rules of a single time zone. Therefore, it's not possible to support future DST rule changes in 1.3.1. This problem was fixed in 1.4.0. Closing this bug report as a duplicate of 4257314.
As for the 2007 U.S. DST rule change support, 1.3.1_18 and later have a workaround fix that the TimeZone methods will look up another time zone data table for the 2007 rules if JVM is running in 2007 or later, not based on the given time stamp to be processed. Please refer to 6391777 and 6425120.