There’s an interesting discussion of the relationship between Struts Action and Struts Shale happening over on the struts-dev list. The thread is titled “Does Struts really need two frameworks? (long)”, and you can read it over at Nabble.com.
It is an interesting thread. It starts off interesting, it has some good responses, there is some flaming on the thread. Someone even mistakenly sends an embarrasing off-list reply to the struts-dev list. Read more…
To Split or not to Split?
There are a few camps in this discussion, one camp believes that Shale tends to distract and confuse users who are looking to Struts for an Action-oriented framework. Another camp tends to believes that Struts 2.0 can encompass Action 1, Action 2, and Shale, producing a distribution that contains all of these elements. Another camp favors Shale as the next Struts. From what I can see, the bulk of the contributors fall into the first camp, a few fall into the camp that favors more integration, and there is only one person who sees Shale as not needing to integrate with the action framework at all.
Shale is not the “next Struts”
The next Struts is going to be an action-oriented framework. The next “Struts” will either come from the Struts project or another project entirely. Shale could very well be the next web application framework of choice, but associating it with the Struts “brand” is confusing at worst and misleading at best. If Shale is going to succeed, it should probably succeed on it’s own merit. Get on with it. Absorb WebWork, separate the frameworks, and get back to business. Provide Struts 1.x users with a very clear upgrade path to Struts Action Framework 2, and continue to work on mechanisms that let people integrate JSF components.
The alternative is to release Struts Action Framework 2, and continue to present Struts as two frameworks. People will soon start upgrading Struts 1.x applications to Struts Action Framework 2 application because it is the most logical upgrade path. Shale has been in development for 2 years, it still hasn’t been released. SAF2 (Webwork 2.3) is going to get the lion-share of the attention after the upcoming release, and Shale is going to continue to be this step-child of a subproject in the Struts community.
Voice your Opinions
What do you think? Should Struts Action Framework 2 and Struts Shale continue as siblings under the Struts umbrella? Are you confused by the duality of Struts?