Abnormal termination during starting up Tomcat

Hi, everybody

My problem scenario is here:

X-Application Version: 3.1.3
Tamino Version : 3.1.1.1
Platform : NT
WebContainer : Tomcat 3.3
JDK Version : 1.4.0_01

I COULD ever start up the Tomcat container (through command line) and run the X-Application generator (through X-Plorer) to generate new application, and also SUCCESSFULLY start the new application.

However, when I restarted my computer (and also restarted the Tomcat container), there is an error in the command line for Tomcat start up. The error message is here:

=====================================================

(the messages before this line are skipped)

INFO [main] - Loading namespace taminowebdavserver configuration
INFO [main] - Namespace configuration complete
EmbededTomcat: Init time 4256
Guessed home=C:\Program Files\Software AG\Tamino\Tamino WebDav Server 3.1.1\jaka
rta-tomcat
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.tomcat.util.IntrospectionUtils.execute(Unknown Source)
at org.apache.tomcat.startup.Main.execute(Unknown Source)
at org.apache.tomcat.startup.Main.main(Unknown Source)
Caused by: org.apache.tomcat.core.TomcatException: Root cause - Address already
in use: JVM_Bind
at org.apache.tomcat.modules.server.PoolTcpConnector.engineStart(Unknown
Source)
at org.apache.tomcat.core.ContextManager.start(Unknown Source)
at org.apache.tomcat.startup.EmbededTomcat.start(Unknown Source)
at org.apache.tomcat.startup.EmbededTomcat.execute1(Unknown Source)
at org.apache.tomcat.startup.EmbededTomcat$1.run(Unknown Source)
at org.apache.tomcat.util.compat.Jdk12Support$PrivilegedProxy.run(Unknow
n Source)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.tomcat.util.compat.Jdk12Support.doPrivileged(Unknown Sourc
e)
at org.apache.tomcat.startup.EmbededTomcat.execute(Unknown Source)
… 7 more
===================================================================

After I saw this error message, I tried to launch the Tomcat home page through web browser, and it successfully loaded the page. However, when I tried to run examples (which I have NOT ever run before) in http://localhost:4000/xapp/, there is an error message:

========================================================
Error: 500
Location: /xapp/simple/BrowseWithNavigation.jsp
Internal Servlet Error:

java.lang.NoClassDefFoundError: sun/tools/javac/Main
at org.apache.jasper.compiler.SunJavaCompiler.compile(Unknown Source)
at org.apache.tomcat.facade.JasperLiaison.javac(Unknown Source)
at org.apache.tomcat.facade.JasperLiaison.processJspFile(Unknown Source)
at org.apache.tomcat.facade.JspInterceptor.requestMap(Unknown Source)
at org.apache.tomcat.core.ContextManager.processRequest(Unknown Source)
at org.apache.tomcat.core.ContextManager.internalService(Unknown Source)
at org.apache.tomcat.core.ContextManager.service(Unknown Source)
at org.apache.tomcat.modules.server.Http10Interceptor.processConnection(Unknown Source)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(Unknown Source)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(Unknown Source)
at java.lang.Thread.run(Thread.java:484)
========================================================

Can anyone help me to solve the problem please?

Andy

Hi Andy,

it looks like you have lost “tools.jar” from your Tomcat classpath.
As you probably know, Tomcat generates .java sources which it needs to compile with javac.

If you look into your JDK lib directory (not the JRE lib) you will find a tools.jar file, which contains the javac classes.
Add this to your Tomcat classpath using your favoured method.

I hope that helps,
Trevor.

Hi,

I tried to edit the server.xml (and also the serverXapp8081.xml) to set the classpath just like this:

=================================================
JspInterceptor keepGenerated=“true”
largeFile=“false”
useJspServlet=“false”
classPath=“D:/j2sdk1.4.0_01/lib/tools.jar”
=================================================

(Actually, I tried different types of versions in defining the classpath…)

=================================================
JspInterceptor keepGenerated=“true”
largeFile=“false”
useJspServlet=“false”
classPath=“D:\j2sdk1.4.0_01\lib\tools.jar”
=================================================

and also,

=================================================
JspInterceptor keepGenerated=“true”
largeFile=“false”
useJspServlet=“false”
classPath=“D:\j2sdk1.4.0_01\lib\tools.jar”
=================================================

However, it didn’t work and it still had the exception error during starting up Tomcat…

Which file do I need to edit? server.xml or serverXapp8081.xml, or both?

Thanks for your kind help.

Andy

A different way to make tools jar available to your Tomcat: point JAVA_HOME to your JDK install directory and (within the same dos box) start Tomcat (via command line).

Michael

Software AG Germany, Darmstadt

Hi,

I had already set the classpath environment variable JAVA_HOME in my NT platform to D:\j2sdk1.4.0_01

I also tested it by typing “echo %JAVA_HOME%” in command line, and it successfully printed out the pointing directory. After this, I started the Tomcat, however, same error message came out…

Thanks for your kind help!

Andy

Did you install addtional jar files in one of Tomcat’s lib directories? If so, could you please try with an unmodified installation of Tomcat?

Michael

Software AG Germany, Darmstadt

Hi,

I did NOT install any jar files into the Tomcat’s lib directories. Thanks for your kind help.

Andy