JBoss Seam 2.0 - What’s new
October 6th, 2007 Radim Marek Posted in seam |
Next week I will be doing an in-house JBoss Seam training for client who migrates frontend solution from .NET to Java. Because my personal experiments are mainly based on upcoming version 2.0, the fact second release candidate is available and GA release is just few days away, the whole training is built around the new version. For better understanding I’ve compiled description of some features and changes in Seam 2.0 from documentation and JIRA tickets.
Please note that this description is based only on my personal investigation and isn’t provided from project (RedHat/JBoss) sources.
New features are:
- Seam WS allows Seam components to function as Web Service endpoints
- Seam components not just can act as Web Service endpoints, but can directly participate in long running conversations. A handler has been provided to manage Seam’s lifecycle during the scope of a web service request. Conversation ID is carried from and to client using SOAP header element and it is client’s responsibility to implement propagation individually.
- Although it’s possible to make Seam component a web service endpoint and use bijection fetures, recommended strategy is to use it as a facade to a conversational Seam component.
- Seam components may now be written in Groovy
- In case you haven’t heard about Groovy, it’s an agile dynamic language build upon the strength of Java with features inspired from Python, Ruby and Smalltalk, and that’s all with almost-zero learning curve.Mixture of Java and Groovy classes is possible, in debug mode with hot-deployment ability.
- The Seam core is now independent of JSF
- Following to questionable position of JSF on the market there is no hard dependency on JSF in Seam 2.0 core. This should allow exclusive integration with other frameworks (for example GWT or Apache Wicket) that can faster react to latest development (because they are not subject to standardization process).
- Experimental support for the Google Web Toolkit
- As mentioned above, there is now possibility to integrate different frameworks, so if you prefer GWT to develop dynamic AJAX applications Seam now provides experimental integration.
- Integration of Hibernate Search
- Seam 2.0 provides injection of FullTextSession or FullTextEntityManager as required when Hibernate Search is used, giving possibility to search specially annotated domain model.
- Introduction of JBoss EL, an extension to the Unified EL of Java EE 5
- Unified Expression Language of Java EE has been extended by JBoss EL to support following features:
- Parameterized Method Bindings to allow methods with parameters to be used in EL and parameters to be evaluated as separate expressions.
- Parameterized Value Bindings which gives ability to access classes that don’t follow JavaBean naming conventions.
- Limited support of projection list into sub-expression to access elements without need of creating specific methods within the Seam component.
- Charting integration in PDF and HTML, using JFreeChart
- Free Java chart library
- Major enhancements to Seam Asynchronicity, including Quartz integration
- Default dispatcher can be now replaced either by EJB timer service or alternative Quartz library by simple configuration statement in components.xml. Additionaly the Quartz dispatcher support three new annotations to control final expiration of the recurring task, UNIX Cron syntax for task scheduling and support for nth business day scenario.
- Major enhancements to jBPM integration
- Including support for asynchronous calls and scheduling, propagation of business/process key available on annotation level and unified use of JBoss EL, as in jBPM 3.2.1.
- Support for pageflow composition
- Allows to pause one pageflow while another (as sub-processes) executes.
- New transaction abstraction layer with support for non-JTA environments
- Seam now provides out-of-box integration with multiple transaction APIs (JPA RESOURCE_LOCAL for not participating in JTA transactions, Hibernate and Spring managed transactions)
- Migration to JSF 1.2
- Latest specification of JSF is now used
- Maven used to manage list of dependencies
- More information available in Pete Muir’s post Seam Published To Maven.
- Completely reorganized packaging of built-in components
- Simplified configuration
- Enhancements to the integration testing framework
- Enhanced JavaDoc
- Two new example applications
- Migration to the new Embedded JBoss
- Many bugfixes
November 6th, 2007 at 7:52 am
[...] miss official post What’s new in JBoss Seam, or check my list published few weeks ago. Leave a [...]