Its helpful to know what supporting libraries you need to use XFire, so we've tried to create a concise table here. All these jars can be found on the Maven Ibiblio site except for the StAX jars, which can be found on the Codehaus distribution site.
You can see your Maven Guide for information on Maven integration.
Also, note that currently XFire requires Java 1.4+ as StAX depends on Java 1.4. Future releases may include Java 1.3 support.
X = Required
O = Optional
Dependency |
Version |
Basic Usage |
Basic + XML Config |
Notes |
LICENSE |
xfire-all |
1.1 |
X |
X |
|
MIT |
activation framework |
1.0.2+ |
X |
X |
|
1.1+ is CDDL |
commons-codec |
1.3 |
O |
O |
Only needed for XFire clients using HTTP |
ASL 2.0 |
commons-httpclient |
3.0 |
O |
O |
Only needed for XFire clients using HTTP |
ASL 2.0 |
commons-logging |
1.0.4 |
X |
X |
|
ASL 2.0 |
javamail |
1.4 |
X |
X |
(Used for soap attachments) |
CDDL |
jaxen |
1.1-beta-8 |
X |
X |
If you use AbstractXFireTest only |
ASL 1.1 |
jdom |
1.0 |
X |
X |
|
ASL 1.1 |
jetty |
5.x |
O |
O |
Needed for XFireHttpServer |
ASL 2.0 |
junit |
3.8.1 |
O |
O |
If you use AbstractXFireTest only |
CPL 1.0 |
servletapi |
2.3 |
X |
X |
For servlet use only. |
|
spring |
1.2.4+ |
|
X |
|
ASL 2.0 |
stax-api |
1.0.1 |
X |
X |
|
ASL 2.0 |
wsdl4j |
1.5.2 |
X |
X |
|
CPL 1.0 |
xbean-spring |
2.6 |
|
X |
From the XBean project. |
ASL 2.0 |
woodstox |
3.0.1 |
X |
X |
|
ASL 2.0 |
XmlSchema |
1.1 |
O |
O |
Only needed for dynamic XFire clients. This is from the Apache WS Commons. |
ASL 2.0 |
xfire-jsr181-api |
1.0-M1 |
O |
O |
Needed for JSR181 Annotations |
MIT |
Selecting a Stax Implementation (IMPORTANT!)
Stax is the XML api that powers XFire and allows it to process XML efficiently. There are many different Stax implementations out there - the reference implementation (RI), Woodstox, FastInfoset, and there is one included in the JWSDP. Regardless of which you one choose you must have the stax-api jar on your classpath.
In addition we highly recommend that you use Woodstox as your Stax implementation. It is about 30-40% faster then the RI and works more reliably. To ensure you are using Woodstox and not the RI make sure the stax-1.1.x-dev jar is off your classpath and the wstx-2.0.3 jar is on it.
Optional Modules
Generator
Project |
Version |
Required/Optional |
License |
jaxb-xjc |
2.0 |
Required. |
CDDL |
[mlSchema |
1.1 |
Required. This is from the Apache WS Commons. |
ASL 2.0 |
Additional you will need the dependencies for JAXB or XMLBeans.
JAXB
Project |
Version |
Required/Optional |
License |
jaxb-xjc |
2.0 |
Required at build. |
CDDL |
jaxb-impl |
2.0 |
Required. |
CDDL |
jaxb-api |
2.0 |
Required. |
CDDL |
XMLBeans
Project |
Version |
Required/Optional |
License |
xmlbeans |
2.0.0+ |
Required. |
CDDL |
Castor
Project |
Version |
Required/Optional |
License |
castor-xml |
1.0M4 |
Required |
ASL 2.0 |
castor-srcgen-ant-task |
1.0M4 |
Required for src gen at build |
ASL 2.0 |
xercesImpl |
2.7.1 |
Required |
ASL 2.0 |
stax-utils |
snapshot-20040917 |
Required |
BSD |
dom4j |
1.6 |
Required |
BSD |
Important: Castor currently requires the use of the Stax RI (stax-1.1.x-dev).
JIBX
Project |
Version |
Required/Optional |
License |
TODO: add JIBX dependencies
Spring
All the Java Binding dependencies, plus:
Project |
Version |
Required/Optional |
License |
springframework |
1.2.x |
Required. |
ASL 2.0 |
aopalliance |
1.0 |
Required. |
ASL 2.0 |
commons-beanutils |
1.7.0 |
Required. |
ASL 2.0 |
Plexus
All the Java Binding dependencies, plus:
Project |
Version |
Required/Optional |
License |
classworlds |
1.1-alpha-1 |
Required. |
ASL 1.1 |
plexus-container-default |
1.0-alpha-2 |
Required. |
MIT |
plexus-utils |
1.0-alpha-2 |
Required. |
MIT |
plexus-servlet |
1.0-beta-2-SNAPSHOT |
Required. |
MIT |
xfire-plexus |
1.0-M4 |
Required |
MIT |
Pico
All the Java Binding dependencies, plus:
Project |
Version |
Required/Optional |
|
picocontainer |
1.2-SNAPSHOT |
Required. |
BSD |
nanocontainer |
1.0-SNAPSHOT |
Required. |
BSD |
nanocontainer-nanowar |
1.0-SNAPSHOT |
Required. |
BSD |
|