Dont get me started on Java's installer. Trying to package it for distrubition through SCCM is like poking your eyes out with a piano tuner.  The best is if you install Java 6 U 18 or higher wich will by default remove versions between Java 6 U 18 and whatever one you are trying to install ok sounds good but if you have a version pre 6U18 on the machine it breaks itself in a way which is almost impossible to fix unless you use the

1)Microsoft Installer cleanup utilty to remove all versions of java on the machine

2) then run a utilty called Java Ra to remove all files, folders and reg keys then go into the registry and delete the HKLM/Software/Javasoft key.

3) ensure the program files/java folder is gone

4) rerun your install and most of the time it will work.

 

Took me a while to figure out how to fix that one.