XFire

Home
Bug/Issue Reporting
Download
FAQ
Get Involved
License
News
Stack Comparison
Support
User's Guide
XFire Team

M5

Javadocs
Reports

M6-SNAPSHOT

Javadocs
Reports

Developers

Developer Space
CVS
Building
Architecture
Interesting Projects
Release Process

XFire Internals

XFire is based a component based framework. A quick look at the components and you will have a pretty good understanding of how everything fits together. First a rundown from of how things look when a service is invoked, then there will be a table of components.

Users will most likely be accessing the services through Transports. A transport (like HTTP) passes off the SOAP message to the XFire component.

The transport determines that service that is being invoked then passes a MessageContext and service name off the the XFire class. The XFire class looks up the Service from the ServiceRegistry and then invokes the Handler.

Component Description
XFire This is point of access for transports. Here you can invoke a service by providing an XML SOAP document and get the response programmatically.
Service This is a description of a SOAP service.
Invoker An Invoker allows you to controller the mechanism by which the underlying object that services a request is created.
ServiceRegistry A registry of all the services within the system.
Handler A processing module within XFire. This could do anything from processing an incoming XML stream to accessing your database.
TransportManager Manages the transports within XFire. Custom transports should be registered here. It also has the ability to turn off/on transports for certain services.
Transport An encapsulation of a transport mechanism, such as HTTP or JMS. A transport is responsible for managing incoming and outgoing communications using a particular wire protocol.
FaultHandler FaultHandlers take an exception and create a fault message. Note that they do not extend Handler.