The goal of the Apache Tomcat Project is to provide commercial-quality server solutions based on the Java Platform that are developed in an open and cooperative fashion. Tomcat 3.x is an implementation of the Java Servlet 2.2 and JavaServer Pages 1.1 Specifications. Tomcat 4.x is an implementation of the Java Servlet 2.3 and JavaServer Pages 1.2 Specifications, and is a re-implementation of the Tomcat servlet engine from the ground up. The current branch, Tomcat 5.x, is an implementation of the Java Servlet 2.4 and JavaServer Pages 2.0 specifications, with increased attention to scalability, reliability, and management functionality.
Tapestry is a rich, component-based object model for developing dynamic, robust, highly interactive Web applications. Applications are constructed in terms of Java objects, methods and properties, instead of URLs and query parameters. It builds and interprets all URLs, dispatching directly to application-specific "listener" methods. It includes complete source code, documentation, tutorials and a complete example J2EE application.
The Apache/Perl integration project brings together the full power of the Perl programming language and the Apache HTTP server. With mod_perl it is possible to write Apache modules entirely in Perl. In addition, the persistent interpreter embedded in the server avoids the overhead of starting an external interpreter and the penalty of Perl start-up time.
Expresso Framework is an open standards-based J2EE architectural framework that allows the developer to concentrate on application logic. It is a library of extensible Java Server application framework components for creating database-driven Web applications based on open standards. Expresso integrates with Apache Jakarta Struts, which emphasizes presentation and application configuration, and bringing a powerful tag library to Expresso. Expresso adds capabilities for security, robust object-relational mapping, background job handling and scheduling, self-tests, logging integration, automated table manipulation, database connection pooling, email connectivity, event notification, error handling, caching, internationalization, XML automation, testing, registration objects, configuration management, workflow, automatic database maintenance, and a JSP tag library.
The Apache JMeter is a 100% pure Java desktop application designed for performance and load testing of servers. It was primarily designed for Web/HTTP testing but it has been expanded to include support for a variety of testing modules. It ships with modules for HTTP and SQL databases (using JDBC). It may be used to test server performance both on static and dynamic resources, to simulate a heavy load on a server or network to test its strength, or to analyse overall performance under different load types. It also provides pluggable interfaces for customizing data visualization, test synchronization, and the construction and execution of tests.
Log4j is a logging package written in Java. Log4j allows you to log to a file, a java.io.Writer, a remote server, or a syslog daemon. The package is designed so that log statements can remain in shipped code without incurring a high performance cost. One distinctive feature of log4j is the notion of hierarchical loggers. Using hierarchical loggers, it is possible to select (at runtime) which log statements are output at arbitrary granularity. Users can choose to implement their own log formats and output strategies.