218.3.


Mail 端点使用 URI 语法进行配置:

imap:host:port
Copy to Clipboard Toggle word wrap

使用以下路径和查询参数:

218.3.1. 路径参数(2 参数):

Expand
名称描述默认值类型

主机

需要 邮件服务器主机名

 

字符串

端口

邮件服务器的端口号

 

int

218.3.2. 查询参数(62 参数):

Expand
名称描述默认值类型

bridgeErrorHandler (consumer)

允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。

false

布尔值

closeFolder (consumer)

消费者是否应该在轮询后关闭文件夹。将这个选项设置为 false,并且也具有 disconnect=false,然后消费者在轮询之间保持文件夹打开。

true

布尔值

copyTo (consumer)

在处理邮件后,可以使用指定名称将其复制到邮件文件夹中。您可以使用带有键 copyTo 的标头覆盖此配置值,允许您将消息复制到运行时配置的文件夹名称。

 

字符串

delete (consumer)

处理消息后删除消息。这可以通过在邮件邮件中设置 DELETED 标志来完成。如果为 false,则设置 SEEN 标志。从 Camel 2.10 开始,您可以通过设置带有 key delete 的标头来覆盖此配置选项,以确定是否应删除邮件。

false

布尔值

disconnect (consumer)

消费者在轮询后是否应断开。如果启用,它会强制 Camel 在每个轮询上进行连接。

false

布尔值

handleFailedMessage (consumer)

如果邮件消费者无法检索给定的邮件邮件,则此选项允许处理消费者的错误处理程序造成的异常。通过在消费者上启用网桥错误处理程序,Camel 路由错误处理程序可以改为处理异常。默认行为是消费者抛出异常,并且批处理中没有邮件可由 Camel 路由。

false

布尔值

maxMessagesPerPoll (consumer)

指定每个轮询要收集的最大消息数。默认情况下,不会设置最大值。可用于设置限制,例如 1000 个,以避免在服务器启动时下载数千个文件。设置 0 或 negative 值来禁用这个选项。

 

int

mimeDecodeHeaders (consumer)

这个选项为邮件标头启用透明 MIME 解码和取消折叠。

false

布尔值

peek (consumer)

在处理邮件之前,将 javax.mail.Message 标记为 peeked。这只适用于 IMAPMessage 消息类型。通过使用 peek,邮件不会在邮件服务器上标记为 SEEN,如果 Camel 中存在错误处理,则我们就可以回滚邮件。

true

布尔值

sendEmptyMessageWhenIdle (consumer)

如果轮询使用者没有轮询任何文件,您可以启用此选项来发送空消息(无正文)。

false

布尔值

skipFailedMessage (consumer)

如果邮件使用者无法检索给定的邮件邮件,则此选项允许跳过邮件并继续进行 来检索下一个邮件。默认行为是消费者抛出异常,并且批处理中没有邮件可由 Camel 路由。

false

布尔值

unseen (consumer)

是否仅受不可预见的邮件的限制。

true

布尔值

exceptionHandler (consumer)

要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,其记录在 WARN 或 ERROR 级别中,并忽略。

 

ExceptionHandler

exchangePattern (consumer)

在消费者创建交换时设置交换模式。

 

ExchangePattern

fetchSize (consumer)

设置在轮询期间要消耗的最大消息数。如果邮箱文件夹包含大量邮件,这可用于避免过载邮件服务器。默认值 -1 表示没有获取大小,所有信息都会被使用。将值设为 0 是一个特殊角写,其中 Camel 将不会消耗任何消息。

-1

int

folderName (consumer)

要轮询的文件夹。

INBOX

字符串

mailUidGenerator (consumer)

可插拔 MailUidGenerator,允许使用自定义逻辑来生成邮件邮件的 UUID。

 

MailUidGenerator

mapMailMessage (consumer)

指定 Camel 是否应该将接收的邮件映射到 Camel body/headers。如果设置为 true,邮件邮件的正文将映射到 Camel IN 邮件的正文,邮件标头映射到 IN 标头。如果此选项设为 false,则 IN 消息包含原始 javax.mail.Message。您可以通过调用 exchange.getIn ().getBody (javax.mail.Message.class)来检索此原始消息。

true

布尔值

pollStrategy (consumer)

可插拔 org.apache.camel.PollingConsumerPollingStrategy 允许您提供自定义实施来控制在轮询操作期间通常会发生错误处理,然后再创建交换并在 Camel 中路由。

 

PollingConsumerPoll Strategy

postProcessAction (consumer)

指向 MailBoxPostProcessAction,用于在正常处理正常处理后对邮箱进行发布后处理任务。

 

MailBoxPostProcess Action

bcc (producer)

设置 BCC 电子邮件地址。使用逗号分隔多个电子邮件地址。

 

字符串

cc (producer)

设置 CC 电子邮件地址。使用逗号分隔多个电子邮件地址。

 

字符串

from (producer)

来自电子邮件地址

camel@localhost

字符串

replyTo (producer)

Reply-To 接收者(响应邮件的接收器)。使用逗号分隔多个电子邮件地址。

 

字符串

subject (producer)

发送的消息的主题。注:在标头中设置主题优先于这个选项。

 

字符串

to (producer)

设置 To 电子邮件地址。使用逗号分隔多个电子邮件地址。

 

字符串

javaMailSender (producer)

使用自定义 org.apache.camel.component.mail.JavaMailSender 来发送电子邮件。

 

JavaMailSender

additionalJavaMail Properties (advanced)

设置其他 java 邮件属性,这将根据所有其他选项附加/覆盖设置的任何默认属性。如果您需要添加一些特殊选项,但希望将其他选项保留原样,这将非常有用。

 

Properties

alternativeBodyHeader (advanced)

指定包含替代电子邮件正文的 IN 消息标头的密钥。例如,如果您以 text/html 格式发送电子邮件,并希望为非HTML 电子邮件客户端提供替代邮件正文,请将替代邮件正文设置为标头。

CamelMailAlternativeBody

字符串

attachmentsContentTransfer EncodingResolver (advanced)

使用自定义 AttachmentsContentTransferEncodingResolver 来解决要用于附件的 content-type-encoding。

 

AttachmentsContent TransferEncoding Resolver

绑定 (advanced)

设置用于从 Camel 消息转换到 Camel 消息和邮件的绑定

 

MailBinding

connectionTimeout (advanced)

连接超时(以毫秒为单位)。

30000

int

contentType (advanced)

邮件消息内容类型。对 HTML 邮件使用 text/html。

text/plain

字符串

contentTypeResolver (advanced)

确定文件附加的 Content-Type 解析器。

 

ContentTypeResolver

debugMode (advanced)

在底层邮件框架上启用调试模式。默认情况下,SUN 邮件框架将调试消息记录到 System.out 中。

false

布尔值

headerFilterStrategy (advanced)

使用自定义 org.apache.camel.spi.HeaderFilterStrategy 过滤标头。

 

HeaderFilterStrategy

ignoreUnsupportedCharset (advanced)

选项,可在发送邮件时让 Camel 忽略本地 JVM 中不支持的 charset。如果不支持 charset,则 charset=XXX (其中 XXX 代表不受支持的 charset)会从 content 类型中删除,它依赖于平台默认。

false

布尔值

ignoreUriScheme (advanced)

选项,可在发送邮件时让 Camel 忽略本地 JVM 中不支持的 charset。如果不支持 charset,则 charset=XXX (其中 XXX 代表不受支持的 charset)会从 content 类型中删除,它依赖于平台默认。

false

布尔值

会话 (advanced)

指定 camel 应该用于所有邮件交互的邮件会话。在邮件会话由某些其他资源创建和管理的情况(如 hundreds 容器)时很有用。如果没有指定,Camel 会自动为您创建邮件会话。

 

会话

同步 (advanced)

设置是否应严格使用同步处理,或者 Camel 允许使用异步处理(如果受支持)。

false

布尔值

useInlineAttachments (advanced)

是否使用分布内联或附加。

false

布尔值

idempotentRepository (filter)

可插拔存储库 org.apache.camel.spi.IdempotentRepository,它允许从同一邮箱使用集群,并让存储库协调邮件是否对消费者有效。默认情况下,不使用任何存储库。

 

IdempotentRepository

idempotentRepositoryRemove OnCommit (filter)

使用幂等存储库时,当邮件邮件被成功处理并提交后,消息 id 应该从幂等存储库(默认)中删除或保存在存储库中。默认情况下,它假定消息 id 是唯一的,并且没有要保存在存储库中的值,因为邮件消息将标记为 see/moved 或删除,以防止它再次被消耗。因此,将消息 id 存储在幂等存储库中,因此没有值。但是,此选项允许存储消息 id,因为您可能具有的任何原因。

true

布尔值

searchTerm (filter)

指的是 javax.mail.search.SearchTerm,它允许根据搜索条件(如主题、正文、来自、在特定日期后发送)过滤邮件。

 

SearchTerm

backoffErrorThreshold (scheduler)

在 backoffMultipler 应该 kick-in 之前发生的后续错误轮询(因为某些错误)的数量。

 

int

backoffIdleThreshold (scheduler)

在 backoffMultipler 应该 kick-in 之前应该发生的后续空闲轮询数量。

 

int

backoffMultiplier (scheduler)

如果一行中有很多后续空闲/errors,则让调度的轮询消费者避退。然后,倍数是在下一次实际尝试再次发生前跳过的轮询数量。当使用这个选项时,还必须配置 backoffIdleThreshold 和/或 backoffErrorThreshold。

 

int

delay (scheduler)

下一次轮询前的时间(毫秒)。

60000

long

greedy (scheduler)

如果启用了 greedy,如果上一个运行轮询 1 或更多消息,则 ScheduledPollConsumer 将立即运行。

false

布尔值

initialDelay (scheduler)

第一次轮询开始前的毫秒。您还可以使用单位来指定时间值,如 60s (60 秒)、5m30s (5 分钟和 30 秒)和 1h (1 小时)。

1000

long

runLoggingLevel (scheduler)

消费者在轮询时记录 start/complete log 行。这个选项允许您为其配置日志级别。

TRACE

LoggingLevel

scheduledExecutorService (scheduler)

允许配置用于消费者的自定义/共享线程池。默认情况下,每个使用者都有自己的单线程线程池。

 

ScheduledExecutor Service

scheduler (scheduler)

使用 camel-spring 或 camel-quartz2 组件的 cron 调度程序

none

ScheduledPollConsumer Scheduler

schedulerProperties (scheduler)

在使用自定义调度程序或任何基于 Spring 的调度程序时配置附加属性。

 

Map

startScheduler (scheduler)

调度程序是否应自动启动。

true

布尔值

timeUnit (scheduler)

initialDelay 和 delay 选项的时间单位。

MILLISECONDS

TimeUnit

useFixedDelay (scheduler)

控制是否使用固定延迟或固定率。详情请参阅 JDK 中的 ScheduledExecutorService。

true

布尔值

sortTerm (sort)

消息排序顺序。只有 IMAP 的原生支持。使用 POP3 或 IMAP 服务器没有 SORT 功能时,模拟到某种程度。

 

字符串

dummyTrustManager (security)

使用 dummy 安全设置来信任所有证书。应仅用于开发模式,而不用于生产环境。

false

布尔值

password (security)

用于登录的密码

 

字符串

sslContextParameters (security)

使用 SSLContextParameters 配置安全性。

 

SSLContextParameters

用户名 (安全性)

用于登录的用户名

 

字符串

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat