218.3.
Mail エンドポイントは、URI 構文を使用して設定されます。
imap:host:port
パスおよびクエリーパラメーターを使用します。
218.3.1. パスパラメーター (2 個のパラメーター):
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
host | 必須 メールサーバーのホスト名 | String | |
port | メールサーバーのポート番号 | int |
218.3.2. クエリーパラメーター(62 個のパラメーター):
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
bridgeErrorHandler (consumer) | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | boolean |
closeFolder (consumer) | ポーリング後にコンシューマーがフォルダーを閉じる必要があるかどうか。このオプションを false に設定し、disconnect=false も設定すると、コンシューマーはポーリング間でフォルダーを開いたままにします。 | true | boolean |
copyTo (consumer) | メールメッセージを処理した後、指定された名前のメールフォルダーにコピーできます。キー copyTo を含むヘッダーを使用して、この設定値をオーバーライドできます。これにより、実行時に設定されたフォルダー名にメッセージをコピーできます。 | String | |
delete (consumer) | 処理後にメッセージを削除します。これは、メールメッセージに DELETED フラグを設定することによって行われます。false の場合、代わりに SEEN フラグが設定されます。Camel 2.10 では、メールを削除するかどうかを決定するキー delete でヘッダーを設定することにより、この設定オプションをオーバーライドできます。 | false | boolean |
disconnect (consumer) | ポーリング後にコンシューマーを切断するかどうか。有効にすると、各ポーリングで Camel が強制的に接続されます。 | false | boolean |
handleFailedMessage (consumer) | メールコンシューマーが特定のメールメッセージを取得できない場合、このオプションを使用すると、コンシューマーのエラーハンドラーによって発生した例外を処理できます。コンシューマーでブリッジエラーハンドラーを有効にすると、代わりに Camel ルーティングエラーハンドラーが例外を処理できます。デフォルトの動作では、コンシューマーが例外を出力し、バッチからのメールは Camel によってルーティングできません。 | false | boolean |
maxMessagesPerPoll (consumer) | ポーリングごとに収集するメッセージの最大数を指定します。デフォルトでは最大値は設定されていません。サーバーの起動時に数千のファイルをダウンロードしないように、たとえば 1000 の制限を設定するために使用できます。このオプションを無効にするには、0 または負の値を設定します。 | int | |
mimeDecodeHeaders (consumer) | このオプションは、メールヘッダーの透過的な MIME デコードとデプロイメントを有効にします。 | false | boolean |
peek (consumer) | メールメッセージを処理する前に、javax.mail.Message をピークとしてマークします。これは、IMAPMessage メッセージタイプにのみ適用されます。peek を使用すると、メールはメールサーバー上で SEEN としてマークされません。これにより、Camel でエラー処理が発生した場合にメールメッセージをロールバックできます。 | true | boolean |
sendEmptyMessageWhenIdle (consumer) | ポーリングコンシューマーがファイルをポーリングしなかった場合、このオプションを有効にして、代わりに空のメッセージ (ボディーなし) を送信できます。 | false | boolean |
skipFailedMessage (consumer) | メールコンシューマーが特定のメールメッセージを取得できない場合、このオプションを使用すると、メッセージをスキップして次のメールメッセージの取得に進むことができます。デフォルトの動作では、コンシューマーが例外を出力し、バッチからのメールは Camel によってルーティングできません。 | false | boolean |
unseen (consumer) | 未読メールのみで制限するかどうか。 | true | boolean |
exceptionHandler (consumer) | コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、コンシューマーは例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | ExceptionHandler | |
exchangePattern (consumer) | コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。 | ExchangePattern | |
fetchSize (consumer) | ポーリング中に消費するメッセージの最大数を設定します。これは、メールボックスフォルダーに大量のメッセージが含まれている場合に、メールサーバーの過負荷を回避するために使用できます。デフォルト値の -1 は、フェッチサイズがなく、すべてのメッセージが消費されることを意味します。値を 0 に設定するのは、Camel がメッセージをまったく消費しない特殊なケースです。 | -1 | int |
folderName (consumer) | ポーリングするフォルダー。 | INBOX | String |
mailUidGenerator (consumer) | カスタムロジックを使用してメールメッセージの UUID を生成できるプラグ可能な MailUidGenerator。 | MailUidGenerator | |
mapMailMessage (consumer) | Camel が受信したメールメッセージを Camel の本文/ヘッダーにマップするかどうかを指定します。true に設定すると、メールメッセージのボディーは Camel IN メッセージのボディーにマップされ、メールヘッダーは IN ヘッダーにマップされます。このオプションが false に設定されている場合、IN メッセージには生の javax.mail.Message が含まれます。exchange.getIn ().getBody (javax.mail.Message.class) を呼び出して、この生のメッセージを取得できます。 | true | boolean |
pollStrategy (consumer) | プラグ可能な org.apache.camel.PollingConsumerPollingStrategy を使用すると、エクスチェンジが作成され、Camel でルーティングされる前に、通常はポーリング操作中に発生するエラー処理を制御するカスタム実装が提供できます。 | PollingConsumerPoll Strategy | |
postProcessAction (consumer) | 通常の処理が終了したら、メールボックスで後処理タスクを実行するための MailBoxPostProcessAction を参照します。 | MailBoxPostProcess アクション | |
bcc (producer) | BCC メールアドレスを設定します。複数の電子メールアドレスはコンマで区切ります。 | String | |
cc (producer) | CC メールアドレスを設定します。複数の電子メールアドレスはコンマで区切ります。 | String | |
from (producer) | 差出人の電子メールアドレス | camel@localhost | String |
replyTo (producer) | Reply-To 受信者 (応答メールの受信者)。複数のメールアドレスはコンマで区切ります。 | String | |
subject (producer) | 送信されるメッセージの件名。注: ヘッダーに件名を設定すると、このオプションよりも優先されます。 | String | |
to (producer) | 宛先メールアドレスを設定します。複数の電子メールアドレスはコンマで区切ります。 | String | |
javaMailSender (producer) | メールの送信にカスタム org.apache.camel.component.mail.JavaMailSender を使用するには。 | JavaMailSender | |
additionalJavaMail Properties (advanced) | 他のすべてのオプションに基づいて設定されたデフォルトプロパティーを追加/オーバーライドする追加の Java メールプロパティーを設定します。これは、いくつかの特別なオプションを追加する必要があるが、他のオプションはそのままにしておきたい場合に便利です。 | プロパティー | |
alternativeBodyHeader (advanced) | 代替電子メール本文を含む IN メッセージヘッダーのキーを指定します。たとえば、メールを text/html 形式で送信し、HTML 以外のメールクライアントに代替メール本文を提供する場合は、このキーをヘッダーとして使用して代替メール本文を設定します。 | CamelMailAlternativeBody | String |
attachmentsContentTransfer EncodingResolver (advanced) | カスタムの AttachmentsContentTransferEncodingResolver を使用して、添付に使用する content-type-encoding を解決するには。 | AttachmentsContent TransferEncoding Resolver | |
binding (advanced) | Camel メッセージと Mail メッセージの間の変換に使用されるバインディングを設定します | MailBinding | |
connectionTimeout (advanced) | ミリ秒単位の接続タイムアウト。 | 30000 | int |
contentType (advanced) | メールメッセージのコンテンツタイプ。HTML メールには text/html を使用します。 | text/plain | String |
contentTypeResolver (advanced) | 添付の Content-Type を決定するリゾルバー。 | ContentTypeResolver | |
debugMode (advanced) | 基礎となるメールフレームワークでデバッグモードを有効にします。SUN メールフレームワークは、デフォルトでデバッグメッセージを System.out に記録します。 | false | boolean |
headerFilterStrategy (advanced) | カスタム org.apache.camel.spi.HeaderFilterStrategy を使用してヘッダーをフィルタリングするには。 | HeaderFilterStrategy | |
ignoreUnsupportedCharset (advanced) | メール送信時にローカル JVM でサポートされていない文字セットを Camel が無視できるようにするオプション。文字セットがサポートされていない場合は、charset=XXX (XXX はサポートされていない文字セットを表す) が content-type から削除され、代わりにプラットフォームのデフォルトに依存します。 | false | boolean |
ignoreUriScheme (advanced) | メール送信時にローカル JVM でサポートされていない文字セットを Camel が無視できるようにするオプション。文字セットがサポートされていない場合は、charset=XXX (XXX はサポートされていない文字セットを表す) が content-type から削除され、代わりにプラットフォームのデフォルトに依存します。 | false | boolean |
session (advanced) | camel がすべてのメールインタラクションに使用するメールセッションを指定します。メールセッションが JavaEE コンテナーなどの他のリソースによって作成および管理されるシナリオで役立ちます。これが指定されていない場合、Camel は自動的にメールセッションを作成します。 | Session | |
synchronous (advanced) | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるかどうかを設定します (サポートされている場合)。 | false | boolean |
useInlineAttachments (advanced) | ディスポジションインラインまたは添付を使用するかどうか。 | false | boolean |
idempotentRepository (filter) | プラグイン可能なリポジトリー org.apache.camel.spi.IdempotentRepository により、同じメールボックスからのクラスター消費が可能になり、コンシューマーが処理するメールメッセージが有効かどうかをリポジトリーで調整できます。デフォルトでは、リポジトリーは使用されていません。 | String> | |
idempotentRepositoryRemove OnCommit (filter) | べき等リポジトリーを使用している場合、メールメッセージが正常に処理されてコミットされると、メッセージ ID がべき等リポジトリーから削除されるか (デフォルト)、リポジトリーに保持されます。デフォルトでは、メッセージ ID は一意であり、リポジトリーに保持する値がないと想定されます。これは、メールメッセージが閲覧済み、移動済み、または削除済みとしてマークされ、再度消費されるのを防ぐためです。したがって、メッセージ ID を冪等リポジトリーに格納してもほとんど価値がありません。ただし、このオプションを使用すると、何らかの理由でメッセージ ID を保存できます。 | true | boolean |
searchTerm (filter) | 件名、本文、送信元、特定の日付以降に送信されたものなどの検索条件に基づいてメールをフィルタリングできる javax.mail.search.SearchTerm を参照します。 | SearchTerm | |
backoffErrorThreshold (scheduler) | backoffMultipler が開始する前に発生する必要がある後続のエラーポーリング (エラーによって失敗した) の数。 | int | |
backoffIdleThreshold (scheduler) | backoffMultipler が開始する前に発生する必要がある後続のアイドルポーリングの数。 | int | |
backoffMultiplier (scheduler) | 後続のアイドル状態/エラーが連続して発生した場合に、スケジュールされたポーリングコンシューマーのバックオフを許可します。乗数は、実際に次の試行が行われる前にスキップされるポーリングの数です。このオプションが使用されている場合は、backoffIdleThreshold や backoffErrorThreshold も設定する必要があります。 | int | |
delay (scheduler) | 次のポーリングまでの時間 (ミリ秒単位)。 | 60000 | long |
greedy (scheduler) | greedy が有効で、以前の実行が 1 つ以上のメッセージをポーリングした場合、ScheduledPollConsumer は即座に再度実行されます。 | false | boolean |
initialDelay (scheduler) | 最初のポーリングが開始されるまでの時間 (ミリ秒単位)。60s (60 秒)、5m30s (5 分 30 秒)、1h (1 時間) などの単位を使用して時間値を指定することもできます。 | 1000 | long |
runLoggingLevel (scheduler) | コンシューマーはポーリング時に開始/完了のログ行を記録します。このオプションを使用すると、ログレベルを設定できます。 | TRACE | LoggingLevel |
scheduledExecutorService (scheduler) | コンシューマーに使用するカスタム/共有スレッドプールを設定できます。デフォルトでは、各コンシューマーに独自の単一スレッドのスレッドプールがあります。 | ScheduledExecutor Service | |
scheduler (scheduler) | camel-spring または camel-quartz2 コンポーネントから cron スケジューラーを使用します。 | none | ScheduledPollConsumer Scheduler |
schedulerProperties (scheduler) | カスタムスケジューラーまたは Quartz2 や Spring ベースのスケジューラーを使用する場合に、追加のプロパティーを設定します。 | Map | |
startScheduler (scheduler) | スケジューラーを自動起動するかどうか。 | true | boolean |
timeUnit (scheduler) | initialDelay および delay オプションの時間単位。 | MILLISECONDS | TimeUnit |
useFixedDelay (scheduler) | 固定遅延または固定レートを使用するかどうかを制御します。詳細は、JDK の ScheduledExecutorService を参照してください。 | true | boolean |
sortTerm (並べ替え) | メッセージのソート順。IMAP でのみネイティブにサポートされています。POP3 を使用する場合、または IMAP サーバーに SORT 機能がない場合に、ある程度エミュレートされます。 | String | |
dummyTrustManager (security) | すべての証明書を信頼するためのダミーのセキュリティー設定を使用する場合。実稼働環境ではなく、開発モードでのみ使用してください。 | false | boolean |
password (security) | ログイン用のパスワード | String | |
sslContextParameters (security) | SSLContextParameters を使用してセキュリティーを設定する場合。 | SSLContextParameters | |
username (security) | ログイン用のユーザー名 | 文字列 |
218.3.3. サンプルエンドポイント
通常、次のようにログイン認証情報を含む URI を指定します (例として SMTP を取り上げます)。
smtp://[username@]host[:port][?password=somepwd]
または、ユーザー名とパスワードの両方をクエリーオプションとして指定することもできます。
smtp://host[:port]?password=somepwd&username=someuser
以下に例を示します。
smtp://mycompany.mailserver:30?password=tiger&username=scott