In accordance with the guidelines of the Jakarta Commons subproject, I
would like to propose a "Bean Utilities" component to be hosted in the
Commons repository. The original code comes from Struts, but is
generally useful for dynamic manipulation of JavaBeans properties, and
has no dependencies on any other Struts code. The code will be
initially entered in an "unreleased" state until the remainder of the
JUnit tests (and some install/user guide docs) are completed. However,
because the code exists and works, I prefer to skip the stage of going
through the "sandbox" for the short amount of time needed to complete
these tasks and release the component on its own.
The attached ZIP file contains a PROPOSAL.html document that provides
more details about the proposal, plus the original code that is being
proposed for check in. The initial committers for this component will
be myself and Geir Magnusson.
The committers on the Commons subproject (as a whole) are eligible to
vote on whether they feel the proposed component fits the charter that
we agreed upon. Comments? Votes?
Craig
NOTE: The attached code can also be considered a proposal for
organization of the directories and build processes for Commons
components. We haven't talked about or agreed on these details, but I
find the enclosed organization to be quite useful, and it should scale
across the kinds of components we have been discussing. However, I'm
very open to suggested changes and improvements.
Note that there is no build.sh or build.bat script included. It is
assumed that you have $ANT_HOME/bin on your PATH (so that the "ant"
command is available), so you just run things like "ant dist" or "ant
test" instead of "./build.sh {target}". To provide for local
customization, the build.xml file looks for a "build.properties" file in
the local directory (beanutils), the Jakarta commons directory, and in
your user home. A "build.properties.sample" is included to identify the
external dependencies you might want to set -- you can copy this to
"build.properties" and customize it, but you should *not* check it in to
the CVS repository -- it will be uniquely configured by each individual
developer.
beanutils.zip