Apache Tomcat is a web server developed in Java that aims to provide you with a pure Java environment for running web applications. These applications can be run in the interface of an Internet browser such as Firefox, Chrome or Internet Explorer.
In web development, Apache HTTP server is used in order to provide the backbone of multiple websites by processing the requests of the clients. While the HTTP server delivers the webpages to the end user, Tomcat is the tool that provides servlet support in order to add dynamic content to the server.
If you are creating a website that also includes Java code and applets, this application can help the web server run them instead of running in the user’s Internet browser. This greatly improves the reliability of the application and the response time for the end user.
The main components of the server are the servlet container, the HTTP connector and the JSP engine that runs the dynamic content. The servlet container, also known as Catalina, directly interacts with the Java applications and ensures that the access rights of the user are correctly maintained during the session.
The communication between the server and the clients are handled by the HTTP connector that listens to the TCP connections and sends the requests to the JSP Engine. It is also responsible of sending the feedback back to the client after it has been processed.
While there are other alternatives to Tomcat, there are some advantages that make it a reliable solution. First of all, it is a non-commercial solution that can be implemented in any project with minimal resources. On the other hand, the server is developed by a large community that provides support and feedback for the developers.
Overall, due to its features and large pool of resources Apache Tomcat is a viable solution for both small users and large companies that use Java applets on their websites.
What's New in This Release:
Catalina:
· 54521: Ensure that concurrent requests that require a DIGEST authentication challenge receive different nonce values.
· 54534: Ensure that, if a call to StandardWrapper#isSingleThreadModel() triggers the loading of a Servlet, the correct class loader is used.
· 54536: Ensure the default error page is displayed if a custom HHTP status code is used when calling HttpServletResponse#sendError(int, String).
Coyote:
· 54456: Ensure that if a client aborts a request when sending a chunked request body that this is communicated correctly to the client reading the request body.
· Update the native component of the APR/native connector to 1.1.27 and make that version the recommended minimum version.
Jasper:
· 54239: Enable web applications to provide their own Expression Language interpreter to enable them to optimise processing of expressions. Based on a patch by Sheldon Shao.
· Web applications
· 54505: Create clearer links from the JNDI How-To to the Tomcat specific options for configu...