Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
HP.com home

READ ME

JDK tzupdater 1.3.11 for the OpenVMS Alpha Operating System

for the Java™ Platform

» 

Java on Alpha

Site information

» Products
» Downloads
» Solutions
» Documentation
» FAQs
» Support

Performance and related products

» Fast VM paper

Promotions

» Test Drive
» DSPP Partner Edge

Related links

» Software
» Java on HP-UX 11i
» Java on NonStop
» Visual Threads
» Systems
» HP Alpha
» HP OpenVMS
» HP-UX 11i
» NonStop
 
 
 
Content starts here

Introduction

The tzupdater 1.3.11 tool is provided to allow installed JDK/JRE images to be updated with more recent timezone data to accommodate the latest world-wide changes to the Olson database. See http://java.sun.com/javase/timezones/tzdata_versions.html for more information.

HP recommends using the latest HP Java SE JDK/JRE update release as the preferred vehicle for delivering both timezone data updates and other product improvements such as security fixes; however, if the end user or system administrator is unable to use the latest HP JDK/JRE update release, this tool provides a way to update timezone data while leaving other system configuration and dependencies unchanged.

This version of the tzupdater tool delivers Olson timezone data version tzdata2008i. For information about the timezone changes and the tzupdater tool, please visit http://h18012.www1.hp.com/java/alpha/DST-US.html.

System Requirements

The tzupdater 1.3.11 tool supports HP's JDK/JRE releases on all supported platforms, including OpenVMS Alpha JDK/JRE 1.4.0 and later (1.4.0, 1.4.1, 1.4.2, 5.0), and all updates of those releases. The java.vendor property value must be "Hewlett-Packard Company" or "Compaq Computer Corp."

Installation

Download the tzupdater 1.3.11 tool kit

HP-AXPVMS-TZUPDATER-V0103-11-1.PCSI_SFX_AXPEXE

Execute the

HP-AXPVMS-TZUPDATER-V0103-11-1.PCSI_SFX_AXPEXE
file to get the actual kit files:
HP-AXPVMS-TZUPDATER-V0103-11-1.PCSI$COMPRESSED
HP-AXPVMS-TZUPDATER-V0103-11-1.PCSI$COMPRESSED_ESW

Then do:

$ PRODUCT INSTALL TZUPDATER/NORECOVERY

This will produce:

README.txt
license.txt
tzupdater.jar

The default location is:

SYS$COMMON:[TZUPDATER]

Usage

The tzupdater 1.3.11 tool modifies the JDK/JRE image used to execute the tool.

A single JDK/JRE image is modified per execution. To use the tzupdater tool on multiple JDK/JRE instances, see "System-wide Usage" below.

Any executing instances of the JDK/JRE to be operated upon must be stopped before running the tzupdater tool against that installed JDK/JRE on-disk image. Write permission on the JDK/JRE directories is needed.

The command line interface is as follows:

$ java -jar "tzupdater.jar" options

See important note below before using this tool.

Options

If no options are specified, the usage message is displayed. To perform timezone data update, either the -u or -f option must be specified. We recommend using '-f' option.

-h, --help

Print the usage to stdout and exit. Other options are ignored if this option is specified.

--version

Show the tool version number and the tzdata version numbers of the JRE and the archive embedded in the jar file and exit.

-u, --update

Update the timezone data and perform verification tests. The verification tests can be run separately with the -t option. If this option is specified with -h, or -t option, the command displays the usage to stdout and exits.

-f, --force

Force update the tzdata even if the version of the tzdata archive is older then the JRE's tzdata version. This option doesn't require the -u option for the update to be performed. Not needed under normal operating conditions.

-v, --verbose
Display detailed messages to stdout.
-bc, --backwardcompatible

Keep backward compatibility with the 3-letter timezone IDs of JDK 1.1. Any timezone IDs that conflict with the JDK 1.1 timezone IDs will be removed from the installed timezone data. This option must be specified with the -u, -f or -t option.

A few timezone IDs in JDK 1.1 and the Olson timezone database IDs (industry standard IDs) conflict. The conflicting timezone IDs are "EST", "MST" and "HST" as of this release.

If these IDs are used in your applications, the -bc option needs to be specified.

-t, --test

Runs verification tests only and exit. If the JRE has timezone data that doesn't match the one in the tool, the verification tests report errors and fail.The -f option is ignored if specified. If the -bc option is specified, any test cases for timezone IDs that conflict with the JDK 1.1 timezone IDs will be ignored.

Typical Usage

IMPORTANT NOTE: Please read the following before using tzupdater:

  1. It is important to identify the kind of disk that contains the release of Java that you are about to operate upon (ODS-5 vs. ODS-2). This can be determined by doing:

    $! See disk and directory where Java was installed
    $ type sys$manager:java$150_setup.com
    $ show device/full diskname

    If it is an ODS-5 disk, then the following logicals must be defined in order to have tzupdater function correctly:

    $  DEFINE/JOB DECC$ARGV_PARSE_STYLE ENABLE
    $  DEFINE/JOB DECC$EFS_CASE_PRESERVE ENABLE
    $  DEFINE/JOB DECC$EFS_CHARSET ENABLE
    $  DEFINE/JOB/NOLOG JAVA$FILENAME_CONTROLS 520

    If the release resides on an ODS-2 formatted disk, then ensure that these logical names are NOT defined.

  2. When tzupdater operates, it replaces certain files in the Java installed directory tree. The new files will have an ownership and protection that are those of the job running tzupdater. In some cases, these ownership and protections will not be the same that the original files had.
  3. Before you run tzupdater, set the default to WORLD:RE, as shown in the following example:

    Example:

       $! set up to run a specific version of Java, e.g. Java 1.5.0 
       $ @sys$manager:java$150_setup.com Fast 
          
       $! where the tzupdater.jar resides
       $ set default SYS$COMMON:[TZUPDATER]  
          
       $! check dates of current time zone info 
       $ java -jar tzupdater.jar --version
              You will see results like:
                  tzupdater version 1.3.11-b01
                  JRE time zone data version: unknown
                  Embedded time zone data version: tzdata2008i
              
       $! Ensure the default world protection to read+execute
       $ set prot=world:re/def   
          
       $! force update to happen - takes a minute or so...
       $ java -jar tzupdater.jar;1 -f  
          
       $! repeat the check dates of current time zone info 
       $ java -jar tzupdater.jar --version    
              You will see results like:
                  tzupdater version 1.3.11-b01
                  JRE time zone data version: tzdata2008i
                  Embedded time zone data version: tzdata2008i
          
       Before updating other versions of Java, undo the Java environment 
       with the appropriate cancel routine: 
          
       $! Undo Java 1.5.0 logicals
       $ @sys$manager:java$150_cancel_setup.com  
    
  4. (Optional) If you are updating a JRE that was installed as part of another product's installation, you will need to make sure that the new timezone files in this directory tree have the same protection that the original files had.

    Before you run tzupdater, check the protections of the timezone files that will be updated and note their protections.

    $! Check protection of typical timezone file
    $ DIRECTORY/SECURITY disk$:[directory.java$150.jre.lib.zi]GMT.;

    After you have finished running tzupdater, make sure that new timezone files in this directory tree have the same protection that the original files had. If not, use the following to set them to their original value:

    $ set security /owner=(...) /protection=(...

Error Handling

The tool tries to restore the original state when it has encountered an unexpected error, such as lack of disk space.

Known Restrictions

The tool has a few restrictions due to the TimeZone API and implementation constraints.

Timezone display names

This tool will not update timezone display names of timezones that are completely new or have display-name related changes. The complete support of all timezone display names requires installation of the latest HP Java SE JDK/JRE update release.

System-wide Usage

Any executing instances of the JDK/JRE to be operated upon must be stopped before running the tzupdater tool against that installed JDK/JRE on-disk image.

Systems can accumulate multiple copies of JDK/JRE images, so you might need to apply the tool individually to each JDK/JRE image.

Removing tzupdater Tool Changes

Any executing instances of the JDK/JRE to be operated upon must be stopped before running the tzupdater tool against that installed JDK/JRE on-disk image.

A tzupdater modification removal option does not currently exist. You can manually remove the modifications created by the current tzupdater tool by following these steps:

  1. Locate the zi directory under the modified JAVAHOME/jre/lib directory. This is the newer data.
  2. Locate a zi.tzdata* directory in the same JAVAHOME/jre/lib directory. This is the replaced, older data.
  3. Obtain the currently installed timezone data version from the command `java -jar "tzupdater.jar" --version`.
  4. Rename the current zi directory to something like "zi_tzdata2008i" or whatever the version command in step 3 gave.
  5. Insure this does not conflict with the older data directory.
  6. Rename the older data directory to zi.
  7. Validate the change in currently active timezone data by executing `java -jar "tzupdater.jar" --version`.
  8. Restart applications on this JDK/JRE.
Printable version Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc., in the U.S. and other countries.
Privacy statement Using this site means you accept its terms Feedback to Java on Alpha
© 2009 Hewlett-Packard Development Company, L.P.