See the Testing section of DesignDocumentation for specifics on each technique used maintain quality in the software. The main method of ensuring quality in the project is to use as much automation to attempt to catch defects during development, and to use preventive measures in the code to prevent defect from happening. The Testing section details most of tools used for testing.
For preventive measures, there is not a lot available to Java natively. The latest Java (1.4) finally has assertions, but they are fairly useless and it's not possible to remove them from the source code (which is really the whole point of assertions). What is needed is something like Design-by-Contract development. There is a tool iContract which adds contracts to source by reading special comments in the source code. It seems to work fairly well and might provide what is needed for preventive measures.
Finally, all of this testing will be automated using the Maven project to automate unit testing and integration testing (which will also verify the iContract usage). The goal of these QA methods is that they should be automated if possible.