Barracuda is an open-source Presentation Framework designed to make it easier to build servlet based webapps by applying proven client-server patterns to the web development paradigm. It features a DOM based templating mechanism for better separation of code from content (default XMLC), a UI component model that provides a series of server side widgets (table, list, template, etc) that make it easy to manipulate DOM structures, and a strongly typed MVC interfaces just like in Swing. With support for multiple markup languages (HTML, WML, XML, etc). It has an event model that provides Model 2 style flow control and allows for true event driven programming on the server. You can add listeners to components and your server-side event handler code will automatically get notified when an action occurs on the client.
Tapestry is a powerful, open-source, all-Java framework for creating leading edge web applications in Java.
Tapestry reconceptualizes web application development in terms of objects, methods and properties instead of URLs and query parameters.
Tapestry is an alternative to scripting environments such as JavaServer Pages or Velocity. Tapestry goes far further, providing a complete framework for creating extremely dynamic applications with minimal amounts of coding.
The Mentawai goal is to be a simple, flexible, joyful and productive Java web framework.
* Simple: Mentawai is very simple to install, configure and understand.
* Flexible: The Mentawai architecture is very flexible and well organized, enabling any mortal to create new functionalities to the framework by implementing its core classes. The core of the framework is all based on interfaces.
* Complete: Mentawai offers transparent solutions for the repetitive tasks of every web project.
* Joyful: Mentawai offers programatic configuration with 100% pure Java code.
* Productive: Mentawai offers simple and practical solutions to most of the web development problems, reducing the developing time.
ThinWire is a development framework that allows you to easily build applications for the web that look and feel like the desktop applications you're familiar with. Responsive, expressive & interactive user interfaces in your web browser without the complexity of the alternatives.
JOSSO, or Java Open Single Sign-On, is an open source J2EE-based SSO infrastructure aimed to provide a solution for centralized platform neutral user authentication.
RIFE offers an alternative approach to web application development and design. It builds upon the Java platform, but offers all required tools and APIs to implement and perform all common website related tasks in a fast, intuitive and consistent manner.
RIFE has been designed for perfect separation of tasks during a development cycle. Every developer, dba and designer only has to focus on his own tasks. At any moment the work can be effortlessly integrated with the work of the rest of the team.
This results in a loosely coupled and very robust system. One can make incremental improvements with little or no risk of unwanted side-effects elsewhere in the system.
RIFE is composed out of a large collection of modular parts, which include:
* web application engine,
* integrated web continuations,
* customizable multi-format template engine (html, xml, sql, java, txt, ...)
* support for template content transforming through for example XSLT,
* authentication framework,
* database query builders,
* simple persistance layer,
* fault-tolerant JDBC wrappers and connection pooling,
* web-oriented database utilities,
* central data repository,
* cron-like scheduler,
* configuration framework.
The central part is the engine which formalizes all aspects of dynamic web development. It graciously solves all doubt, confusion and maintenance problems of HTTP's statelessness and liberal CGI interface.
The Spring Framework provides solutions to many technical challenges faced by Java developers and organizations wanting to create applications based on the Java platform. Because of the size and complexity of the functionality offered, it can be hard to distinguish the major building blocks from which the framework is composed. The Spring Framework is not exclusively linked to the Java Enterprise platform, although its far-reaching integration in this area is an important reason for its popularity.
The Spring Framework is probably best known for offering features required to create complex business applications effectively outside of the programming models which have been dominant historically in the industry. Next to that, it is also credited for introducing previously unfamiliar functionalities into today's mainstream development practices, even beyond the Java platform.
This amounts to a framework which offers a consistent model and makes it applicable to most application types created on top of the Java platform.
The spring Framework can be considered as a collection of smaller frameworks. Most of these frameworks are designed to work independently of each other yet provide better functionalities when used together. These frameworks are divided along the building blocks of typical complex applications:
*Inversion of Control container: configuration of application components and lifecycle management of Java objects.
* Aspect-oriented programming framework: working with functionalities which cannot be implemented with Java's object-oriented programming capabilities without making sacrifices.
* Data access framework: working with relational database management systems on the Java platform using JDBC and Object-relational mapping tools providing solutions to technical challenges which are reusable in a multitude of Java-based environments.
* Transaction management framework: harmonization of various transaction management API's and configurative transaction management orchestration for Java objects.
* Model-view-controller framework: HTTP and Servlet based framework providing many hooks for extension and customization.
* Remote Access framework: configurative RPC-style export and import of Java objects over computer networks supporting RMI, CORBA and HTTP-based protocols including web services (SOAP).
* Authentication and authorization framework: configurative orchestration of authentication and authorization processes supporting many popular and industry-standard standards, protocols, tools and practices via the Spring Security sub-project (formerly Acegi).
* Remote Management framework: configurative exposure and management of Java objects for local or remote configuration via JMX.
* Messaging framework: configurative registration of message listener objects for transparent message consumption from message queues via JMS, improvement of message sending over standard JMS API's.
* Testing framework: support classes for writing unit tests and integration tests.