Package org.exolab.castor.xml

The XML Marshaller API

See:
          Description

Interface Summary
AttributeSet A simple interface for handling Attributes in the Marshalling Framework.
ClassDescriptorResolver An interface for finding or "resolving" ClassDescriptor classes.
EventProducer Deprecated. use @see org.castor.xml.SAX2EventProducer instead.
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 Deprecated. a new extended interface was introduced
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
ClassDescriptorResolverFactory A factory that - based upon the binding type specified - returns ClassDescriptorResolver instances.
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.
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.
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.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.
UnmarshalHandler An unmarshaller to allowing unmarshaling of XML documents to Java Objects.
UnmarshalHandler.ArrayHandler A class for handling Arrays during unmarshalling.
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.
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.
XMLFieldHandler This FieldHandler is used in the generated descriptors.
XMLMappingLoader An XML implementation of mapping helper.
 

Exception Summary
CastorException The base exception for Castor (or at least Castor XML)
MarshalException An exception that is used to signal marshalling exceptions.
ResolverException The exception class thrown by the ClassDescriptorResolver
ValidationException An Exception that can be used to signal XML validation errors.
XMLException An exception that is used to signal an error that has occured during marshaling or unmarshaling.
 

Package org.exolab.castor.xml Description

The XML Marshaller API

Version:
$Revision: 6213 $ $Date: 2003-03-03 00:05:44 -0700 (Mon, 03 Mar 2003) $
Author:
Keith Visco

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 );
    



Intalio Inc. (C) 1999-2008. All rights reserved http://www.intalio.com