On 2/7/07, Brian Pontarelli <[EMAIL PROTECTED]> wrote:
1. Arrived at the Struts homepage and Struts 2 almost looked dead. No activity since October and no news or release information. Adding some news every few weeks will help keep new comers from bailing.
There is now a link to a browseable archive of User Mailing List to the top of the page, which is where a lot of the action happens :) Other than the same old, same old, there really hasn't been much news, except the XWork 2.0.0 release. I added a mention of that on a trial basis. But, I'm not sure if we want to announce other people's releases here or not. We've been creating test builds, but those were not ready for consumption by the general public, and citing them on the welcome page would be inappropriate. Happily, now that we have a stable XWork 2, the perpetual-beta state should change, and there will be more to announce!
2. Tried to download the release using the release navigation. Here I was presented with the fact that there was a 2.0.1 BETA, which is the latest development release. I spent the next while looking for the 2.0.0 release, figuring that was the last stable release. Couldn't find it obviously. The versioning currently looks to the outside to be a complete mess and it is very confusing and non standard. I would not release a patch version (major.minor.patch) until the major version is released. Therefore all the references to 2.0.1 through 2.0.6 are very confusing because these are not really final releases, but all BETAs. Plus, there is talk about 2.0.1 BETA and 2.0.4 and 2.0.6 and this is all quite confusing. I would probably fix the version into a standard alpha, beta, release candidate model. So, currently it would be something like 2.0.0-RC6 or the like working towards a final release of 2.0.0.
There's a new FAQ, with a link from the release page. * http://struts.apache.org/kickstart.html#releases Much of this is driven by the need to track changes to the codebase as it is being developed, live and direct. We also do not keep internal versions or secret roadmaps. What's on the web site is our one and only copy of everything. In practice, we don't do "final" releases, because in an active development environment, nothing is ever really final. A particular set of bits may be good enough for public consumption, but we reserve the right to make backwardly compatible changes to a release series, and to use the simplest possible versioning system: straight milestones that also represent tags in the code repository.
3. The documentation for Struts 2 contains references to zero configuration and the web.xml configuration file also contains this stuff. There are also a number of references to all the annotations. These are not available in the 2.0.1BETA JAR files and therefore I had a hard time using them ;) I did find them in the nightly snapshots, which aren't functional. I would keep the documentation inline with the latest beta and not the latest nightly snapshot. Anyone who wants bleeding edge will be willing to look at the source to see new stuff or build the latest snapshot docs themselves.
Once Struts 2 has a GA release, it will be archived on the site, along with all the others (Struts 1.35, Struts 1.2.9, et cetera, going all the way back to Struts 1.0). Then, the Struts 2 links will point that archive rather than the draft site. But, right now, it's a chicken and egg scenario. We haven't been publishing archives of betas on the web site, because, well, they're betas, and the full documentation for the beta is included in the download. Though, since most beta to end up being GA releases, perhaps we should start archiving the docs for a version as soon as it goes beta. In the meantime, what is on the site is the draft documentation for the nightly build, which will become the next milestone. Last week, that was Struts 2.0.5-DEV, and now it's Struts 2.0.6-DEV. Again, this is our one and only website. This is the site that we use to create the next release, and so it has to contain whatever we want the upcoming release to include. I wish we had the resources to maintain a second development site, but, AFAIK, everyone here is a volunteer, working in our unpaid, spare time.
4. The tutorials reference a hybrid of WebWork 2 configuration, classes, tags and files and Struts2 configuration and files. This would definitely be confusing for a newcomer. I would probably keep the tutorials using only struts2 configuration, classes, tags and files since that is what the latest beta release uses. I would in turn direct folks to the WebWork wiki for running WebWork 2 if they don't want to use the BETA release.
We adopted the WebWork documentation, along with the codebase. Our intention has been to replace references to WebWork classes with the corresponding reference to Struts 2 classes. Do you mean hybrid of Struts 2 and XWork classes? If so, we really don't know what to do about that. We depend on XWork as a base platform, the same way many frameworks depend on Java's HTTP.
5. There is really no getting started document for Struts2. It would be a bit of a stumbling block for a newcomer to have various JAR files in the distribution without any clue on which to use or what the 'struts2-all' jar contains. There should be a true Struts2 getting started document that contains a complete step by step to getting an application running. This could start with the CRUD made easy tutorial for WW2 and make it more complete for Struts2.
There's now a "Impatient?" link at the top of the Getting Started page pointing to the Bootstrap tutorial and MailReader Tour. The PlanetStruts site is down right now, but I'll take care of that after work tonight, before announcing the new beta to the user list. Yes, it would be great if someone ported the CRUD tutorial for WW2 and made it more complete for Struts 2. Any responsible person who files a CLA is welcome to work on the documentation. * http://www.apache.org/licenses/icla.txt
6. From the guide perspective, it is very difficult to figure out how to write actions. This information is buried in the Struts Configuration Elements guide and in the Action Configuration guide under that. In fact many of the top level and nested guides are a bit confusing and don't necessarily follow the standard path developers will take when getting started as well as when trying new things. The top level components should be items will be working on when building an application such as AJAX, Actions, Validation, etc. rather than items like "Struts Configuration Elements" Under these headings would be the configuration, the code, the interfaces, examples, etc. This will be how most folks are going to be using Struts2. They'll be creating an action, adding validation, handling action results, adding interceptors, etc. There are a number of guides that are on the right track.
Yes, we could really use some help here. We started with the WW wiki, and I think we've made some progress, but there is still much to be done. I did as much as I could over the summer, but unfortunately, it's not something I can spend much time on myself this year. Hopefully, someone will pickup the torch. Again, any responsible person who files a CLA is welcome to help with the documentation.
7. I had a bit of trouble figuring out how to grab the code because the link is on the main Struts page. Adding a link to the Struts2 page will help a lot.
We didn't do that at first since most of the development materials are under site, and so would not be in the Struts 2 documentation bundle. But, I copied the development menu over and made the links absolute. Thanks for the feedback!. It's already lead to several positive changes. -Ted. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]