RIFE project is a full-stack web application framework with tools and APIs to implement most common web features. Each of its toolkits is usable by itself and together they offer powerful integrated features that boost your productivity.
RIFE ensures that every declaration and definition is handled in one place in the code. This simplifies the developer's task by reducing code replication, enforcing consistency, and easing maintenance.
RIFE's design provides the best of request-based and component-based approaches and blends them together in a consistent component object model. The web engine provides a solution that values maintainability without compromising on productivity.
Through a centralized site structure, an application can be split up into easily reusable binary modules that can be seamlessly integrated into other projects.
There are currently two major schools of web application development frameworks: request-based and component-based.
Request-based frameworks are very close to the original CGI specification. They use controllers and actions that directly handle incoming requests. Each request is fundamentally stateless.
With the introduction of server-side sessions, a certain degree of statefulness has been achieved. The different frameworks basically differentiate themselves by the way they map logic to URLs and how data is structured and provided to the developer.
Component-based frameworks abstract the developer away from the internals of the request handling and encapsulate the logic into reusable components, often independent from the web medium.
The state is automatically handled by the framework, based on the data that is present in each component instance. Together with some form of event handling, this development model is very similar to the features offered by desktop GUI toolkits. The different frameworks basically differentiate themselves by the provided component API and how components are combined together.
RIFE combines both by taking control of the entire data and logic flow in a request-based model. Developers remain close to the architecture of CGI applications and have full control over URLs, forms, parameters, cookies and pathinfos.
However, instead of mapping actions and controllers directly to the request, RIFE provides a component object model that behaves identically in many different situations such as individual pages, intercepted requests, portal-like page fragments and integratable widgets.
Components can be wired together and be packaged as groups that are components in their own right. They can be distributed separately and be seamlessly integrated into any other RIFE project. This provides the same form of reusability as component-based frameworks, but with the raw control of the request-based approach.
What's New in This Release:
· Transparent meta data merging has been implemented, which is a creative solution to keeping POJOs pure and still make it possible to declare dynamic meta data in plain Java.
· Other highlights of this release are: new (X)HTML template tag syntaxes, experimental Ajax support with DWR integration, embedded element priorities, strict pathinfo mapping, deprecated CmfProperty and CmfValidation, flowlink-specific datalinks, mail queue support for authentication and SSL, support for setting reflexive outputs and globalvars across submissions, and several bugfixes.