XFire

Home
Bug/Issue Reporting
Download
FAQ
Get Involved
License
News
Performance
Stack Comparison
Support
Who uses XFire\?
XFire Team

Documentation

Javadocs
Reports
User's Guide
Release Notes

Quicklinks

Aegis Binding
Client
JAXB 2.0
JSR 181 Annotations
Spring

Developers

Developer Space
CVS
Building
Architecture
Interesting Projects
Roadmap
Release Process
JAX\-WS

General Questions

What are the goals of XFire?

  • Create a flexible SOAP framework, where any processing mechanismcan be plugged in.
  • Be SOAP 1.2 and WS-I 1.1 compliant. Also to offer support for non-RPC/Encoded SOAP 1.1 services.
  • Intuitive, easy to use API.
  • Be Fast.
  • Allow many different binding methods (traditional java types, OGNL, Castor, JaxME, etc).
  • Create a processing model where your web service model and your java model can develop independently (see the Aegis Module).
  • Modules for WS-Security and WS-Adressing support.

Technical Questions

Why is XFire producing invalid XML?

XFire is based on StAX and not all StAX implementations work correctly. See the Dependency Guide for information on how to choose a stax implementation.

Why aren't RPC/Encoded services supported by the Java Module?

For interoperability, WS-I basic profile basically says that trying to support RPC/encoded services is an interopability nightmare. And they're right!

However, the basic framework to support RPC/Encoded services is in place. Someone just needs to finish it.

Is XFire DOM Based?

XFire is structured so that in most cases the SOAP document does not need to be cached in memory at all. It is able to do this by using StAX - the streaming XML API.

What is this java.lang.NoSuchMethodError: javax.xml.namespace.QName.<init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String V Exception?

Several application servers (WebSphere and WebLogic, for example) include an older version of the QName class. XFire (as well as XMLBeans and Stax) require the new version. WebLogic usage has been documented, WebSphere will be similar.

When I try to run the examples I get "The build cannot continue because of the following unsatisfied dependency: javamail-1.3.2.jar"

Due to Sun licensing restrictions we can't redistribute the javamail jar. You must download it and put it in your local maven repository - "~/.maven/javamail/jars/javamail-1.3.2.jar".