2011/08/05 - Jakarta Cactus has been retired.

For more information, please explore the Attic.


The Cactus Project is an Open Source volunteer project under the auspices of the Apache Software Foundation (ASF), and, in harmony with the Apache webserver itself, it is released under a very open license. This means there are many ways to contribute to the project (coding, documenting, answering questions, proposing ideas, reporting bugs, suggesting bug-fixes, etc..).

To begin with, we suggest you to subscribe to the Cactus mailing list.

Then you can download the latest Cactus release or checkout the latest code from SVN.

Last, you can check the todo list and jump in.

Help Wanted Here

The rest of this document is mainly about contributing new or improved code and/or documentation, but we would also be glad to have extra help in any of the following areas:

  • Answering questions on the Cactus mailing list; there is often a problem of having too many questioners and not enough experts to respond to all the questions.
  • Testing Cactus (especially its less-frequently-used features) on various configurations and reporting back.
  • Debugging - producing reproducable test cases and/or finding causes of bugs (bugs can be found in the bug database).
  • Specifying/analysing/designing new features for Cactus (If you wish to get involved with this, please join the Cactus mailing list, install and try out Cactus and read some of the mailing list archives. In addition, please have a look at the Goals page which gives a vision of where Cactus is heading and provide some high level todos.
  • Providing automated Ant scripts for new servlet engines/application servers. The list of supported servers can found in the features list.
  • ... and there is just one other thing - don't forget to tell everyone who asks how great Cactus is! ;-) The more people that know about and start to use Cactus, the larger the pool of potential contributors there will be.
Thank you very much.

Contributions of Code and Documentation

We are starting to use an informal system for accepting contributions to Cactus. The process varies depending on whether the contribution is a modification (i.e. patch) or a fairly standalone item, and whether you have commit access (committers have been granted access by a vote of confidence, so they are assumed to be trustworthy enough to make changes directly in SVN. If you submit many good patches, you may be nominated as a committer yourself!) If your contribution requires changing more than a few lines of Cactus (code or documentation), then it counts as a patch. If you have a patch and would like to see it incorporated into the Cactus distribution, take note of the Licensing Requirements listed below, and then create a JIRA issue and attach to it a unified diff (svn patch) of your changes against the latest SVN version of the code (SVN HEAD).

Licensing Requirements for the Cactus Distribution

To avoid legal problems, the Apache Project Management Committee (PMC) have agreed on a policy for under what licensing code can be accepted into Apache projects:
  • Source code files must be under the Apache license and must have copyright assigned to the Apache Software Foundation.
  • Jar files need only be released under a license that permits free redistribution and does not cover new files added to the jar/library (so the GPL and LGPL are not allowed, but MPL and Apache licenses are, for example).
By submitting a patch, you signify your understanding and acceptance of these conditions - like most open source projects , we do not have the resources nor the inclination to obtain signed statements from all contributors!