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.
Avalon is Apache's Java Server Framework project. It is separated into six subprojects: Framework, Excalibur, LogKit, Cornerstone, Phoenix, and Apps. Its purpose is to simplify server side programming for Java-based projects. It formalizes several best practices and patterns for server side programming. Framework describes the interfaces and contracts for the component-based architecture. Excalibur provides a number of useful components and utilities. LogKit is a logging implementation. Cornerstone is a group of reusable server components and services. Phoenix is an enterprise container implementation that uses all of the other subprojects to automatically deploy and manage one or more componentized servers. Apps is a home for several Phoenix-compatible server applications and reusable components (like FtpServer).
DBPrism is an open source framework to generate dynamic XML from a database. It connects Oracle databases with Apache Cocoon, providing a high performance DBGenerator with functionality such as parallel content aggregation and ESI cache protocol. It also includes a powerlful database oriented CMS built on top of Apache Cocoon2 and DBPrism.
Load is a utility for Web application and SOAP-based Web services performance and scalability testing. It features a scripting language and a library of test objects for the creation of intelligent agents that drive the Web application or SOAP-based Web service. Running hundreds of agents concurrently shows how your software performs in production environments. Load is a Java application that runs on Linux, Solaris, NT, Win2000, and Macintosh. While Load continues to be maintained, the next generation is the TestMaker program.
ClearSilver is a high-performance, powerful, and language-neutral HTML template system. It enforces a separation between presentation code and application logic which makes writing, debugging, and maintaining Web pages easier. It can be used from C/C++, Python, Perl, Java, and Ruby. It runs on Windows and Unix.
SiteMesh was built upon the Java Servlet 2.3 API. It is a web-page layout system and web-application integration system to aid in creating large sites consisting of many pages for which a consistent look/feel, navigation, and layout scheme is required. It intercepts requests to any static or dynamically generated HTML page requested through the web-server, parses the page, obtains properties, and data from the content, and generates an appropriate final page with modifications to the original. It is ideally suited for Java based sites (particularly JSP) but can be dropped into any existing site that uses a Servlet engine including static, CGI, PHP, and ColdFusion generated pages.
Struts is a Jakarta project that provides a J2EE framework for building Web applications. It is based on a Model 2 approach, a variant of MVC. Struts provides its own Controller component and integrates with other technologies to provide the Model and the View. For the Model, Struts can interact with any standard data access technology, including Enterprise Java Beans, JDBC, and Object Relational Bridge. For the View, Struts works well with JavaServer Pages, Velocity Templates, XSLT, and other presentation systems.