| Prev Package | Next Package | Frames | No Frames |
Marshaller marshalls a Java object into an XML document.Interface Summary | |
| AttributeSet | A simple interface for handling Attributes in the Marshalling Framework. |
| ClassDescriptorResolver | An interface for finding or "resolving" ClassDescriptor classes. |
| EventProducer | A interface which abstracts anything which can produce SAX events. |
| IDResolver | A simple interface for doing custom IDREF resolving during Unmarshalling. |
| MarshalListener | An interface to allow external "listening" to objects when they are being marshalled for various tracking purposes and potential modification, and to prevent an object from being marshalled if necessary. |
| OutputFormat | Output format contract for XML serialization. |
| SAX2EventProducer | A interface which abstracts anything which can produce SAX 2 events. |
| Serializer | Interface contract for XML serialization business. |
| TypeValidator | The basic type validation interface class. |
| UnmarshalListener | An interface to allow external "listening" to objects when they are being unmarshalled for various tracking purposes and potential modification. |
| XMLClassDescriptor | A class descriptor for describing relationships between a Class and an XML element or complexType. |
| XMLClassDescriptorResolver | An interface for finding or "resolving" XMLClassDescriptor classes. |
| XMLConstants | Constants used by all of Castor-XML are defined here. |
| XMLFieldDescriptor | XML field descriptor. |
| XMLSerializerFactory | Configurable factory object for XML serialization. |
Class Summary | |
| AbstractXMLNaming | An abstract class to handing XML naming |
| AccessRights | A class used to indicate access rights |
| CastorException | The base exception for Castor (or at least Castor XML) |
| ClassDescriptorResolverFactory | |
| DebugHandler | A Simple SAX1 DocumentHandler that intercepts SAX events and prints them to the console. |
| DescriptorType | This class represents the Possible Descriptor types used by the marshalling Framework. |
| FieldValidator | Handles field validation. |
| IDResolverImpl | Default IDResolver for Castor XML during (un)marshaling. |
| IntrospectedXMLClassDescriptor | A simple extension of XMLClassDescriptor so that we can set the "instrospected" flag. |
| Introspector | A Helper class for the Marshaller and Unmarshaller, basically the common code base between the two. |
| Introspector.IdentityConvertor | A special TypeConvertor that simply returns the object given. |
| Introspector.MethodSet | A simple struct for holding a set of accessor methods |
| MarshalException | An exception that is used to signal marshalling exceptions. |
| MarshalFramework | A core class for common code shared throughout the Marshalling Framework |
| MarshalFramework.InheritanceMatch | Used to store the information when we find a possible inheritance. |
| MarshalFramework.InternalXMLClassDescriptor | An internal implementation of XMLClassDescriptor used by the Unmarshaller and Marshaller... |
| Marshaller | A Marshaller that serializes Java Object's to XML Note: This class is not thread safe, and not intended to be, so please create a new Marshaller for each thread if it is to be used in a multithreaded environment. |
| Marshaller.MarshalState | |
| Marshaller.NilObject | A wrapper for a "Nil" object |
| Marshaller.WrapperInfo | Inner-class used for handling wrapper elements and locations |
| Namespaces | A class for handling Namespace declaration and scoping |
| Namespaces.Namespace | An internal class used to represent a namespace |
| Namespaces.NamespaceEnumerator | A simple Enumeration for Namespace objects |
| NodeType | The possible node types for an XML field. |
| ProcessingInstruction | An immutable class that represents an XML processing instruction. |
| ReferenceInfo | Internal class used to save state for reference resolving. |
| ResolverException | The exception class thrown by the ClassDescriptorResolver |
| UnmarshalHandler | An unmarshaller to allowing unmarshaling of XML documents to Java Objects. |
| UnmarshalHandler.Arguments | Internal class used for passing constructor argument information |
| UnmarshalHandler.ArrayHandler | A class for handling Arrays during unmarshalling. |
| UnmarshalHandler.ElementInfo | A utility class for keeping track of the qName and how the SAX parser passed attributes |
| Unmarshaller | An unmarshaller to allowing unmarshalling of XML documents to Java Objects. |
| UnmarshalState | The state information class for the UnmarshalHandler |
| ValidationContext | A class which can be used to hold validation information, used by the TypeValidator interface. |
| ValidationException | An Exception that can be used to signal XML validation errors. |
| Validator | A class which can perform Validation on an Object model. |
| XercesJDK5OutputFormat | Xerces-specific OutputFormat instance, used with JDK 5.0 only. |
| XercesJDK5Serializer | Xerces-specific implementation of the Serializer interface, used for JDK 5 only where Xerecs has been integrated with the core code base. |
| XercesJDK5XMLSerializerFactory | Xerces-specific implementation of the XMLSerializerFactory interface. |
| XercesOutputFormat | Xerces-specific OutputFormat instance. |
| XercesSerializer | Xerces-specific implementation of the Serializer interface. |
| XercesXMLSerializerFactory | Xerces-specific implementation of the XMLSerializerFactory interface. |
| XMLContext | Bootstrap class for Castor XML that allows you to load information about the domain objects used with Castor XML (marshallers and unmarshallers) by various means. |
| XMLException | An exception that is used to signal an error that has occured during marshaling or unmarshaling. |
| XMLFieldHandler | This FieldHandler is used in the generated descriptors. |
| XMLMappingLoader | An XML implementation of mapping helper. |
| XMLMappingLoader.IdentityConvertor | A special TypeConvertor that simply returns the object given. |
Marshaller marshalls a Java object into an XML document.
Unmarshaller unmarshalls an XML document back into a Java
object.
The following example unmarshals the XML document product.xml into a
Product object, performs simple changes to the object and then marshals it
back into an XML document.
Product prod; File file; file = new File( "product.xml" ); // Unmarshal the document into an object prod = (Product) Unmarshaller.unmarshal( Product.class, new FileReader( file ) ); // A 25% mark down for each product and mark as sale prod.markDown( 0.25 ); prod.setOnSale( true ); // Marshal the object into a document Marshaller.marshal( Product, new FileWriter( file ) );In addition to static methods, marshaller objects can be created and set with a variety of options affecting how they will operation. The above example adapted to use a specific mapping file:
Mapping map; Unmarshaller umr; Marshaller mar; // Load the specified mapping file map = new Mapping(); map.loadMapping( "mapping.xml" ); // Unmarshal the document into an object umr = new Unmarshaller( Product.class ); umr.setMapping( mapping ); prod = (Product) umr.unmarshal( new FileReader( file ) ); : : : // Marshal the object into a document mar = new Marshaller( new FileWriter( file ) ); mar.setMapping( mapping ); mar.marshal( Product );