In linux, is it possible to have a web application written using Java 7 be deployed on tomcat6? If so, what configuration needs to be modified to allow it to work?
I have tried changing the JAVA_HOME
variable in the tomcat6.conf
file and restarting, but it is still using 1.6 according to the tomcat manager webpage, and only applications written in 1.6 or lower deploy correctly.
I have both jdk 1.6 and 1.7 installed in different locations.
I had a major problem when I compiled my servlet using java JDK 1.7.0, Tomcat wouldn't start up due of a runtime manor.major version error.
To make Tomcat6 run your classes using JDK 1.7 do the following:
Open the file /etc/init.d/tomcat6
with root privilege.
You will find a variable called JDK_DIRS
at line 83.
Comment it out by adding #
at the beginning of the line.
Write the following bellow it: JDK_DIRS="/usr/lib/jvm/java-1.7.0-openjdk-i386"
Save and restart tomcat
I'm just using default Tomcat installations without setting up any config files except the tomcat-users.xml
for GUI login.
Apache Tomcat 6.0.35 and 6.0.16 are each running on JVM 1.7.0_03-b05 (Windows+Linux).
JAVA_HOME must point to the JDK folder; e.g.:
C:\Program Files\Java\jdk1.7
(Windows)
or
/usr/lib/jvm/java-6-sun
(Ubuntu, this link points to JDK installation)
I have run into similar problem and it seems that JDK 1.7 doesn't have backward compatibility with Tomcat 6. You need to deploy it to Tomcat 7 or recompile using JDK 1.6.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With