Where the heck is this new Commons-Chain?  I don't see it in CVS or on the
website.  Sounds like the next big thing from Jakarta.

-- 
Norm Deane
MIS Consultant
Vanderbilt University
(615) 322-7855
[EMAIL PROTECTED] 

> -----Original Message-----
> From: Ted Husted [mailto:[EMAIL PROTECTED] 
> Sent: Friday, September 12, 2003 12:28 PM
> To: Struts Developers List
> Subject: Re: Where is Struts 2 going?
> 
> 
> Personally, I'd like to start the work on 2.x by defining the 
> use-cases 
> or stories that we'd like the framework to realize. Ideally, 
> we should 
> be able to trace each feature back to its use-case. Then, I'd 
> suggest we 
> build the framework up, story by story, test by test.
> 
> Here's some early work along those lines:
> 
> http://nagoya.apache.org/wiki/apachewiki.cgi?StrutsUseCases
> 
> Of all possible *features*, the one I would emphasize the most is 
> testability.
> 
> The second, which is a corollary to the first, would be 
> decoupling the 
> core framework from http, while allowing direct access to the 
> underlying 
> protocol when needed.
> 
> Though, if we base the core around Commons Chain of 
> Responsibility, both 
> should follow naturally.
> 
>  > "If every controller function can be done in Faces or
>  > other frameworks, what do we gain by using Struts 2?"
>  >
>  > "Using Struts 2, our applications can cruise across
>  > modules built from different vendors or teams. And
>  > we could also develop modules for others."
>  >
>  > Could we realize this dream? I know there are many
>  > challenging problems there. Could we think about it
>  > in terms of defining characteristics of Struts 2?
> 
> Personally, I'm uncomfortable defining an open source product 
> in these 
> terms. We're not a retail product looking for a market. We're a 
> community of developers building the everyday tools we each 
> need to use.
> 
> If the Java platform did ship with everything everyone 
> needed, then it's 
> true that we'd have nothing to do here, and we could all focus on our 
> paying jobs. <hurrah!/>
> 
> But it is unlikely that such a day will ever come <sigh/>. In all 
> likelihood, there are always going to be vacuums for open 
> source to fill.
> 
> If people need Struts to be an integrator, then people will 
> contribute 
> integration code. Of course, that's already true. Stxx 
> integrates Struts 
> with XLST. The Velocity Tools integrate Struts with Velocity. Some of 
> Don's packages integrate Struts with Cocoon and BSF. And so on. But 
> people didn't do this because we put it on a whiteboard. 
> People did this 
> because it is functionality they needed to do their jobs.
> 
> IMHO, the role of the Struts Committers is to ensure that generally 
> accepted best practices are followed, so that the codebase 
> remains easy 
> to maintain and improve. For new development, especially, that means 
> using techniques like test-driven development and technologies like 
> Maven and IDEs that help us write cleaner code. For 
> frameworks, it also 
> means using patterns like Context and Chain of Responsibility 
> to loosen 
> coupling. But as to where the specifics of development take 
> us, IMHO, it 
> should be "from each according to their need".
> 
>  > Now we have the Struts chain. I like the ideas of the chain.
> 
> Amen to that brother. =:0) But, it's not *Struts* chain -- it's the 
> *Commons* Chain. The true power of this package is that it gives us 
> common ground upon with to build *business layer* frameworks. 
> Right now, 
> many of us are abusing Actions because Strut is the only controller 
> framework we got. :(
> 
> But Chain is opening the door to another framework -- one that lives 
> below Struts and manages all that nasty business logic -- the 
> way Struts 
> (and friends) now helps us with all the nasty presentation logic. :)
> 
> -Ted.
> 
> 
> Jing Zhou wrote:
> > I believe this topic has been discussed hundreds of times
> > in different subjects. One of important tasks for a new 
> version is to 
> > identify concept leaps. This is the place I would like to entertain 
> > your brain - hope everyone to have a brainstorm on what are 
> really the 
> > innovative ideas to be built in Struts 2.
> > 
> > To start, let's review what the innovative ideas are in Struts 1.0. 
> > Struts is called a MVC framework. But that is not enough, actually 
> > there are many other frameworks also called MVC ones. What 
> made Struts 
> > unique at its early time is its defining characteristics 
> between form 
> > beans and web forms. They are symmetrical entities.
> > 
> > In Struts 1.1, another concept leap is introduced, we
> > called it application module. With this concept,
> > the developments of Struts applications scale up. There
> > are some other concept leaps, someone could add more.
> > Struts 1.0/1.1 is recognized as a Controller in general.
> > 
> > Now we have the Struts chain. I like the ideas of the chain. In 
> > particular, I see the possibility we could transform the Controller 
> > into an Integrator based on the chain and the application module.
> > 
> > Integrator is a higher concept than Controller in my
> > opinion. Struts 2, as an Integrator, should be able to
> > 1) Integrate faces components from different vendors.
> > 2) Integrate other non-faces component easily, including
> >    existing 1.x tag libraries.
> > 3) Integrate expression engines from different vendors.
> > 4) We could add more... (like portlets)
> > 
> > The general expectation I have with the Integrator is
> > that application flows can smoothly move around modules
> > while underlying module-wide settings for a particular 
> vendor, say a 
> > PropertyResolver in one faces module, can be switched to a 
> different 
> > PropertyResolver in another module (Expression engines can 
> be switched
> > too).
> > 
> > This is a whiteboard idea. I like to see the idea to be 
> unfolded. One 
> > of reasons is that a Struts user may be asked by his/her 
> boss in the 
> > future "If every controller function can be done in Faces or
> > other frameworks, what do we gain by using Struts 2?"
> > 
> > "Using Struts 2, our applications can cruise across
> > modules built from different vendors or teams. And
> > we could also develop modules for others."
> > 
> > Could we realize this dream? I know there are many challenging 
> > problems there. Could we think about it in terms of defining 
> > characteristics of Struts 2?
> > 
> > Jing
> > Netspread Carrier
> > http://www.netspread.com
> 
> 
> -- 
> Ted Husted,
>    Junit in Action  - <http://www.manning.com/massol/>,
>    Struts in Action - <http://husted.com/struts/book.html>,
>    JSP Site Design  - 
> <http://www.amazon.com/exec/obidos/ISBN=> 1861005512>.
> 
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to