|  |  |  | License Codehaus OpenEJB OpenJMS OpenORB Tyrex

Old releases
General
Release 1.3
Release 1.3rc1
Release 1.2

Main
Home
About
Features
Download
Dependencies
Reference guide
Publications
JavaDoc
Maven 2 support
Maven 2 archetypes
DTD & Schemas
Recent HTML changes
News Archive
RSS news feed
Project Wiki

Development/Support
Mailing Lists
SVN/JIRA
Contributing
Support
Continuous builds
Prof. services

Related projects
Spring ORM support
Spring XML factories
WS frameworks

XML
XML

XML Code Generator
XML Code Generator

JDO
Introduction
First steps
Using JDO
JDO Config
Types
JDO Mapping
JDO FAQ
JDO Examples
JDO HOW-TOs
Tips & Tricks
Other Features
JDO sample JAR

Tools
Schema generator

Advanced JDO
Caching
OQL
Trans. & Locks
Design
KeyGen
Long Trans.
Nested Attrs.
Pooling Examples
LOBs
Best practice

DDL Generator
Using DDL Generator
Properties
Ant task
Type Mapping

More
The Examples
3rd Party Tools
JDO Tests
XML Tests
Configuration

About
License
User stories
Contributors
Marketplace
Status, Todo
Changelog
Library
Contact
Project Name

## 3rd-party product dependencies

Documentation Author(s):
Werner Guttmann

Introduction
Run-time dependencies
Castor XML
Castor XML - schema support files
Castor XML - code generator
Ant task definition for the Castor XML code generator
Castor JDO
Castor JDO samples
Castor DSML
Compile-time dependencies

## Introduction

This document provides information about run-time and compile-time dependencies to 3rd-party frameworks/tools. Following this information, you'll be able to download all required JARs and configure your devlopment/run-time environment according to your needs.

We strogly encourage you, though, to consider using Maven 2 for your build management (process). Information of how to use Castor with Maven 2 is provided here.

## Run-time dependencies

As many other frameworks, Castor internally makes use of various existing frameworks and products to implement its functionality. As such, in order to function properly, Castor requires that these tools are available at run-time.

The following table(s) enlists 3rd-party products required at run-time, though many of these JARs are required only if the feature associated with that JAR is used at all.

### Castor XML

Name | Minimal version | Binary | Required/Optional
Apache Commons Project - Logging | 1.1 | Download | Required
Apache Logging - Log4J | 1.2.13 | Download | Optional
XML APIs | 1.3.03 | Download | Required for Java 1.4 and below only
Apache Xerces | Any version higher than 1.4.0 | n/a | Required for Java 1.4 and below only

Please check this page for details about the use of XML parsers with Castor and its requirements.

You'll require the following (optional) JARs, if you plan to use XML validation based on regular expressions:

Name | Version | Binary | Required/Optional
Apache Jakarta ORO | 2.0.8 | Download | Optional
Apache Jakarta RegExp | 1.5 | Download | Optional

Please note that the version numbers given specify the minimal version Castor requires. As such, please feel free to use any higher release numbers at your convenience. If any issues arise as a result of switching towards a higher release number, please report any such issues through the mailing lists, or raise a Jira issue.

### Castor XML - schema support files

The Castor XML schema support internally uses Castor XML for processing the XML schemas to be processed, and thus has the same dependencies as enlisted above.

### Castor XML - code generator

The Castor XML code generator internally uses Castor XML and Castor XML schema support for processing the XML schemas to be processed, and thus has the joined dependencies of those two packages.

In addition to the dependencies for the Castor XML code generator, the Castor XML code generator will require additional dependencies as enlisted below:

Name | Minimal version | Binary | Required/Optional | Version
Apache Velocity - template engine | 1.5 | Download | Optional | 1.2 and later
Apache Jakarta - commons-collections | 3.1 | Download | Optional | 1.2 and later
Apache Jakarta - commons-lang | 2.1 | Download | Optional | 1.2 and later

These dependencies are optional as the use of Velocity-based templates for XML code generation is optional with release 1.2 and higher. Once you enable this mode, all dependencies given turn required.

Please refer to here for details on these code generation modes.

### Ant task definition for the Castor XML code generator

The Ant task definition for the Castor XML code generator internally uses the Castor XML code generator, and thus has the same dependencies as enlisted above.

In addition to the dependencies for the Castor XML code generator, the Ant task definition for the Castor XML code generator will require additional dependencies as enlisted below:

Name | Minimal version | Binary | Required/Optional
Apache Ant (Core) - build tool | 1.6.5 | Download | Required

### Castor JDO

Castor JDO internally uses Castor XML and Castor XML schema support for processing the XML mapping file and thus has the same dependencies as enlisted above.

As such, in addition to the dependencies for Castor XML, Castor JDO will require additional dependencies as enlisted below:

Name | Minimal version | Binary | Required/Optional
CGLIB | 2.0.2 | Download | Required
Sun's JTA API | 1.0.1b | Download | Required

### Castor JDO samples

The JDO examples use Apache Derby and depend on the JDBC driver provided with the examples archive. This driver is only required for running the samples and is not required otherwise, especially if you use a different database server.

As such, in addition to the dependencies for Castor JDO, the Castor JDO samples will require additional dependencies as enlisted below:

Name | Minimal version | Binary | Required/Optional
Apache Derby JDBC driver | 10.1.2.1 | Download | Required

### Castor DSML

Castor DSML has a dependency on Apache Xerces to provide the XML serializer package for XML document production.

Castor DSML has two implementations, one that uses JNDI and one that uses the Mozilla Directory SDK. Applications that use the JNDI package ( `org.exolab.castor.dsml.jndi` ) are required to include `jndi.jar` or any alternative JAR that includes the JNDI 1.2 API. Applications that use the Mozilla Directory SDK ( `org.exolab.castor.dsml.mozilla` ) are required to include `ldapjdk.jar` or any alternative JAR that includes version 4.0 of the Mozilla Directory SDK.

We recommend using the Mozilla Directory SDK as the JNDI LDAP service provider and have had positive experiences using it with OpenLDAP. The JNDI LDAP service provider is included in the `ldapsp.jar`.

As such, in addition to the dependencies for Castor XML, Castor DSML will require additional dependencies as enlisted below:

Name | Minimal version | Binary
Mozilla Directory SDK (DSML/MDS) | 4.1 | Download
JNDI LDAP service provider from Mozilla | ? | ldapsp.jar

## Compile-time dependencies

In addition to the run-time dependencies given above, developing with and in Castor will require additional dependencies as enlisted below:

Name | Minimal version | Binary | Required/Optional
Apache Ant (Core) - build tool | 1.6.5 | Download | Required
Apache Ant (launcher) | 1.6.5 | Download | Required
JUnit testing framework | 3.8.2 | Download | Required
Apache Log4J | 1.2.13 | Download | Optional
Used by the Servlet examples | 2.3 | Download | Required

<notice> Copyright © 1999-2005 ExoLab Group, Intalio Inc., and Contributors. All rights reserved. </notice>
<notice> Java, EJB, JDBC, JNDI, JTA, Sun, Sun Microsystems are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and in other countries. XML, XML Schema, XSLT and related standards are trademarks or registered trademarks of MIT, INRIA, Keio or others, and a product of the World Wide Web Consortium. All other product names mentioned herein are trademarks of their respective owners. </notice>