You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by Ted Husted <te...@gmail.com> on 2005/08/02 14:45:20 UTC
Re: [STRUTS 2X]: Ideas
Moving this to the dev@ .
On 8/2/05, Pilgrim, Peter <pe...@csfb.com> wrote:
> > But any proposals for a new Struts subproject or revolution have to be
> > based on an existing codebase. Discussions and debates will never be
> > enough. Someone has to show us the code, and more importantly, the
> > community behind the code.
>
> Yes I tend to agree that just discussions is not equal to code, but
> one must have "the vision", and for a vision you must eventually
> come up with a design.
True. If we really want to start a revolution, I'd say the first
question is why?
(1) Why do we need a web application framework?
(2) Why isn't Struts Classic good enough?
(3) Why can't we fix (2) through evolution?
Another valid question would be:
(4) Why isn't another ASL-compatible framework, like Spring MVC, Web
Works, or Wicket, good enough?
But, realistically, a great number of corporate teams use Struts and
getting another framework approved would be a challenge. For many
people, it might be easier to rebuild Struts than go through the
product-approval process again.
> > Every major codebases we've ever accepted, Validator, Tiles, Nesting,
> > EL, Scripting, Flow, and Shale, were all written and attracting
> > communities before we considered them for subprojects. And, had we
> > passed, each one of these would have gone on to live indepedant lives
> > with their own communities..
>
> So what you saying one can take the existing codebase and build
> a next generation derivative. Publish it around, wait for the
> community to build up, and then you will get a chance to be
> considered among equals.
Yes. We don't have an alpha-geek here. People need to buy in, and most
volunteers won't buy-in until there is code on the table.
Back in the day, Bill Gates was able to walk around the Microsoft
campus and tell everyone "OK, it's all about .NET now." And everyone
there hunkered down and made it so. No one here can do something like
that. We need to see volunteers stepping up and maintaining the
codebase of their own free will.
But *not* because the codebase is labeled "Struts" -- but because the
volunteers want it and need it for their own work. People who work on
Struts because it's Struts are seeds in shallow ground. For a codebase
to succeed, we need to see that it has deep roots and committed
volunteers, who will do whatever it takes by any means necessary.
Now, if it were me, which right now it is not, I'd start by recoding
Struts for Java 5, test by test, example by example. I wouldn't worry
about backward compatiblity too much at first, and I'd drop anything
that's just there to maintain backward compatibility, including
pre-module stuff to support direct links to server pages.
I might skip over conventional ActionForms, and only implement the
dynamic or lazy versions, along with Hubert's POJO extension. I would
certainly integrate the Struts-Config, Tiles, and Validator schemas,
so that you can have one config, if you like, or slice and dice them.
I'd clean up some of the inconsistencies in the XML schema, and then
think about making some other changes (as delibrated in Jericho).
Ideally, we should be able to inject any object from the config, ala
Spring and HiveMind. I'd then jump ahead and add the things on the
Struts Roadmap.
In other words, revolution by mutation. Instead of waiting years for
Struts 1.x to evolve into 2.x, mutate Struts in a year of hard coding.
For a new UI layer, I'd start by looking at BeeHive
[http://incubator.apache.org/projects/beehive.html], and then consider
adopting Struts Menu, Struts Layout, and DisplayTag, porting them all
to Java 5 of course. [The Apache License works both ways, you know :)]
Then, I'd see about adding a 1.x compatability layer, as other
frameworks have done.
Since I would expect that there might be several non-committers
interested in helping, I would probably start the whiteboard at Struts
SourceForge, to make it easier to add people. It would mean incubating
the code later, but that would be worth it. I'd probably get a SVN
account at WUSH.NET, though, since I don't want to go back to CVS :)
But, as it stands, I'm working in ASP.NET through the end of the year
at least, and I don't know if I'm quite ready to C# by day and J5 by
night :)
HTH, Ted.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org