第218章 Mail コンポーネント
Camel バージョン 1.0 以降で利用可能
メールコンポーネントは、Spring の Mail サポートおよび基盤となる JavaMail システムを介して電子メールへのアクセスを提供します。
Maven ユーザーは、このコンポーネントの pom.xml
に以下の依存関係を追加する必要があります。
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-mail</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel core version --> </dependency>
Geronimo mail .jar
添付付きのメールをポーリングする際に、geronimo mail .jar
(v1.6) にバグがあることを発見しました。Content-Type
を正しく識別できません。そのため、メールに .jpeg
ファイルを添付してポーリングすると、Content-Type
は image/jpeg
ではなく text/plain
として解決されます。そのため、org.apache.camel.component.ContentTypeResolver
SPI インターフェイスを追加しました。これにより、独自の実装を提供し、ファイル名に基づいて正しい Mime タイプを返すことでこのバグを修正できます。したがって、ファイル名が jpeg/jpg
で終わる場合、image/jpeg
を返すことができます。
MailComponent
インスタンスまたは MailEndpoint
インスタンスでカスタムリゾルバーを設定できます。
POP3 または IMAP POP3 にはいくつかの制限があるため、エンドユーザーは可能であれば IMAP を使用することを推奨します。
情報: テスト用の模擬メールの使用 単体テストにモックフレームワークを使用できます。これにより、実際のメールサーバーを必要とせずにテストできます。ただし、実際のメールサーバーにメールを送信する必要がある本番環境やその他の環境に移行する場合は、モックメールを含めないことを忘れないでください。クラスパスに mock-javamail.jar が存在するということは、それが作動してメールの送信を回避することを意味します。
218.1. URI 形式
メールエンドポイントには、次の URI 形式のいずれかを使用できます (プロトコルはそれぞれ、SMTP、POP3、または IMAP)。
smtp://[username@]host[:port][?options] pop3://[username@]host[:port][?options] imap://[username@]host[:port][?options]
メールコンポーネントは、これらのプロトコルの安全なバリアント (SSL を介したレイヤー) もサポートします。スキームに s
を追加することで、安全なプロトコルを有効にできます。
smtps://[username@]host[:port][?options] pop3s://[username@]host[:port][?options] imaps://[username@]host[:port][?options]
URI には、?option=value&option=value&…
の形式でクエリーオプションを追加できます。