Business Components for Java Applications



J2EE Servers

Connection pools

Development tools



Last modified

$Author: bastafidli $
$Date: 2006/09/25 15:08:32 $
$Revision: 1.41 $
$RCSfile: externals.html,v $

OpenSubsystems uses, integrates with or supports these commercial and open source projects and software systems:


Certified version: 1.6.5

"Apache Ant is a Java-based build tool. In theory, it is kind of like make, without make's wrinkles."

Bouncy Castle Crypto

Certified version: 1.3.2
License: Freely distributable

"The Bouncy Castle Crypto package is a Java implementation of cryptographic algorithms. The package is organised so that it contains a light-weight API suitable for use in any environment (including the newly released J2ME) with the additional infrastructure to conform the algorithms to the JCE framework."


Certified version: 0.9.1-pre6
License: GNU Lesser General Public License, Version 2.1

"c3p0 is an easy-to-use library for making traditional JDBC drivers "enterprise-ready" by augmenting them with functionality defined by the jdbc3 spec and the optional extensions to jdbc2."


Certified version: 2.0.5
License: GNU Lesser General Public License, Version 2.1

"CAROL is a library allowing to use different RMI implementations. Thanks to CAROL, a Java server application can be independent of RMI implementations and accessible simultaneously by RMI clients using different RMI implementations. CAROL allows to design, implement, compile, package, deploy, and execute distributed applications compliant with the RMI model."


Certified version: 4.1

"Checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. It automates the process of checking Java code to spare humans of this boring (but important) task. This makes it ideal for projects that want to enforce a coding standard."

Checkstyle Eclipse Plug-in

Certified version: 4.0.1

"With the Checkstyle Eclipse plug-in your code is constantly inspected for problems. Within the Eclipse workbench you are notified of problems via the task window and source code markers just as you would see with compiler errors or warnings."

Commons BeanUtils

Certified version: 1.7.0
License: Apache License, Version 2.0

"The BeanUtils Component contains a set of Java classes that provide static utility methods useful in manipulating Java classes that conform to the JavaBeans Specification naming patterns for bean properties in a dynamic fashion."

Commons CLI

Certified version: 1.0
License: Apache License, Version 2.0

"The CLI library provides a simple and easy to use API for working with the command line arguments and options."

Commons Collections

Certified version: 3.1
License: Apache License, Version 2.0

"The Java Collections Framework was a major addition in JDK 1.2. It added many powerful data structures that accelerate development of most significant Java applications. Since that time it has become the recognised standard for collection handling in Java. Commons-Collections seek to build upon the JDK classes by providing new interfaces, implementations and utilities."

Commons DBCP

Certified version: 1.2.1
License: Apache License, Version 2.0

"Many Jakarta projects support interaction with a relational database. Creating a new connection for each user can be time consuming (often requiring multiple seconds of clock time), in order to perform a database transaction that might take milliseconds. Opening a connection per user can be unfeasible in a publicly-hosted Internet application where the number of simultaneous users can be very large. Accordingly, developers often wish to share a "pool" of open connections between all of the application's current users. The number of users actually performing a request at any given time is usually a very small percentage of the total number of active users, and during request processing is the only time that a database connection is required. The application itself logs into the DBMS, and handles any user account issues internally.

There are several Database Connection Pools already available, both within Jakarta products and elsewhere. This Commons package provides an opportunity to coordinate the efforts required to create and maintain an efficient, feature-rich package under the ASF license."

Commons Digester

Certified version: 1.7
License: Apache License, Version 2.0

"The Digester package lets you configure an XML -> Java object mapping module, which triggers certain actions called rules whenever a particular pattern of nested XML elements is recognized. A rich set of predefined rules is available for your use, or you can also create your own. Advanced features of Digester include:"

- Ability to plug in your own pattern matching engine, if the standard one is not sufficient for your requirements.
- Optional namespace-aware processing, so that you can define rules that are relevant only to a particular XML namespace.
- Encapsulation of Rules into RuleSets that can be easily and conveniently reused in more than one application that requires the same type of processing.

Commons Discovery

Certified version: 0.2
License: Apache License, Version 2.0

"The Discovery Component is about discovering, or finding, implementations for pluggable interfaces. It provides facilities intantiating classes in general, and for lifecycle management of singleton (factory) classes.

Fundamentally, Discovery locates classes that implement a given Java interface. The discovery pattern, though not necessarily this package, is used in many projects including JAXP (SaxParserFactory and others) and commons-logging (LogFactory). By extracting this pattern, other projects can (re)use it and take advantage of improvements to the pattern as Discovery evolves.

Discovery improves over previous implementations by establishing facilities for working within managed environments. These allow configuration and property overrides without appealing to the global System properties (which are scoped across an entire JVM). "

Commons EL

Certified version: 1.0
License: Apache License, Version 2.0

"EL is the JSP 2.0 Expression Language Interpreter from Apache. The JSP Standard Tag Library (JSTL), version 1.0, introduced the concept of an Expression Language (EL), whose main goal is to provide page authors with an easy way to access and manipulate application data without requiring the use of scriptlets.

JSP 2.0 adopted the EL specification from JSTL, and expanded its scope: EL expressions are no longer limited to JSTL action attributes, but may be used in any standard or custom action attribute declared to accept a runtime expression. In addition, EL expressions may now also be used directly in template text outside of any actions. JSP 2.0 also added an important feature to the EL specification: EL functions, which allow page authors to invoke static methods in Java classes from EL expressions. Additionally, JSP 2.0 allows programmatic access and customization of the EL evaluator through a set of standard interfaces and abstract classes."

Commons File Upload

Certified version: 1.1
License: Apache License, Version 2.0

"The Commons FileUpload package makes it easy to add robust, high-performance, file upload capability to your servlets and web applications.

FileUpload parses HTTP requests which conform to RFC 1867, "Form-based File Upload in HTML". That is, if an HTTP request is submitted using the POST method, and with a content type of "multipart/form-data", then FileUpload can parse that request, and make the results available in a manner easily used by the caller. "

Commons Logging

Certified version: 1.0.4
License: Apache License, Version 2.0

"There is a great need for debugging and logging information inside of Commons components such as HTTPClient and DBCP. However, there are many logging APIs out there and it is difficult to choose among them.

The Logging package is an ultra-thin bridge between different logging libraries. Commons components may use the Logging API to remove compile-time and run-time dependencies on any particular logging package, and contributors may write Log implementations for the library of their choice."

Commons Pool

Certified version: 1.3
License: Apache License, Version 2.0

"Pool provides an Object-pooling API, with three major aspects:
1. A generic object pool interface that clients and implementors can use to provide easily interchangable pooling implementations.
2. A toolkit for creating modular object pools.
3. Several general purpose pool implementations."

Commons Validator

Certified version: 1.3
License: Apache License, Version 2.0

"A common issue when receiving data either electronically or from user input is verifying the integrity of the data. This work is repetitive and becomes even more complicated when different sets of validation rules need to be applied to the same set of data based on locale. Error messages may also vary by locale. This package addresses some of these issues to speed development and maintenance of validation rules."


"DB2 Universal Database is the database management system that delivers a flexible and cost-effective database platform to build robust on demand business applications. DB2 UDB further leverages your resources with broad support for open standards and popular development platforms like J2EE and Microsoft .NET. The DB2 UDB family also includes solutions tailored for specific needs like business intelligence and advanced tooling. Whether your business is large or small, DB2 UDB has a solution built and priced to meet your unique needs."

Setup DB2 for OpenSubsystems


Certified version: 3.1.2

"The Eclipse Project is an open source software development project dedicated to providing a robust, full-featured, commercial-quality, industry platform for the development of highly integrated tools. It is composed of three subprojects, Platform, JDT - Java development tools, and PDE - Plug-in development environment. The success of the Eclipse Platform depends on how well it enables a wide range of tool builders to build best of breed integrated tools. But the real vision of eclipse as an industry platform is only realized if these tools from different tool builders can be combined together by users to suit their unique requirements, in ways that the tool builders never even imagined. The mission of the Eclipse Project is to adapt and evolve the Eclipse Platform and associated tools to meet the needs of the tool building community and its users, so that the vision of eclipse as an industry platform is realized."

Enterprise Java Beans API

Certified version: 2.1

"Enterprise JavaBeans (EJB) technology is the server-side component architecture for the Java 2 Platform, Enterprise Edition (J2EE) platform. EJB technology enables rapid and simplified development of distributed, transactional, secure and portable applications based on Java technology."


License: Apache License, Version 2.0

"Geronimo is Apache's ASF-licensed J2EE server project. The aim of the project is to produce a large and healthy community of J2EE developers tasked with the development of an open-source, certified J2EE server."


Certified version:

"HSQLDB is the leading SQL relational database engine written in Java. It has a JDBC driver and supports a rich subset of ANSI-92 SQL (BNF tree format) plus SQL 99 and 2003 enhancements. It offers a small (less than 100k in one version for applets), fast database engine which offers both in-memory and disk-based tables and supports embedded and server modes. Additionally, it includes tools such as a minimal web server, in-memory query and management tools (can be run as applets) and a number of demonstration examples.

The product is currently being used as a database and persistence engine in many Open Source Software projects and even in commercial projects and products. In it's current version it is extremely stable and reliable. It is best known for its small size, ability to execute completely in memory, its flexibility and speed."

Setup HSQLDB for OpenSubsystems

High-speed ObjectWeb Logger

Certified version: 1.0
License: The BSD License

"HOWL is a logger implementation providing features required by the ObjectWeb JOTM project, with a public API that is generally usable by any Transaction Manager. HOWL uses unformatted binary logs to maximize performance and specifies a journalization API with methods necessary to support JOTM recovery operations.

HOWL is intended to be used for logging of temporary data such as XA transaction events. HOWL is not a replacement for traditional log kits such as LOG4J and J2SE Logging."

J2EE Connector API

Certified version: 1.5

"The J2EE Connector architecture provides a Java technology solution to the problem of connectivity between the many application servers and today's enterprise information systems (EIS)."

Sun Microsystem J2SE

Certified version: 1.4.2

"Java Platform, Standard Edition (J2SE) provides a complete environment for applications development on desktops and servers and for deployment in embedded environments. It provides the basis for security, database connectivity and more. Desktop Java enables you to write rich, highly interactive client software. J2SE also serves as the foundation for the Java 2 Platform, Enterprise Edition (J2EE) and Java Web Services."

Jakarta ORO

Certified version: 2.0.8
License: Apache License, Version 2.0

"The Jakarta-ORO Java classes are a set of text-processing Java classes that provide Perl5 compatible regular expressions, AWK-like regular expressions, glob expressions, and utility classes for performing substitutions, splits, filtering filenames, etc. This library is the successor to the OROMatcher, AwkTools, PerlTools, and TextTools libraries originally from ORO, Inc. "

Java Excel API

"Java Excel API - open source Java API which allows Java developers to read Excel spreadsheets and to generate Excel spreadsheets dynamically. In addition, it contains a mechanism which allows java applications to read in a spreadsheet, modify some cells and write out the new spreadsheet.

This API allows non Windows operating systems to run pure Java applications which can both process and deliver Excel spreadsheets. Because it is Java, this API may be invoked from within a servlet, thus giving access to Excel functionality over internet and intranet web applications."

Java Transaction API

Certified version: 1.0.1B

"JTA specifies standard Java interfaces between a transaction manager and the parties involved in a distributed transaction system: the resource manager, the application server, and the transactional applications."

Java Transaction Service API

Certified version: 1.0

"Java Transaction Service (JTS) specifies the implementation of a Transaction Manager which supports the Java Transaction API (JTA) 1.0 Specification at the high-level and implements the Java mapping of the OMG Object Transaction Service (OTS) 1.1 Specification at the low-level. JTS uses the standard CORBA ORB/TS interfaces and Internet Inter-ORB Protocol (IIOP) for transaction context propagation between JTS Transaction Managers."

JBoss Application Server

"JBoss Application Server is the #1 most widely used Java application server on the market. A J2EE certified platform for developing and deploying enterprise Java applications, Web applications, and Portals, JBoss Application Server provides the full range of J2EE 1.4 features as well as extended enterprise services including clustering, caching, and persistence."

Setup JBoss AS for OpenSubsystems


Certified version: 5.1.10
License: Apache License, Version 2.0

"Jetty is a 100% Java HTTP Server and Servlet Container. This means that you do not need to configure and run a separate web server (like Apache) in order to use java, servlets and JSPs to generate dynamic content. Jetty is a fully featured web server for static and dynamic content. Unlike separate server/container solutions, this means that your web server and web application run in the same process, without interconnection overheads and complications. Furthermore, as a pure java component, Jetty can be simply included in your application for demonstration, distribution or deployment. Jetty is available on all Java supported platforms."

Jetty Launcher

Certified version: 1.3

"JettyLauncher is, as the title suggests, a plug-in that adds support for running web application in Jetty to the Eclipse platform."


"JOnAS is the Open Source implementation by ObjectWeb of the J2EE specification. JOnAS is a pure JavaTM implementation of this specification that relies on the JDK. JOnAS is part of the ObjectWeb Open Source initiative, which was launched in collaboration with several partners including Bull, the France Telecom R&D division and INRIA."

JOnAS provides support of J2EE 1.4 including EJB 2.1, JTA 1.0.1, JDBC 3.0, J2EE CA 1.5, JMX 1.2, JNDI 1.2.1, JMS 1.1, JavaMail 1.3, Servlet 2.4, JSP 2.0, JAAS 1.0, JACC 1.0, Web Services 1.1, JAX-RPC 1.1, SAAJ 1.2, JAXR 1.0, J2EE Management 1.0, JAF 1.0, JAXP 1.2 specifications. JOnAS is architectured in terms of services."

Setup JOnAS for OpenSubsystems


Certified version: 2.0.10 patched
License: BSD-style license

"JOTM is an open source transaction manager implemented in Java. It supports several transaction models and specifications providing transaction support for clients using a wide range of middleware platforms (J2EETM, CORBA, Web Services). For more than four years, JOTM has been the transaction manager of JOnAS, a J2EE server. In April 2002, the ObjectWeb Consortium decided to extract the transaction manager from JOnAS and make it one of its "key projects" promoting interoperability and collaboration between ObjectWeb projects and other open source initiatives that require transactions.


Certified version: 1.2

"jTDS is an open source 100% pure Java (type 4) JDBC 3.0 driver for Microsoft SQL Server (6.5, 7, 2000 and 2005) and Sybase (10, 11, 12). jTDS is based on FreeTDS and is currently the fastest production-ready JDBC driver for SQL Server and Sybase. jTDS is 100% JDBC 3.0 compatible, supporting forward-only and scrollable/updateable ResultSets, concurrent (completely independent) Statements and implementing all the DatabaseMetaData and ResultSetMetaData methods."


Certified version: 3.8.2
License: Common Public License Version 1.0

"JUnit is an open source Java testing framework used to write and run repeatable tests. It is an instance of the xUnit architecture for unit testing frameworks.

JUnit features include:
- Assertions for testing expected results
- Test fixtures for sharing common test data
- Test suites for easily organizing and running tests
- Graphical and textual test runners<

JUnit was originally written by Erich Gamma and Kent Beck."


Certified version: 1.11 patched
License: Public Domain

"JUnitEE provides a TestRunner which outputs HTML and a servlet which can be used as an entry point to your test cases. Building your test harness as a standard J2EE web application means:

- Your tests are packaged conveniently into a .war file which can easily be moved between servers; you can leave the .war file in the main .ear file and simply avoid enabling the test web application on the production server.
- Your test classes will be dynamically reloaded by the app server (assuming your server supports this).
- Your test cases look just like your production code, and can use the same beans (or whatever) you use as a facade for your EJBs.


"MaxDB by MySQL is a re-branded and enhanced version of SAP DB, SAP AG's open source database. MaxDB is a heavy-duty, SAP-certified open source database that offers high availability, scalability and a comprehensive feature set. MaxDB complements the MySQL database server, targetted for large mySAP ERP environments and other applications that require maximum enterprise-level database functionality."

Setup MaxDB for OpenSubsystems

MS SQL Server

"SQL Server 2000 exceeds dependability requirements and provides innovative capabilities that increase employee effectiveness, integrate heterogeneous IT ecosystems, and maximize capital and operating budgets. SQL Server 2000 provides the enterprise data management platform your organization needs to adapt quickly in a fast-changing environment.With the lowest implementation and maintenance costs in the industry, SQL Server 2000 delivers rapid return on your data management investment. SQL Server 2000 supports the rapid development of enterprise-class business applications that can give your company a critical competitive advantage. Benchmarked for scalability, speed, and performance, SQL Server 2000 is a fully enterprise-class database product, providing core support for Extensible Markup Language (XML) and Internet queries."

Setup MS SQL Server for OpenSubsystems


"The MySQL database server is the world's most popular open source database. Its architecture makes it extremely fast and easy to customize. Extensive reuse of code within the software and a minimalistic approach to producing functionally-rich features has resulted in a database management system unmatched in speed, compactness, stability and ease of deployment. The unique separation of the core server from the storage engine makes it possible to run with strict transaction control or with ultra-fast transactionless disk access, whichever is most appropriate for the situation."

Setup MySQL for OpenSubsystems


"- Enterprise Edition - Industry-leading performance,scalability, and reliability for OLTP, decision support, and content management.
- Standard Edition - Four-processor version of Oracle Database, including full clustering support
- Standard Edition One - Two-processor version of Standard Edition at an attractive entry-level price
- Personal Edition - Full-featured version for individuals, compatible with the entire Oracle Database family
- Lite Edition - Complete software for building, deploying, and managing mobile database applications"

Setup Oracle for OpenSubsystems


Certified version: 1.3
License: Apache-style license

"P6Spy is an open source framework to support applications that intercept and optionally modify database statements."


"PostgreSQL is a powerful, open source relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness. It runs on all major operating systems, including Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, SunOS, Tru64), BeOS, and Windows. It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL92 and SQL99 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video. It has native programming interfaces for C/C++, Java, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation."

Setup PostgreSQL for OpenSubsystems


Certified version: 0.9.0 RC2
License: Apache-style license

"A Java SQL Driver that provides a connection pool wrapper around another Driver of your choice. Very simple to migrate existing code. Fully configurable. Fast, mature and robust. Transparently adds connection pooling to your existing JDBC driver."


"SAP AG has transferred its SAP DB database system to an Open Source system. The SAP DB database system has been offered to users of solutions as a free-of-charge alternative to database systems from other vendors since 2000. In accordance with the Roadmap published in October 2000, the source code for the database was made available on schedule at the end of April 2001. Since then, SAP DB can be used by any organization or any person free-of-charge and without restrictions under a GNU General Public License (GPL)."

"Due to its modern architecture, SAP DB provides a high level of performance, scalability and robustness. In this way, the database can fulfill the performance demands of application environments with thousands of concurrent active users and very large data volumes. At the center, the multithread/multi-server architecture ensures a high degree of scalability with sparing handling of server resources. SAP DB fits flexibly into modern server architectures such as multi-processor systems or cluster configurations, and uses the advantages - for example, where high availability is concerned - without costly configuration. Due to the customizable architecture, SAP DB is suitable as a central database system both for three-tier and two-tier client-server environments."

Setup SAP DB for OpenSubsystems


Certified version: 1.2.7 patched
License: Apache License, Version 2.0

"The goal of this project is to provide an open source framework for building Java web applications.

The core of the Struts framework is a flexible control layer based on standard technologies like Java Servlets, JavaBeans, ResourceBundles, and XML, as well as various Jakarta Commons packages. Struts encourages application architectures based on the Model 2 approach, a variation of the classic Model-View-Controller (MVC) design paradigm.

Struts provides its own Controller component and integrates with other technologies to provide the Model and the View. For the Model, Struts can interact with standard data access technologies, like JDBC and EJB, as well as most any third-party packages, like Hibernate, iBATIS, or Object Relational Bridge. For the View, Struts works well with JavaServer Pages, including JSTL and JSF, as well as Velocity Templates, XSLT, and other presentation systems.

The Struts framework provides the invisible underpinnings every professional web application needs to survive. Struts helps you create an extensible development environment for your application, based on published standards and proven design patterns."

The Standard Widget Toolkit

Certified version: 3.1.2
License: Eclipse Public License, Version 1.0

"SWT is an open source widget toolkit for Java designed to provide efficient, portable access to the user-interface facilities of the operating systems on which it is implemented."

Sybase Adaptive Server Enterprise

"Sybase Adaptive Server Enterprise is a powerful data management platform for high performance business applications. The latest version of Sybase ASE makes it even easier to deploy and maintain, with enhanced operational scalability to support tougher workloads with fewer resources. Sybase ASE provides better security integration with corporate authentication systems, improved operational scalability including a smart SQL statement cache, advanced Web services support and improved scalability for enterprise-class applications on 32 and 64-bit Linux."

Setup Sybase ASE for OpenSubsystems


Certified version: 1.3
License: The BSD License

"Tag Library Documentation Generator is a utility for automatically generating javadoc-style documentation for JavaServer Pages (JSP) Technology Tag Libraries. It accepts a set of tag libraries as input, and generates a set of HTML files as output. It can also be used to generate tag library documenation for JavaServer Faces UI components. Included in the output is a full description of each defined tag library, the tags contained within those tag libraries, and how to use those tags. "

Web Tools

Certified version: 1.0

"The Eclipse Web Tools Platform (WTP) project extends the Eclipse platform with tools for developing J2EE Web applications. The WTP project includes the following tools: source editors for HTML, Javascript, CSS, JSP, SQL, XML, DTD, XSD, and WSDL; graphical editors for XSD and WSDL; J2EE project natures, builders, and models and a J2EE navigator; a Web service wizard and explorer, and WS-I Test Tools; and database access and query tools and models."

WebLogic Application Server

"As a category pioneer and longtime leader, BEA WebLogic Server implements the J2EE 1.4 and J2SE 5.0 specifications and includes a time-tested, proven foundation upon which the rest of the platform operates. When coupled with the BEA JRockit Java Virtual Machine the results are unsurpassed performance and reliability on widely adopted industry-standard hardware systems.

BEA WebLogic Server includes features such as clustering of multiple servers together for the most demanding enterprise environments. This helps meet availability, scalability and performance needs. Load balancing, caching, server migration and failover are also built in to the product to ensure the smooth servicing of user clients. In a world where natural disasters, power outages and other upheavals can occur at anytime, it's comforting to know that WebLogic Server provides a multitude of ways to minimize the effect of such disruptions."

Setup WebLogic for OpenSubsystems

WebSphere Application Server

"IBM WebSphere Application Server, is the foundation of the IBM WebSphere software platform, and a key building block for a Service Oriented Architecture (SOA). As the premier Java 2 Enterprise Edition (J2EE) and Web services application platform, WebSphere Application Server delivers a high performance transaction engine that can help you build, run, integrate and manage dynamic, On Demand Business applications.

As the core configuration of the WebSphere Application Server family, WebSphere Application Server is optimized to ease administration in a scalable, single-server deployment environment. This configuration is recommended for organizations that need to build and deploy stand-alone, departmental applications and Web services, but don't require failure bypass or workload-distribution options. WebSphere Application Server supports an unparalleled range of platforms and can be deployed on servers of any size. New and enhanced features deliver the flexible, open, resilient application infrastructure you need for an SOA."

Setup WebSphere for OpenSubsystems


Certified version: 1.5.0 patched
License: GNU Lesser General Public License, Version 2.1

"XAPool is an open source XA Pool! It allows to pool objects, JDBC connections and XA connections. It comes from Enhydra application server from Lutris. Now the project is hosted by the ObjectWeb consortium and managed by Experlog."


Certified version: 1.2.3

"XDoclet is an open source code generation engine. It enables Attribute-Oriented Programming for java. In short, this means that you can add more significance to your code by adding meta data (attributes) to your java sources. This is done in special JavaDoc tags."


Certified version: 2.8.0
License: Apache License, Version 2.0

"Xerces2 is the next generation of high performance, fully compliant XML parsers in the Apache Xerces family. This new version of Xerces introduces the Xerces Native Interface (XNI), a complete framework for building parser components and configurations that is extremely modular and easy to program. The Apache Xerces2 parser is the reference implementation of XNI but other parser components, configurations, and parsers can be written using the Xerces Native Interface. For complete design and implementation documents, refer to the XNI Manual."