Notes on the Struts Gump Metadata
The gump metadata resides in SVN and can be updated by any committer - not just gump committers.
Apache Gump Home - for info on the gump concepts
2. Gump Metadata relevant to Struts in SVN
Gump metadata has been moved from CVS to SVN and now (Sept 2005) access to view the repository results in a 403 Forbidden using either of the urls below:
However it is still possible to checkout the gump module from SVN in the usual way and commit changes to it. The URL to checkout just the gump metadata (and not the whole gump project) is:
The main artifacts relevant to struts are the following files:
profile/gump.xml - Live Gump profile
project/struts.xml - Current Struts module using SVN
repository/struts-svn.xml - Struts SVN repository
There are currently (as of October 6, 2004) two lines in the gump.xml profile which directly relate to struts:
a pointer to the module defintion for Struts
a pointer to the repository definiton for Struts SVN
<profile name="gump"> .... .... <module href="project/struts.xml"/> .... .... <repository href="repository/struts-svn.xml"/> .... .... </profile>
This file defines the Struts SVN repository:
<repository name="struts-svn" type="svn"> .... .... </repository>
This has been refactored since last time I looked and there are now four projects defined - for some reason there are two taglib projects - both seem to do the same thing !?!
<module name="struts"> .... <svn repository="struts-svn" dir="current"/> .... <project name="struts-core"> ... </project> <project name="struts-taglib-from-packages"> ... </project> <project name="struts-taglib"> ... </project> <project name="struts-tiles"> ... </project> </module>
3. Adding a Packaged Jar
Recently the addition of the maven-taglib-plugin to the taglib's project.xml caused gump to fail. I thought I would document the steps needed to add a packaged jar to gump to resolve this kind of issue.
There are three steps to doing this (two which we can do and one which requires special kama)
set up a project descriptor
add the project to the gump profile
upload the jar to the gump machine (requires special kama for vmgump machine)
3.1 Project Definition
Add an xml file definition to gumps metadata/project directory. The one for the maven-taglib-plugin is called maven-taglib-plugin.xml and looks like the following...
<module name="maven-taglib-plugin"> <project name="maven-taglib-plugin"> <jar name="maven-taglib-plugin-1.4.jar"/> </project> </module>
3.2 Update the Gump Profile
Add entries to the gump's profile by editing the metadata/profile/gump.xml file:
Add a module entry, for example...
Add a package entry, for example...
<project name="maven-taglib-plugin" package="maven-taglib-plugin"/>
3.3 Upload the jar
The new dependency's jar needs to be uploaded to the vmgump machine. Someone with kama for the vmgump machine needs to do this - best way is to post a message to the Gump Mailing List.