Package org.springframework.util.xml
Class StaxUtils
- java.lang.Object
- org.springframework.util.xml.StaxUtils
public abstract class StaxUtils extends Object
Convenience methods for working with the StAX API. Partly historic due to JAXP 1.3 compatibility; as of Spring 4.0, relying on JAXP 1.4 as included in JDK 1.6 and higher.In particular, methods for using StAX (
javax.xml.stream) in combination with the TrAX API (javax.xml.transform), and converting StAX readers/writers into SAX readers/handlers and vice-versa.- Since:
- 3.0
- Author:
- Arjen Poutsma, Juergen Hoeller
Constructor Summary
Constructors Constructor Description StaxUtils()
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static ContentHandlercreateContentHandler(XMLEventWriter eventWriter)Create a SAXContentHandlerthat writes events to the given StAXXMLEventWriter.static ContentHandlercreateContentHandler(XMLStreamWriter streamWriter)Create a SAXContentHandlerthat writes to the given StAXXMLStreamWriter.static ResultcreateCustomStaxResult(XMLEventWriter eventWriter)Create a custom, non-JAXP 1.4 StAXResultfor the givenXMLEventWriter.static ResultcreateCustomStaxResult(XMLStreamWriter streamWriter)Create a custom, non-JAXP 1.4 StAXResultfor the givenXMLStreamWriter.static SourcecreateCustomStaxSource(XMLEventReader eventReader)Create a custom, non-JAXP 1.4 StAXSourcefor the givenXMLEventReader.static SourcecreateCustomStaxSource(XMLStreamReader streamReader)Create a custom, non-JAXP 1.4 StAXSourcefor the givenXMLStreamReader.static XMLStreamReadercreateEventStreamReader(XMLEventReader eventReader)Return aXMLStreamReaderthat reads from aXMLEventReader.static XMLStreamWritercreateEventStreamWriter(XMLEventWriter eventWriter)Return aXMLStreamWriterthat writes to aXMLEventWriter.static XMLStreamWritercreateEventStreamWriter(XMLEventWriter eventWriter, XMLEventFactory eventFactory)Return aXMLStreamWriterthat writes to aXMLEventWriter.static ResultcreateStaxResult(XMLEventWriter eventWriter)Create a JAXP 1.4StAXResultfor the givenXMLEventWriter.static ResultcreateStaxResult(XMLStreamWriter streamWriter)Create a JAXP 1.4StAXResultfor the givenXMLStreamWriter.static SourcecreateStaxSource(XMLEventReader eventReader)Create a JAXP 1.4 aStAXSourcefor the givenXMLEventReader.static SourcecreateStaxSource(XMLStreamReader streamReader)Create a JAXP 1.4StAXSourcefor the givenXMLStreamReader.static XMLReadercreateXMLReader(XMLEventReader eventReader)Create a SAXXMLReaderthat reads from the given StAXXMLEventReader.static XMLReadercreateXMLReader(XMLStreamReader streamReader)Create a SAXXMLReaderthat reads from the given StAXXMLStreamReader.static XMLEventReadergetXMLEventReader(Source source)Return theXMLEventReaderfor the given StAX Source.static XMLEventWritergetXMLEventWriter(Result result)Return theXMLEventWriterfor the given StAX Result.static XMLStreamReadergetXMLStreamReader(Source source)Return theXMLStreamReaderfor the given StAX Source.static XMLStreamWritergetXMLStreamWriter(Result result)Return theXMLStreamWriterfor the given StAX Result.static booleanisStaxResult(Result result)Indicate whether the givenResultis a JAXP 1.4 StAX Result or custom StAX Result.static booleanisStaxSource(Source source)Indicate whether the givenSourceis a JAXP 1.4 StAX Source or custom StAX Source.
Constructor Detail
StaxUtils
public StaxUtils()
Method Detail
createStaxSource
public static Source createStaxSource(XMLStreamReader streamReader)
Create a JAXP 1.4StAXSourcefor the givenXMLStreamReader.- Parameters:
streamReader- the StAX stream reader- Returns:
- a source wrapping the
streamReader
createStaxSource
public static Source createStaxSource(XMLEventReader eventReader) throws XMLStreamException
Create a JAXP 1.4 aStAXSourcefor the givenXMLEventReader.- Parameters:
eventReader- the StAX event reader- Returns:
- a source wrapping the
eventReader - Throws:
XMLStreamException
createCustomStaxSource
public static Source createCustomStaxSource(XMLStreamReader streamReader)
Create a custom, non-JAXP 1.4 StAXSourcefor the givenXMLStreamReader.- Parameters:
streamReader- the StAX stream reader- Returns:
- a source wrapping the
streamReader
createCustomStaxSource
public static Source createCustomStaxSource(XMLEventReader eventReader)
Create a custom, non-JAXP 1.4 StAXSourcefor the givenXMLEventReader.- Parameters:
eventReader- the StAX event reader- Returns:
- a source wrapping the
eventReader
isStaxSource
public static boolean isStaxSource(Source source)
Indicate whether the givenSourceis a JAXP 1.4 StAX Source or custom StAX Source.- Returns:
trueifsourceis a JAXP 1.4StAXSourceor custom StAX Source;falseotherwise
getXMLStreamReader
public static XMLStreamReader getXMLStreamReader(Source source)
Return theXMLStreamReaderfor the given StAX Source.- Parameters:
source- a JAXP 1.4StAXSource- Returns:
- the
XMLStreamReader - Throws:
IllegalArgumentException- ifsourceisn't a JAXP 1.4StAXSourceor custom StAX Source
getXMLEventReader
public static XMLEventReader getXMLEventReader(Source source)
Return theXMLEventReaderfor the given StAX Source.- Parameters:
source- a JAXP 1.4StAXSource- Returns:
- the
XMLEventReader - Throws:
IllegalArgumentException- ifsourceisn't a JAXP 1.4StAXSourceor custom StAX Source
createStaxResult
public static Result createStaxResult(XMLStreamWriter streamWriter)
Create a JAXP 1.4StAXResultfor the givenXMLStreamWriter.- Parameters:
streamWriter- the StAX stream writer- Returns:
- a result wrapping the
streamWriter
createStaxResult
public static Result createStaxResult(XMLEventWriter eventWriter)
Create a JAXP 1.4StAXResultfor the givenXMLEventWriter.- Parameters:
eventWriter- the StAX event writer- Returns:
- a result wrapping
streamReader
createCustomStaxResult
public static Result createCustomStaxResult(XMLStreamWriter streamWriter)
Create a custom, non-JAXP 1.4 StAXResultfor the givenXMLStreamWriter.- Parameters:
streamWriter- the StAX stream writer- Returns:
- a source wrapping the
streamWriter
createCustomStaxResult
public static Result createCustomStaxResult(XMLEventWriter eventWriter)
Create a custom, non-JAXP 1.4 StAXResultfor the givenXMLEventWriter.- Parameters:
eventWriter- the StAX event writer- Returns:
- a source wrapping the
eventWriter
isStaxResult
public static boolean isStaxResult(Result result)
Indicate whether the givenResultis a JAXP 1.4 StAX Result or custom StAX Result.- Returns:
trueifresultis a JAXP 1.4StAXResultor custom StAX Result;falseotherwise
getXMLStreamWriter
public static XMLStreamWriter getXMLStreamWriter(Result result)
Return theXMLStreamWriterfor the given StAX Result.- Parameters:
result- a JAXP 1.4StAXResult- Returns:
- the
XMLStreamReader - Throws:
IllegalArgumentException- ifsourceisn't a JAXP 1.4StAXResultor custom StAX Result
getXMLEventWriter
public static XMLEventWriter getXMLEventWriter(Result result)
Return theXMLEventWriterfor the given StAX Result.- Parameters:
result- a JAXP 1.4StAXResult- Returns:
- the
XMLStreamReader - Throws:
IllegalArgumentException- ifsourceisn't a JAXP 1.4StAXResultor custom StAX Result
createContentHandler
public static ContentHandler createContentHandler(XMLStreamWriter streamWriter)
Create a SAXContentHandlerthat writes to the given StAXXMLStreamWriter.- Parameters:
streamWriter- the StAX stream writer- Returns:
- a content handler writing to the
streamWriter
createContentHandler
public static ContentHandler createContentHandler(XMLEventWriter eventWriter)
Create a SAXContentHandlerthat writes events to the given StAXXMLEventWriter.- Parameters:
eventWriter- the StAX event writer- Returns:
- a content handler writing to the
eventWriter
createXMLReader
public static XMLReader createXMLReader(XMLStreamReader streamReader)
Create a SAXXMLReaderthat reads from the given StAXXMLStreamReader.- Parameters:
streamReader- the StAX stream reader- Returns:
- a XMLReader reading from the
streamWriter
createXMLReader
public static XMLReader createXMLReader(XMLEventReader eventReader)
Create a SAXXMLReaderthat reads from the given StAXXMLEventReader.- Parameters:
eventReader- the StAX event reader- Returns:
- a XMLReader reading from the
eventWriter
createEventStreamReader
public static XMLStreamReader createEventStreamReader(XMLEventReader eventReader) throws XMLStreamException
Return aXMLStreamReaderthat reads from aXMLEventReader. Useful because the StAXXMLInputFactoryallows one to create an event reader from a stream reader, but not vice-versa.- Returns:
- a stream reader that reads from an event reader
- Throws:
XMLStreamException
createEventStreamWriter
public static XMLStreamWriter createEventStreamWriter(XMLEventWriter eventWriter)
Return aXMLStreamWriterthat writes to aXMLEventWriter.- Returns:
- a stream writer that writes to an event writer
- Since:
- 3.2
createEventStreamWriter
public static XMLStreamWriter createEventStreamWriter(XMLEventWriter eventWriter, XMLEventFactory eventFactory)
Return aXMLStreamWriterthat writes to aXMLEventWriter.- Returns:
- a stream writer that writes to an event writer
- Since:
- 3.0.5