Open Source Tools for Java
OpenSource.org puts it simply: "When programmers can read, redistribute, and modify the source code for a piece of software, the software evolves. People improve it, people adapt it, people fix bugs. And this can happen at a speed that, if one is used to the slow pace of conventional software development, seems astonishing."Web Services and SOA
Axis
Beehive
Apache Axis is a base on which to implement Java Web Services.
Beehive
BEA proposed Beehive to establish the first cross-container, ease-of-use
programming model and framework for J2EE- and SOA-based applications.
It is an incubator project within Apache.
J2EE Application Servers
All three J2EE application servers are expected to become J2EE-compliant
certified by the end of 2004.
Geronimo
JBoss
JOnAS
Geronimo
Geronimo is Apache's open source J2EE application server.
JBoss
An open-source alternative to commercial Java application servers.
JOnAS
ObjectWeb JOnAS is an open source J2EE application server.
Servlet Containers
Jetty
Tomcat
Jigsaw
Jetty is an HTTP Server and Servlet Container. Integrated
with J2EE application servers such as Geronimo, JBoss, and
JOnAS.
Tomcat
Jakarta Tomcat is a servlet container.
Jigsaw
W3C's Jigsaw is a Java-based web server with support for
the Java Servlet API Specification 2.2.
Databases
Derby
Previously known as IBM's Cloudscape database, a full-featured,
enterprise-ready Java database donated to Apache.
Operating Systems
Solaris
Sun to contribute Solaris source code to OSI (Open Source Initiative).
Buildable source code for Solaris will be available
in the second quarter of 2005 under the Common
Development and Distribution License (CDDL).
Persistence, Binding, OR Mapping
Castor
Hibernate
OJB
Perseus
Zeus
Castor is a data binding framework for Java.
It provides Java-to-XML binding, Java-to-SQL persistence, and more.
Hibernate
Hibernate is an object/relational persistence and query service for Java.
OJB
Apache Object/Relational Bridge (OJB) is an object relational
mapping tool that enables transparent persistence for
Java Objects against relational databases.
It integrates with J2EE app servers and
supports JNDI lookup of datasources.
Perseus
ObjectWeb Perseus is a component-based persistence framework that solves
issues such as cache management, concurrency management (even distributed),
transaction management, storage management, logging management. Java and JCA.
Zeus
ObjectWeb Zeus is a code generator for Java-to-XML data binding.
Testing
Cactus
Log4j
EMMA
JUnit
TestMaker
Apache Cactus is a test framework for unit testing server-side java
code, such as servlets, EJBs, tag libs, and more.
Log4j
A reliable, fast and extensible logging library for Java.
EMMA
EMMA is a toolkit for measuring and reporting Java code coverage.
Works in any Java 2 JVM.
JUnit
JUnit is a regression testing framework.
TestMaker
Free tool to test web-based applications, developed by Frank Cohen.
Java and .NET Integration
DotNetJ
ObjectWeb and OverOne DotNetJ is a tool that gives .NET applications the
ability to use Java components or J2EE applications
as if they were .NET assemblies.
Business Applications
Bonita
Cayambe
CentraView CM and CRM
CHEF
Enhydra JaWE
Entrada
Magnolia, CMS
OCGE
OSMQ
Velocity
Zen
ObjectWeb Bonita is a J2EE workflow system.
Cayambe
SourceForge Cayambe is a J2EE E-Commerce Solution using
Java Servlets, JSP, and EJB.
CentraView CM and CRM
CentraView open source provides a browser-based Contact Management system and
Customer Relationship Management (CRM) functionality using a J2EE
application running on Apache Tomcat and JBoss, and using MySQL for the database.
CHEF
The CompreHensive collaborativE Framework (CHEF) project is
developing a flexible environment for supporting distributed
learning and collaborative work. The primary technologies include
Apache Jetspeed, Velocity, and Turbine.
Enhydra JaWE
Enhydra JaWE (Java Workflow Editor) is the first open source graphical
Java workflow process editor fully according to WfMC specifications
supporting XPDL as its native file format and LDAP connections.
Try integrating with the open source workflow engine Enhydra Shark.
Entrada
Entrada is a light-weight, application hosting framework based on
jEdit and is licensed under the GPL.
Magnolia, CMS
Magnolia is a open-source content-management-system (CMS) that supports
JSR-170. JDK 1.4.1 or later required.
OCGE
OCGE (Open Grid Computing Environments) is open source portal software
built on top of Apache Jetspeed.
OSMQ
Open Source Message Queue is a Java asynchronous message broker
and message middleware framework developed by MQue Systems
and available under the GNU public license.
Velocity
Velocity is a Java-based template engine, including template services for Turbine.
Zen
Zen is middleware that is compliant with most of the features
defined in the CORBA 2.6 specification.
ZEN is implemented using the Real-time Specification of Java (RTSJ).
Hosted at University of California, Irvine.
Search Engines
Developer Tools
ActiveCluster
Ant
AppFuse
Barracuda
Crossbar
Eclipse
Espresso
DotNetJ
Forrest
Groovy
JAC
JetSpeed
JOTM
Lomboz
Maven
MX4J
Pollinate
ProGuard
Spring
Struts
Tapestry
Turbine
XDoclet
ActiveCluster is an API for writing cluster-based applications.
Ant
Apache Ant is a Java-based build tool.
AppFuse
AppFuse is an application for starting your web applications.
Barracuda
ObjectWeb Barracuda is an MVC framework.
Crossbar
Crossbar is a collection of example applications written for
JavaServer Faces (JSF) and Java Server Pages (JSP).
Useful for web-based reporting applications.
Eclipse
Eclipse is an open source and extensible IDE.
Espresso
First released in June 1999, Expresso is an open standards-based,
enterprise J2EE architectural framework that integrates and builds
on Ant, Bouncycastle, Cactus, Commons, Log4J, ORO, Oswego Concurrent,
JUnit, Struts, Tiles, Velocity, Xalan, Xerces, and more. The framework
relies on more than 65k lines of code in approximately 600 classes.
Developed and supported by Jcorporate.
DotNetJ
ObjectWeb and OverOne DotNetJ is a tool that gives .NET applications
the ability to use Java components or J2EE applications
as if they were .NET assemblies.
Forrest
Apache Forrest is an XML standards-oriented project documentation
framework based on Apache Cocoon.
It is useful for publishing documentation.
Groovy
Groovy is an agile dynamic language for the JVM.
JAC
ObjectWeb JAC (Java Aspect Components) is a framework for
aspect-oriented programming in Java.
JetSpeed
Apache JetSpeed aids in portal development and the
integration of data from XML, RSS or SMTP.
It supports templates and content publication from
Cocoon, WebMacro and Velocity.
JOTM
Open source implementation of the JTA APIs. Used
in JOnAS and Geronimo.
Lomboz
ObjectLearn Lomboz is a free eclipse plugin for the J2EE developers
and integrated with Jasper, XDoclet, Axis and Ant.
Maven
Maven is a Java project management and project comprehension tool.
MX4J
Open source implementation of the
Java(TM) Management Extensions (JMX)
and of the JMX Remote API (JSR 160).
Pollinate
Pollinate's goal is to build an eclipse-based IDE and
toolset that leverages the open source
Apache Beehive application framework.
ProGuard
SourceForge ProGuard is a free Java class file shrinker and obfuscator.
It can detect and remove unused classes, fields, methods, and attributes.
Useful when developing wireless apps.
Spring
Spring is a Java/J2EE application framework with Hibernate support
and a web MVC framework. More information also available at
springframework.org
Struts
Apache Struts is an open source framework for building web applications.
Tapestry
Jakarta Tapestry is an alternative to scripting environments
such as JavaServer Pages or Velocity.
Turbine
A model-view-controller framework for constructing web applications
with either Velocity or JavaServer Pages.
XDoclet
XDoclet is a code generation engine that enables AOP for java.
Free UML Tools
ArgoUML
Jude
Omondo EclipseUML Free Edition
Umlet
Violet
Import and export Java source. Exports/imports XMI files,
so you can, for example, import a Rational
Rose
model (you lose the formatting, though).
UML 1.3. Source code under BSD license.
Supports multiple languages.
Jude
Import and export Java source.
Import just makes the classes available for modeling.
Supports UML 1.4.
Omondo EclipseUML Free Edition
An Eclipse plug-in for UML modeling.
Eclipse Team support.
Can create class and sequence diagrams from Java bytecode.
Can model EJBs and servlets.
Free version does not support Eclipse 3.0.
UML 1.4. XMI support.
Umlet
Not tested on Linux.
Supports Eclipse 3.0.
Violet
Draws simple UML diagrams.
Bare-bones program with small learning curve:
no XMI, no reverse engineering, no validity checking.
Source code available under GPL.
XML
Castor
Cocoon
Forrest
WiX
Zeus
Castor is a data binding framework for Java.
It provides Java-to-XML binding,
Java-to-SQL persistence, and more.
Cocoon
Apache Cocoon is an XML publishing framework.
Forrest
Apache Forrest is an XML standards-oriented project documentation
framework based on Apache Cocoon.
Useful for publishing documentation.
WiX
Microsoft's first open source project launched in April 2004.
WiX stands for Windows Installer XML and is used to build Windows
installation packages from XML source code.
Zeus
ObjectWeb Zeus is a code generator for Java-to-XML data binding.
Mobile Java
Antenna
ProGuard
SourceForge Antenna provides a set of Ant tasks suitable
for developing wireless Java applications targeted at the
Mobile Information Device Profile (MIDP).
ProGuard
SourceForge ProGuard is a free Java class file shrinker and obfuscator.
It can detect and remove unused classes, fields, methods, and attributes.
Useful when developing wireless apps.
Science and More
EMBOSS
Piccolo
European molecular biology open source software suite for sequence analysis.
Within EMBOSS, you will find around 100 programs.
EMBOSS-Jemboss is the Java-based GUI.
Piccolo
Piccolo is provided by the Human-Computer Interaction Lab
at the University of Maryland.
It allows zooming user interfaces.











