207.15. アタッチメントでメールメッセージを分割する方法
この例では、多くの添付ファイルがあるメールメッセージを消費します。後は、添付ファイルを個別に処理するために、個別の添付ファイルごとに Splitter EIP を使用します。たとえば、メールメッセージに 5 つの添付ファイルがある場合、Splitter が 5 つのメッセージを処理するようにし、それぞれが 1 つの添付ファイルを持つようにします。これを行うには、Splitter にカスタム式を提供する必要があります。ここで、1 つの添付ファイルを持つ 5 つのメッセージが含まれる List<Message> を提供します。
				このコードは Camel 2.10 以降の camel-mail コンポーネントで追加設定なしで提供されます。コードは org.apache.camel.component.mail.SplitAttachmentsExpression クラスにあり、ここにソースコードを見つけることができます。
			
Camel ルートでは、以下のようにルートでこの式を使用する必要があります。
XML DSL を使用する場合、以下のように Splitter でメソッド呼び出し式を宣言する必要があります。
<split> <method beanType="org.apache.camel.component.mail.SplitAttachmentsExpression"/> <to uri="mock:split"/> </split>
<split>
  <method beanType="org.apache.camel.component.mail.SplitAttachmentsExpression"/>
  <to uri="mock:split"/>
</split>
Camel 2.16 以降では、添付ファイルを byte[] として分割し、メッセージボディーとして保存することもできます。これは、ブール値 true の式を作成して行います。
SplitAttachmentsExpression split = SplitAttachmentsExpression(true);
SplitAttachmentsExpression split = SplitAttachmentsExpression(true);そして、Splitter eip で式を使用します。