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.
[fleXive] is a Java EE 5 open-source framework for the development of complex and evolving (web-)applications. It speeds up development by easing many tedious and repetitive programming tasks and helping to keep your application(s) flexible during the development-cycle and in production.
[fleXive] concentrates on enterprise-scale content modeling, storage and retrieval, and includes comprehensive JSF support for displaying and manipulating these contents in (web) applications. The runtime environment can be included in existing Java EE applications, but you can also build new applications and package them into stand-alone Java EE applications.
[fleXive] provides essential features for data-centric applications:
* Secure EJB-based persistence engine
* Web development JSF toolkit
* Powerful administration interfaces
* Based on the latest industry-standards like Java 6, EJB 3, JSF, etc.
Japple is a rapid application development environment for building web applications and services. Built on the JavaTM2 Platform and open-standards, Japple allows you to develop and deploy web applications faster, easier and more efficiently than traditional methods.
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.
Restlet is a framework that brings the simplicity and efficiency of the REST architectural style to Java developers. It is composed of two parts, a neutral API and a reference implementation (Noelios Restlet Engine). It supports all REST concepts (resource, representation, data, connector, components, etc.) and is suitable for both client and server REST applications. The server connectors provided are HTTP (via Mortbay's Jetty or an adapter Servlet) and the client connectors are HTTP, JDBC, and SMTP (via JavaMail).
Turbine is a servlet based framework that allows experienced Java developers to quickly build secure web applications. Turbine is an excellent choice for developing applications that make use of a services-oriented architecture. Some of the functionality provided with Turbine includes a security management system, a scheduling service, XML-defined form validation server, and an XML-RPC service for web services. It is a simple task to create new services particular to your application.
Stripes is a Java web framework that makes web development as easy as it should be. It requires zero external configuration beyond the registration of one servlet and one filter. Stripes includes simple yet powerful solutions to common problems such as indexed properties, multi-event forms, localization and use of domain objects in the web tier. All of this in a compact framework with hardly any dependencies!
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.
Page 6 of 8