[Solved] How to Install Tomcat5 and JDK5 on Ubuntu 20.04 LTS
Installation of Tomcat and JDK on Unbuntu is just issuing few commands and having a glass of coke. It will surely install the latest versions of both but what if someone is too lazy to upgrade its code and requirement Tomcat version. Legacy applications mostly do this when you need to migrate the infrastructure and but all what is available on the cloud is the newer version of the operating systems like Ubuntu 20.04 is available everywhere. I had to deal with one of my client’s requirement where I was given a task to install Tomcat5.5 and JDK5 so that a legacy application can run on it. I had to invest a good amount of time to find a single article where both these items were accomplished but was failed so I decided to write this article “[Solved] How to Install Tomcat5 and JDK5 on Ubuntu 20.04 LTS”.
Solution!!!
Installation and configuration of JDK5
Things are not that complicated if you read the errors and follow general instructions to solve them. First I will provide the basic and simple steps to install JDK5.
- Visit the link below to download the JDK5 source so that it can be uploaded to the server for necessary configuration.
- Download link
- I download JDK 1.5.0_22 like given in below snap:
Install unzip on Ubuntu 20.04 if its not already installed. Extract JDK in a directory, I would prefer to use under listed path:
Create necessary directory structure
sudo mkdir -p /usr/lib/jvm/java5
As we have downloaded .bin file so we need to unzip it.
Install unzip on Linux by using under listed command
apt-get install unzip
sudo unzip jdk-1_5_0_22-linux-i586.bin
Move extracted files under /usr/lib/jvm/java5
mv *.* /usr/lib/jvm/java5/
Now we need to create alternate paths for all requirement JAVA applications:
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/java5/bin/java" 1 sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/java5/bin/javac" 1 sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/java5/bin/javaws" 1
Now we need to correct the permissions of the newly created Alternates:
sudo chmod a+x /usr/bin/java
sudo chmod a+x /usr/bin/javac
sudo chmod a+x /usr/bin/javaws
sudo chown -R root:root /usr/lib/jvm/java5
Check if it successful which was not in my case
java -version
Error: bash: /usr/bin/java: No such file or directory
Solution!!!
Mostly above commands and method is available on the internet which might not work and that was my case so I have to put extra efforts to resolve it. As the downloaded JDK is 32bit so we need to install some libraries to make it work otherwise we will get under listed error:
apt-get install libc6-i386
Once you are done with the above error, I received another error:
Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object
As we have downloaded .bin files, means binary so we need to do some manual work as well. The installer unpack few pack files while installation of JDK and convert them to .jar files but in our case it will not unpack as we manually untar the bin file. Now we need to unpack the rt.pack to rt.jar file. use the under given command to accomplish this task.
/usr/lib/jvm/java5/bin/unpack200 -r -v rt.pack rt.jar
Check if it successful, at least it successful in my case.
java -version
Now we need to set the JAVA_HOME. copy and paste under given command (if you have chosen the same path like above)
export JAVA_HOME=/usr/lib/jvm/java5
Installation and configuration of Tomcat5.5.9
Download Tomcat5.5.9 from under given link:
Uncompress the tar file, use under given command:
tar xvfz jakarta-tomcat-5.5.9.tar.gz
I chose /usr/local/tomcat. Now we need to Set JAVA_HOME and CLASSPATH
You need to point out where you installed Java SDK. You will have to edit the file ‘.bashrc’. Backup this file first!
In terminal type:
gedit ~/.bashrc
Add the following lines to the file:
#Stuff we added to make tomcat go
export JAVA_HOME=/usr/lib/jvm/java5
export CLASSPATH=/usr/local/tomcat/common/lib/jspapi.jar:/usr/local/tomcat/common/lib/servlet-api.jar
Tomcat should now be ready to run.
In terminal type:
sh /usr/local/tomcat/bin/startup.sh
If everything is working fine, you will see the following lines:
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/lib/j2sdk1.5-sun/
In your browser head to http://localhost/
and test if it is serving.
To stop tomcat type:
sh /usr/local/tomcat/bin/shutdown.sh
Why do you download a .bin file and in the next step you use a .tar.gz file? I can’t find that .tar.gz download’s link …
Thanks for pointing out the discrepancies. The post has been updated with relevant commands. I really appreciate your visit. Please keep visiting for more posts.