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.
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.
Apache Cocoon is a Web development framework built around the concepts of separation of concerns and component-based Web development. Cocoon implements these concepts around the notion of "component pipelines", each component on the pipeline specializing on a particular operation. This makes it possible to use a Lego(tm)-like approach in building Web solutions, hooking together components into pipelines without any required programming.
Velocity is a Java-based template engine. It permits anyone to use the simple yet powerful template language to reference objects defined in Java code. When Velocity is used for Web development, Web designers can work in parallel with Java programmers to develop Web sites according to the Model-View-Controller (MVC) model, meaning that Web page designers can focus solely on creating a site that looks good, and programmers can focus solely on writing top-notch code. Velocity separates Java code from the Web pages, making the web site more maintainable over the long run and providing a viable alternative to Java Server Pages (JSPs) or PHP. Velocity also provides template services for the Turbine Web application framework, making a template service that allows Web applications to be developed according to a true MVC model.
The POI project contains several components for dealing with popular OLE 2 formats in Java. POIFS is a pure Java implementation of the OLE 2 Compound document format. HSSF is a pure Java implementation of Excel 97-2003 XLS file format based on POIFS. HSSF Serializer is a pure Java serializer for Cocoon 2 that uses the Gnumeric XML format to output XLS. Full documentation of the POIFS file format is included. It is useful if you wish to output reports in the Excel file format, or if you have existing XML documents that you need to get into Excel. HSLF provides initial support for PowerPoint 97-2003 and HWPF provides limited support for Word 97-2003. POIFS can be used to read any OLE2 stream.