### 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.