37.7. TypeConverter for SAXSource
Overview
Apache Camel supports a type converter mechanism, which is used to perform implicit and explicit type conversions of message bodies and message headers. The type converter mechanism is extensible and it so happens that the provider demonstration requires a custom type converter that can convert
String
objects to SAXSource
objects.
String to SAXSource type converter
The
String
to SAXSource
type converter is implemented in the AdditionalConverters
class, as follows:
// Java package com.fusesource.customerwscamelcxfprovider; import java.io.ByteArrayInputStream; import javax.xml.transform.sax.SAXSource; import org.apache.camel.Converter; import org.xml.sax.InputSource; @Converter public class AdditionalConverters { @Converter public static SAXSource toSAXSource(String xml) { return new SAXSource(new InputSource(new ByteArrayInputStream(xml.getBytes()))); } }
Reference
For full details of the type converter mechanism in Apache Camel, see Section 40.3, “Built-In Type Converters” and Chapter 42, Type Converters.