
|
POWERED BY
|
Tomcat is our java servlet container. We use it because it's free, we know how to use it, and we've had no significant problems with it.
|
|
Oracle, www.oracle.com
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Oracle is the database standard within the Northwestern Bioinformatics Core.
|
|
|
We use Spring as a Dependency Injection/Inversion of Control lightweight container, as a unit
testable and simpler alternative to EJBs. We also have begun using Spring MVC for our web layer,
and we use Spring's Hibernate and JDBC wrappers to simplify our database access code.
|
|
Hibernate, Object/Relational Mapping and Transparent Object Persistence for Java and
SQL Databases, www.hibernate.org
version 2.1.6
Hibernate is our object/relational mapping (ORM) tool, for mapping between java business objects
and the database tables that store them.
|
|
|
Part of the OpenSymphony project, "Quartz is
an open source job scheduling system that can be integrated with, or used along side virtually
any J2EE or J2SE application." We use Quartz to run various scheduled jobs associated with the
site (nightly data imports, etc.).
|
|
|
We use ANTLR to define and parse a grammar for mutant line searches.
|
|
|
Automated unit testing with JUnit is an integral part of our development process.
|
|
|
We have recently begun using FitNesse to write and run automated acceptance/functional/integration
tests for the site.
|
|
Others
Velocity: for formatting automated email messages
iText: for PDF invoice generation
<display:*> tag library,
Log4J,
Other Jakarta: Commons, Taglibs (Input), ORO
|
|
PHASING OUT
|
Because we find it easier to unit test code developed using Spring MVC than Struts, all new web layer code uses Spring MVC, and we are slowly porting existing web layer code from Struts to Spring.
|
SOURCE CODE
If you would like to see how all these libraries work together, you may
download the source code. Neuromice.org's source is released under
the GNU General Public License.
|