| The first application framework for EJB 3.0 |
EJB 3.0 has changed the notion of EJB components as coarse-grained, heavy-weight
objects to EJBs as lightweight POJOs with fine-grained annotations. In Seam, any
class may be an EJB - Seam eliminates the distinction between presentation tier
components and business logic components and brings a uniform component model
to the EE platform.
|
| Backward compatible with J2EE |
But Seam is not limited to environments that support EJB 3.0. Seam may be used
in any J2EE environment, or even in plain Tomcat.
|
| The easy way to do AJAX |
Seam integrates open source JSF-based AJAX solutions like ICEfaces and Ajax4JSF
with Seam's unique state and concurrency management engine. You can add AJAX to your
applications with ease, without the need to learn JavaScript, and you will be
protected from potential bugs and performance problems associated with the switch
to AJAX.
|
A revolutionary approach to state management |
Before Seam, the HTTP session was the only way to manage Web application state.
Seam provides multiple stateful contexts of different granularity from the
conversation scope to the business process scope, liberating developers from the
limitation of HTTP sessions. For example, developers can write Web applications with
multiple workspaces that behave like a multi-window rich client.
|
| Manage "flow" |
Seam integrates transparent business process management via JBoss jBPM, making
it easier than ever to model, implement and optimize complex collaborations (workflow)
and complex user interactions (pageflow).
|
Easy integration testing |
Seam components, being POJOs, are by nature unit testable. But for complex applications,
unit testing alone is insufficient. Therefore, Seam provides for easy testability of Seam
applications as a core feature of the framework. You can write JUnit or TestNG tests
that reproduce a whole interaction with a user, exercising all components of the system,
and run them inside your IDE.
|