Tuesday, February 27, 2007

Need to upgrade Java for U.S. Daylight Saving Time Changes

Background

On the Sun Java website (link) is the following posting:

Daylight Saving Time (DST) is a system of handling the changing amounts of daylight throughout the year. The goal of DST is to maximize the daylight hours available during typical waking hours. By adjusting clocks ahead a standard amount, usually an hour, people can have more daylight available during their typical work day. For example, suppose you wake daily at 7:00 AM. In the spring, the sun rises earlier each day. Instead of waking up at 6:00 AM to take advantage of the daylight, DST observers move their clocks ahead an hour. The effect is that they can continue to wake at 7:00 AM according to the clock and enjoy more daylight. In the fall, people set their clocks back an hour as sunrise happens later each day.

The United States has planned a change to its DST observance beginning in 2007. The Energy Policy Act of 2005 mandates that DST will start on the second Sunday in March and end on the first Sunday in November. In 2007, the start and stop dates will be March 11 and November 4, respectively. These dates are different from previous DST start and stop dates. In 2006, the dates were the first Sunday in April (April 2, 2006) and the last Sunday in October (October 29, 2006).

The Java Runtime Environment (JRE) stores rules about DST observance all around the globe. Older JREs will have outdated rules that will be superseded by the Energy Policy Act of 2005. As a result, applications running on an older JRE may report incorrect time from March 11, 2007 through April 2, 2007 and from October 29, 2007 through November 4, 2007.

If you are concerned about application failures that may result from these DST changes, you should update your Java Runtime Environment. If you have 1.4.2_05 or 1.4.2_06, which many of you with Discoverer will have, then you should upgrade your clients to 1.4.2_13 by downloading it from the Sun website. If you are unable to download the update, Sun has provided a utility that will upgrade the timezone elements of your current install.

Note: The latest information I have is that there is no need to upgrade the Java on the server.

Download and install 1.4.2_13
To remove the Sun JRE 1.4.2_xx and re-install the correct version, use this workflow:

  1. Download the Sun JRE 1.4.2_13 from the Sun website. It can be found here:http://java.sun.com/j2se/1.4.2/download.html
  2. On this page, look for and click on the Download J2SE JRE link.
  3. On the next page, you are required to read and accept the license agreement.
  4. After checking the box labeled "Accept License Agreement", download the software labeled "Windows Offline Installation, Multi-Language". This file is about 15Mb in size *.
  5. Either you or one of your IT staff should now connect to your machine as a local administrator and install the software. Just follow the onscreen prompts.
  6. When done, you will need to restart the computer. When the system reboots, you will need to disable the automatic upgrade mechanism ** by following the remainder of these steps.
  7. From the Windows Start menu, select Settings > Control Panel.
  8. Double-click the icon for the Java ™ Control Page. It is usually named either Java or Java Plug-in.
  9. When the Java Control Panel opens, click the Update tab.
  10. Uncheck the box labeled "Check for updates automatically".
  11. Click the OK button to save and exit.

* The file that is downloaded is an executable called: jr2e-1_4_2_13-windows-i586-p.exe.
** Even though you may have already told the previous version not to automatically upgrade, when you install 1.4.2_13 this will have been reset.

Download and run the updater script
There is a tool on the Sun Java website (link) that you can download to upgrade the time zone data for your Java. To get this tool you will need to be registered for support with Sun. This is a very easy process. If you have not registered for support with Sun you will find a link called Register Now on the page (link).

To download and run the updater script, use this workflow:

  1. On the Sun Java(TM) 2 SDK, Standard Edition - US DST Timezone Tool 1.0.1 page, click the link for the download and save the file (tzupdater-1.0_1.zip) in a safe place on your system.
  2. Unzip the file. It will create a folder called tzupdater2007a
  3. Launch a Windows command prompt session
  4. Navigate to the folder called tzupdater2007a
  5. Execute this command: java -tar tzupdater.jar -t


Some Daylight Saving Time Links:

About Daylight Saving Time

When does Daylight Saving Time begin and end

7 comments:

Arunkumar said...

Hi Just stumbled upon this blog.Very nice and informative posts. My client is still using Discoverer 3i and we are on the upgrade path. Do you have a blog post targetting the upgrade from 3i to 4i to 10gR2?
I am referring the standard metalink note 139516.1 and a bit confused. Can u help?

Should i be just creating a new 4i EUL, import standard and custom 4i .eex files , save my custom workbooks on this new EUL schema?
what happens to my EUL3_US that i currently have?

Sec 5,Step 8 talks of creating a new EUL names EUL4_US. How do i actually upgrade my EUL 3i to 4i?
I was thinking i should export EUL3_US and import in EUL4_US , doesnt look like as per the note..

Am a Fresher in doing a EUL upgrade. Would be great if you can clarify the above or point me to some references.
Have a nice day.
Cheers,
Arun

Anonymous said...

Michael, why is it necessary to uncheck the automatic update for Java?

Thanks!

Michael said...

Hi
Its necessary to uncheck the automatic upgrade for Java because if you are using 1.4 Java will automatically upgrade itself to 1.5. There is an issue when using 1.5 on the client and 1.4 on the server. This two posting on my blog will explain:

http://learndiscoverer.blogspot.com/2006/06/10g-discoverer-handbook-page-923-do.html

http://learndiscoverer.blogspot.com/2006/08/more-to-toolbar-icons-graying-out.html

Best wishes
Michael

Anonymous said...

Hi Michael,

A couple of our users hadn't unchecked the "Check for updates" box and they've got upgraded to J2SE 1.6.. Once they got updated to 1.6, they weren't able to go to Discoverer Plus. By upgrading to 1.5 they were still okay with getting onto Discoverer plus. If you can share your opinion on this, that'd be great!

Thanks,
-Esther

Michael said...

Hi Esther
You need to back out the 1.6 Java and return to whatever was there before. If you had 1.5 previously then it will revert back to that one. If you have trouble with this then follow the advice given in this posting and download the latest 1.4.

You'll then got to make sure that you disable further updates.
Best wishes
Michael

Anonymous said...

Hi Michael,

Thanks for the information... We will go back to 1.4.2_06 for the users who got their Java upgraded.

Just to test, we got Java 1.6.0 to work with Discoverer. All we had to do was from Java Control Panel -> under Temporary Internet Files -> Settings -> Delete Files. In addition to this I had to uncheck "Keep Temporary Files On my computer" to get it to work.

Thanks again for your input!
-Esther

Anonymous said...

I was using Discoverer plus 10g with jre 1.6.0 and 1.6 update 1 straight from the beginning. Discover was working but performance was unacceptable. E.g. when clicking on a node on a report, it took 3 to 5 seconds to show the related items menu.
When I uninstalled jre 1.6 and installed 1.5.0.12 the performance problems were solved and the menu now shows almost instantly. If your are using 1.6, I would recommend that you try 1.5

Followers