The Future Of JBoss Seam And Apache DeltaSpike
At the beginning of this year JBoss released version 3.1 of the Seam Web framework. However this is not just another minor numbered update in the Seam timeline. Instead, this version is the last "bundled" release of Seam, marking an important milestone. Future development will happen in a different manner since the effort is now focused on Apache DeltaSpike.
Apache DeltaSpike (currently in incubation) is a set of extensions on Java CDI (Contexts and Dependency Injection). This description might sound familiar because this was also the original purpose of Seam 3: a set of modules which extend CDI to provide functionality beyond that offered by Java EE 6.
So what will happen with Seam 3? Is Apache DeltaSpike going to be Seam 4? To answer these questions, InfoQ contacted Pete Muir, a Principal Software Engineer at Red Hat/JBoss for some clarifications:
InfoQ: Can you talk a bit about DeltaSpike? Is it a continuation of Seam?
About 4 or 5 months ago, we started discussing the future of Seam 3, and where we (the project leaders, both from inside JBoss/Red Hat, and our community contributors) wanted to take it. And we quickly realised we weren't happy with the direction! Why?
Well, post-Java EE 6 release, a number of different groupings of extensions for the Java EE platform, built on the CDI extension SPI, had popped up. At first, we thought this was great, as it proved that CDI and Java EE 6 were popular, and offered a great ecosystem for developers. However, we quickly realised that whilst Java EE 6 and CDI had standardised the core programming model, we had ended up splintering at the next level up - extensions.
When we approached other CDI communities, such as Apache MyFaces CODI, and CDISource, we all realised that we felt the same - and when we polled our user communities we realised they felt the same too - what they really wanted was one way, one excellent way (of course), to do stuff. From here, we conceived the idea of DeltaSpike, a neutral ground at which we could collaborate and cherry pick the best of Seam 3, Apache MyFaces CODI and others.
The first 3 months have proved this true. DeltaSpike 0.1 has been released, focusing on core extensions to the CDI programming model. And it is better than both Seam 3 and CODI in everyone's opinion.
So a continuation in goals, ethos and spirit, even if not in API!
InfoQ: Is DeltaSpike the core for Seam 4?
We have no intention of releasing Seam 4. But this is a perfect point to introduce our ideas about how DeltaSpike fits into JBoss AS (as that is the true continuation of Seam 3).
We want to make JBoss AS the best place to use DeltaSpike - great tooling, examples, and tutorials. Excellent compatibility, top notch performance. And we want to do this with both source and binary compatibility to the Apache DeltaSpike upstream, to provide 100% compatibility with the rest of Java EE.
This is our vision for the next generation of "Seam".
InfoQ: What is the connection with MyFaces? Will Seam merge with MyFaces? Or some components will only be merged will others will remain as Seam 3?
The eventual aim is to migrate all of Seam 3 and MyFaces CODI to DeltaSpike, taking the best of both. We're also hoping to incorporate ideas from CDISource, Software Mill, Cambridge Technology Partners and others. We've taken the pragmatic attitude that we should start with the core features, and move out from there. I think you'll start to see a lot more momentum in the next few months, as the core is almost done, and we can start building many more extensions on this.
InfoQ: What will happen with Seam 3.x ? Will there be Seam 3.2 or the next version is something different?
We've committed to continuing to support Seam 3 for the foreseeable future with bug and security fixes, at least until the community feels the DeltaSpike stream is ready. I think we are more likely to see Seam 3.1.1 than Seam 3.2.
We're working hard on a migration guide for Seam 2 to Java EE 6, and we'll provide the same for Seam 3, once more of DeltaSpike is complete.
InfoQ: Anything more that you would like to add for existing Seam users?
Just that exciting times are ahead. I think we're soon going to see the recent turbulent weather around Seam start to turn to sunshine. Watch jboss.org/developer for more!
Apache DeltaSpike artifacts are already in Maven Central for those who want to evaluate them.
Seam was good
Travis De Silva
Seam is dead and DeltaSpike has no voice
If anyone looks at the DeltaSpike wiki site with it's sparse detail on what is going on, then anyone can be forgiven to assume that nothing is stated because nothing is being committed to. There was no phased approach or maintenance releases announced for Seam 3 so although DeltaSpike might hopefully one day be the CDI extension library of choice *choice with no alternatives*, it is going to take a long time to get there and find the traction among developers / solution developers / architects. Also, now there are no alternative or competing products which is the greatest driver of innovation.
So in more ways than one, we [the customers] have been let down.
Java and its Frameworks
Other frameworks are years ahead, but require some mind shifting and adopting REST for all, convention over configuration and so on...like the Play Framework (which is highly inspired by Rails) for example.
Leave this old, big, cucumbersome frameworks behind, it's time to evolve!
Re: Java and its Frameworks
Also Seam was one of the two popular frameworks (the other one is Spring Web Flow) that supported "conversation" scope in an easy way.
Re: Seam is dead and DeltaSpike has no voice