169.7. XML 以外の文字の無視
				この機能は Camel 2.2.0 の新機能です。
JaxbDataFormat では、NonXML Character を無視できます。filterNonXmlChars プロパティーを true に設定するだけで、JaxbDataFormat はメッセージのマーシャリングまたはアンマーシャリング時に NonXML 文字を " " に置き換えます。Exchange プロパティー Exchange.FILTER_NON_XML_CHARS を設定して行うこともできます。
			
| JDK 1.5 | JDK 1.6 以降 | |
|---|---|---|
|   フィルタリングの使用  |   StAX API と実装  |   いいえ  | 
|   フィルタリングの使用なし  |   StAX API のみ  |   いいえ  | 
この機能は、Woodstox 3.2.9 および Sun JDK 1.6 StAX 実装でテストされています。
				New for Camel 2.12.1
 JaxbDataFormat では、ストリームを XML にマーシャリングするために使用される XMLStreamWriter をカスタマイズできるようになりました。この設定を使用すると、独自のストリームライターを追加して、xml 以外の文字を完全に削除、エスケープ、または置換できます。
			
   JaxbDataFormat customWriterFormat = new JaxbDataFormat("org.apache.camel.foo.bar");
  customWriterFormat.setXmlStreamWriterWrapper(new TestXmlStreamWriter());
   JaxbDataFormat customWriterFormat = new JaxbDataFormat("org.apache.camel.foo.bar");
  customWriterFormat.setXmlStreamWriterWrapper(new TestXmlStreamWriter());
次の例は、Spring DSL を使用し、Camel の NonXML フィルタリングも有効にすることを示しています。
<bean id="testXmlStreamWriterWrapper" class="org.apache.camel.jaxb.TestXmlStreamWriter"/> <jaxb filterNonXmlChars="true" contextPath="org.apache.camel.foo.bar" xmlStreamWriterWrapper="#testXmlStreamWriterWrapper" />
<bean id="testXmlStreamWriterWrapper" class="org.apache.camel.jaxb.TestXmlStreamWriter"/>
<jaxb filterNonXmlChars="true"  contextPath="org.apache.camel.foo.bar" xmlStreamWriterWrapper="#testXmlStreamWriterWrapper" />