United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
JDK-4028006 : API: Cannot create Atlantic Standard Time zone

Details
Type:
Enhancement
Submit Date:
1997-01-25
Status:
Closed
Updated Date:
1999-01-19
Project Name:
JDK
Resolved Date:
1999-01-19
Component:
core-libs
OS:
solaris_2.6,windows_nt,solaris_2.5.1,generic,windows_95
Sub-Component:
java.util:i18n
CPU:
x86,sparc,other,generic
Priority:
P3
Resolution:
Fixed
Affected Versions:
1.1,1.1.1,1.1.3,1.1.4,1.1.5,1.1.6,1.2.0
Fixed Versions:
1.2.0 (1.2beta4)

Related Reports
Duplicate:
Duplicate:
Duplicate:
Duplicate:
Duplicate:
Duplicate:
Duplicate:
Relates:

Sub Tasks

Description
Cannot create Atlantic Standard Time Zone, instead the timezone ID of AST creates Alaska Time Zone.  

Steps to reproduce:
Compile and run the attached java code

import java.util.TimeZone;

public class tz {
    static final int millisInHour = 3600000;
    public static void main( String argv[] ) {

        TimeZone tz1 = TimeZone.getTimeZone( "AST" );
        if( tz1 == null ) {
            System.out.println( "Time zone is null" );
        }
        else{
            System.out.println( "Offset: " + 
                                tz1.getRawOffset()/ (double)millisInHour );
            System.out.println( "Should be -4" );
        }
        
    }
}

                                    

Comments
PUBLIC COMMENTS

.
                                     
2004-06-10
WORK AROUND


kevin.chu@Corp 1998-05-13
	BTW, the original bug "Can't create Altantic Standard Time" is
	not a bug.  You can.  Its TimeZone id "PRT" and is GMT-4hours
	with no Daylight Savings.

Here is a list of all the exiting 1.1.6 Java TimeZones.  Almost
all areas are covered, except small, remote areas like London and Paris.

MIT (Samoa Standard Time)		(GMT-11:00 GMT-11:00)			-660 minutes (-11.0 hours). 	USES STANDARD ALWAYS
HST (Hawaiian Standard Time)		(HST Hawaii Standard Time)		-600 minutes (-10.0 hours). 	USES STANDARD ALWAYS
AST (Cen. Australia Standard Time)	(AKDT Alaska Daylight Time)		-480 minutes (-8.0 hours). 	USES DAYLIGHT IN DAYLIGHT
PST (Pacific Standard Time)		(PDT Pacific Daylight Time)		-420 minutes (-7.0 hours). 	USES DAYLIGHT IN DAYLIGHT
PNT (Phoenix Standard Time)		(MST Mountain Standard Time)		-420 minutes (-7.0 hours). 	USES STANDARD ALWAYS
MST (Mountain Standard Time)		(MDT Mountain Daylight Time)		-360 minutes (-6.0 hours). 	USES DAYLIGHT IN DAYLIGHT
CST (Central Standard Time)		(CDT Central Daylight Time)		-300 minutes (-5.0 hours). 	USES DAYLIGHT IN DAYLIGHT
EST (Eastern Standard Time)		(EDT Eastern Daylight Time)		-240 minutes (-4.0 hours). 	USES DAYLIGHT IN DAYLIGHT
IET (Indiana Eastern Standard)		(EST Eastern Standard Time)		-300 minutes (-5.0 hours). 	USES STANDARD ALWAYS
PRT (Atlantic Standard Time)		(GMT-04:00 GMT-04:00)			-240 minutes (-4.0 hours). 	USES STANDARD ALWAYS
CNT (Newfoundland Standard Time)	(NDT Newfoundland Daylight Time)	-150 minutes (-2.5 hours). 	USES DAYLIGHT IN DAYLIGHT
AGT (Argentina Standard Time)		(GMT-03:00 GMT-03:00)			-180 minutes (-3.0 hours). 	USES STANDARD ALWAYS
BET (Brazil Eastern Time)		(GMT-03:00 GMT-03:00)			-180 minutes (-3.0 hours). 	USES DAYLIGHT IN STANDARD
CAT (Central African Time)		(GMT-01:00 GMT-01:00)			-60 minutes (-1.0 hours). 	USES STANDARD ALWAYS
GMT (Greenwich Mean Time)		(GMT Greenwich Mean Time)		0 minutes (0.0 hours). 		USES STANDARD ALWAYS
UTC (Universal Time)			(GMT+00:00 GMT+00:00)			0 minutes (0.0 hours). 		USES STANDARD ALWAYS
ECT (European Central Time)		(CEST Central European Daylight Time)	120 minutes (2.0 hours). 	USES DAYLIGHT IN DAYLIGHT
EET (Eastern European Time)		(GMT+03:00 GMT+03:00)			180 minutes (3.0 hours). 	USES DAYLIGHT IN DAYLIGHT
ART (Egypt Standard Time)		(GMT+03:00 GMT+03:00)			180 minutes (3.0 hours). 	USES DAYLIGHT IN DAYLIGHT
EAT (Eastern African Time)		(GMT+03:00 GMT+03:00)			180 minutes (3.0 hours). 	USES STANDARD ALWAYS
MET (Iran Standard Time)		(GMT+04:30 GMT+04:30)			270 minutes (4.5 hours). 	USES DAYLIGHT IN DAYLIGHT
NET (Arabian Standard Time)		(GMT+04:00 GMT+04:00)			240 minutes (4.0 hours). 	USES STANDARD ALWAYS
PLT (West Asia Standard Time)		(GMT+05:00 GMT+05:00)			300 minutes (5.0 hours). 	USES STANDARD ALWAYS
IST (India Standard Time)		(GMT+05:30 GMT+05:30)			330 minutes (5.5 hours). 	USES STANDARD ALWAYS
BST (Central Asia Standard Time)	(GMT+06:00 GMT+06:00)			360 minutes (6.0 hours). 	USES STANDARD ALWAYS
VST (Bangkok Standard Time)		(GMT+07:00 GMT+07:00)			420 minutes (7.0 hours). 	USES STANDARD ALWAYS
CTT (China Standard Time)		(CST China Standard Time)		480 minutes (8.0 hours). 	USES STANDARD ALWAYS
JST (Tokyo Standard Time)		(JST Japan Standard Time)		540 minutes (9.0 hours). 	USES STANDARD ALWAYS
ACT (Australia Central Time)		(GMT+09:30 GMT+09:30)			570 minutes (9.5 hours). 	USES STANDARD ALWAYS
AET (Sydney Standard Time)		(GMT+10:00 GMT+10:00)			600 minutes (10.0 hours). 	USES DAYLIGHT IN STANDARD
SST (Central Pacific Standard Time)	(GMT+11:00 GMT+11:00)			660 minutes (11.0 hours). 	USES STANDARD ALWAYS
NST (New Zealand Standard Time)		(GMT+12:00 GMT+12:00)			720 minutes (12.0 hours). 	USES STANDARD ALWAYS
                                     
2004-06-11
EVALUATION

kevin.chu@Corp 1998-05-13
	It is false to say that this is unfixable for 1.1.X.
The src code for 1.1.6 actual HAS all of the missing SimpleTimeZone
objects, BUT THEY ARE COMMENTED OUT!!!  The only issue is unique
three letter names.  There are 17,576 unique three letter combos, so
while you may not be able to create a one to one relationship with
real-life three letter timezone names (since they overlap), you still
can create ONE unique name and then docment its geographical timezone.

Example: There is no timezone for British Summer/Standard Time.
So use the COMMENTED OUT value for "Europe/London" and call it "GBT"
for Great Britain Time (since BST is taken).  As long as the documentation
states this clearly, people should be OK.  -klc



This is a design problem that can not be resolved for 1.1.1.  New API needs to be developed to handle the fact that three letter ids are not unique.  This is therefore being downgraded in priority (but not severity) until such time as API can be added.

--
SEE ALSO Duplicates
4034493
4075987
4085909
4088590
These are all bugs that are presenting because of the lack of long TZ names


kathleen.wilson@eng 1998-04-14
This bug is hit a lot, so it really needs to be resolved for JDK 1.2.
I'm upgrading the priority to require that it gets fixed for JDK 1.2 FCS.

------------------------
This bug was approved and fixed in JDK 1.2.  here is the change that was made:

While this proposal requires no syntactic changes to the API, there are several
semantic changes needed:

   1.Internally, the names of all time zones will be changed from the current
three-letter abbreviations to the longer Continent/City names described above.
   2.Methods which return TimeZone ID's will now return the new, longer names.
This includes getAvailableIDs, getAvailableIDs(int), and getID.
   3.The getTimeZone method which takes a TimeZone ID as its parameter will
accept either the new, long names or the old, 3-letter, JDK 1.1 abbreviations for compatibility.


                                     
2004-06-11
CONVERTED DATA

BugTraq+ Release Management Values

COMMIT TO FIX:
generic

FIXED IN:
1.2beta4

INTEGRATED IN:
1.2beta4

VERIFIED IN:
1.2fcs


                                     
2004-06-14



Hardware and Software, Engineered to Work Together