Some of the most frequently asked questions regarding Servlet development on Tomcat. Some questions may also be answered in the ServletsFaq and the JspFaq.
As any other page in this wiki, the page is editable by anyone, so don't hesitate to add useful stuff. Click on "edit this page" below to contribute.
The Official Tomcat Wiki answers many questions, and is an excellent starting point for further research:
http://wiki.apache.org/jakarta-tomcat/HowTo
Web vs Application server?
Difference between Tomcat and JBoss, Geronimo?
Is Tomcat an Application Server?
Difference between a Servlet Container and an Application Server?
See: WebVsApplicationServer
404 Errors
- Why do I get 404 not found?
- You are requesting a page or servlet that's not there. Check whether you are referring to an incorrect file location or have made a typo in a URL. Calling an external resource while on a computer that has no access to the Internet can also cause this.
- What is the invoker servlet?
How do I see what requests are being made ?
- Edit the file conf/server.xml
- Uncomment the following lines
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
Is it possible to embed Tomcat in a desktop application, so it can be used without having to be installed as a separate server ?
Yes, that's possible. You can download a special embedding version of Tomcat, which is smaller than the standard distribution, but the normal version will do as well. All the details can be found in this article.
How do I enable the EL (Expression Language) for Tomcat 5?
In order for Tomcat 5 to automatically enable the Expression Language in your JSP pages, your app must be declared as a Servlets 2.4 web application in the application's web.xml deployment descriptor.
Here's how:
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<display-name>The name of the application</display-name>
</web-app>
How can I control a Tomcat server on a remote machine, e.g. to restart a web app or Tomcat itself?
Tomcat comes with a number of Ant tasks that can be used to control it from afar. Some documentation about that is here.
ProxyApacheHttpdAndTomcat
Tomcat crashes with a 'java.lang.OutOfMemoryError?: PermGen? space' message. What gives?
Some discussion and proposed solutions can be found in a couple of Saloon threads here and here.
CategoryFaq
|