38.3. 组件选项
邮件组件支持 43 选项,如下所列。
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
bridgeErrorHandler (consumer) | 允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
closeFolder (consumer) | 消费者是否在轮询后关闭文件夹。将这个选项设置为 false,也具有 disconnect=false,然后消费者在轮询之间保持文件夹打开。 | true | 布尔值 |
CopyTo (consumer) | 处理邮件后,它可以复制到具有指定名称的邮件文件夹中。您可以使用键 copyTo 的标头覆盖此配置值,允许您将消息复制到运行时配置的文件夹名称。 | 字符串 | |
decodeFilename (consumer) | 如果设置为 true,则使用 MimeUtility.decodeText 方法来解码文件名。这与设置 JVM 系统属性 mail.mime.encodefilename 类似。 | false | 布尔值 |
delete (consumer) | 在消息被处理后删除消息。这可以通过在邮件中设置 DELETED 标志来完成。如果为 false,则设置 SEEN 标志。从 Camel 2.10 开始,您可以通过使用键 delete 设置标头来覆盖此配置选项,以确定是否应该删除邮件。 | false | 布尔值 |
disconnect (consumer) | 消费者在轮询后是否应断开。如果启用此选项,它会强制 Camel 在每个轮询连接。 | false | 布尔值 |
handleFailedMessage (consumer) | 如果邮件使用者无法检索给定的邮件消息,则此选项允许处理消费者的错误处理程序导致的异常。通过在消费者上启用网桥错误处理程序,然后 Camel 路由错误处理程序可以处理异常。默认行为是消费者抛出异常,并且批处理中的邮件无法由 Camel 路由。 | false | 布尔值 |
mimeDecodeHeaders (consumer) | 这个选项启用对邮件标头的透明 MIME 解码和取消处理。 | false | 布尔值 |
moveTo (consumer) | 处理邮件后,它可以移到具有指定名称的邮件文件夹中。您可以使用键 moveTo 的标头来覆盖此配置值,允许您将消息移到运行时配置的文件夹名称。 | 字符串 | |
peek (consumer) | 在处理邮件之前,会将 javax.mail.Message 标记为 peeked。这只适用于 IMAPMessage 消息类型。通过使用将邮件标记为 SEEN 的邮件,这允许我们在 Camel 中存在错误处理,请回滚邮件。 | true | 布尔值 |
skipFailedMessage (consumer) | 如果邮件使用者无法检索给定的邮件邮件,此选项允许跳过邮件并继续检索下一个邮件。默认行为是消费者抛出异常,并且批处理中的邮件无法由 Camel 路由。 | false | 布尔值 |
unseen (consumer) | 是否只通过不可预测的邮件限制。 | true | 布尔值 |
fetchSize (consumer (advanced)) | 设置轮询期间要消耗的最大消息数。如果载体文件夹包含很多消息,这可用于避免过载邮件服务器。默认值 -1 表示没有获取大小,所有信息都会被消耗。将值设为 0 是一个特殊的地方,Camel 根本不消耗任何消息。 | -1 | int |
folderName (consumer (advanced)) | 要轮询的文件夹。 | INBOX | 字符串 |
mapMailMessage (consumer (advanced)) | 指定 Camel 是否应该将收到的邮件映射到 Camel body/headers/attachments。如果设置为 true,邮件邮件的正文将映射到 Camel IN 消息的正文,邮件标头将映射到 IN 标头,并附加至 Camel IN attachment 消息。如果此选项设为 false,则 IN 消息包含原始 javax.mail.Message。您可以通过调用 exchange.getIn ().getBody (javax.mail.Message.class)来检索此原始消息。 | true | 布尔值 |
bcc (producer) | 设置 BCC 电子邮件地址。使用逗号分隔多个电子邮件地址。 | 字符串 | |
CC (producer) | 设置 CC 电子邮件地址。使用逗号分隔多个电子邮件地址。 | 字符串 | |
from (producer) | 来自电子邮件地址。 | camel@localhost | 字符串 |
lazyStartProducer (producer) | 生成者是否应懒惰启动 (在第一个消息中)。通过懒惰启动,您可以使用此选项来允许 CamelContext 和路由在生成者启动期间启动,并导致路由启动失败。通过懒惰启动,启动失败可以在路由信息时通过 Camel 的路由错误处理程序进行处理。请注意,在处理第一个消息时,创建并启动生成者可能需要稍等时间,并延长处理的总处理时间。 | false | 布尔值 |
replyTo (producer) | Reply-To receivers (响应邮件的接收器)。使用逗号分隔多个电子邮件地址。 | 字符串 | |
subject (producer) | 正在发送的消息的主题。注: 在标头中设置主题优先于这个选项。 | 字符串 | |
to (producer) | 设置 To email address。使用逗号分隔多个电子邮件地址。 | 字符串 | |
javaMailSender (producer (advanced)) | 使用自定义 org.apache.camel.component.mail.JavaMailSender 来发送电子邮件。 | JavaMailSender | |
additionalJavaMailProperties (advanced) | 设置额外的 java 邮件属性,这将附加/覆盖基于所有其他选项设置的任何默认属性。如果您需要添加一些特殊选项,但希望保留其他特殊选项,这非常有用。 | Properties | |
alternativeBodyHeader (advanced) | 指定包含替代电子邮件正文的 IN 消息标头的密钥。例如,如果您以文本/html 格式发送电子邮件,并希望为非 HTML 电子邮件客户端提供替代邮件正文,请将此密钥的替代邮件正文设置为标头。 | CamelMailAlternativeBody | 字符串 |
attachmentsContentTransferEncodingResolver (advanced) | 要使用自定义将ContentTransferEncodingResolver 解决用于附件的 content-type-encoding。 | AttachmentsContentTransferEncodingResolver | |
authenticator (advanced) | 用于登录的验证器。如果设置,则忽略密码和用户名。可用于可过期的令牌,因此必须动态读取。 | MailAuthenticator | |
autowiredEnabled (advanced) | 是否启用自动关闭。这用于自动关闭选项(选项必须标记为 autowired),方法是在 registry 中查找查找是否有单个匹配类型实例,然后在组件上配置。这可以用于自动配置 JDBC 数据源、JMS 连接工厂、AWS 客户端等。 | true | 布尔值 |
配置 (高级) | 设置邮件配置。 | MailConfiguration | |
connectionTimeout (advanced) | 连接超时(毫秒)。 | 30000 | int |
contentType (advanced) | 邮件消息内容类型。将 text/html 用于 HTML 邮件。 | text/plain | 字符串 |
contentTypeResolver (advanced) | 用于确定文件附加的 Content-Type 的解析器。 | ContentTypeResolver | |
debugMode (advanced) | 在底层邮件框架中启用调试模式。SUN 邮件框架默认将调试信息记录到 System.out。 | false | 布尔值 |
ignoreUnsupportedCharset (advanced) | 选项使 Camel 在发送邮件时忽略本地 JVM 中不支持的 charset。如果 charset 不支持,则 charset=XXX (其中 XXX 代表不受支持的 charset)已从 content-type 中删除,它依赖于平台默认。 | false | 布尔值 |
ignoreUriScheme (advanced) | 选项使 Camel 在发送邮件时忽略本地 JVM 中不支持的 charset。如果 charset 不支持,则 charset=XXX (其中 XXX 代表不受支持的 charset)已从 content-type 中删除,它依赖于平台默认。 | false | 布尔值 |
javaMailProperties (advanced) | 设置 java 邮件选项。将清除任何默认属性,并且仅使用为此方法提供的属性。 | Properties | |
Session (advanced) | 指定 camel 应用于所有邮件交互的邮件会话。在由某些其他资源(如 IaaS 容器)创建和管理邮件会话的情况下很有用。使用自定义邮件会话时,将使用邮件会话中的主机名和端口(如果在会话中配置)。 | 会话 | |
useInlineAttachments (advanced) | 是否使用内联或附加。 | false | 布尔值 |
HeaderFilterStrategy (filter) | 使用自定义 org.apache.camel.spi.HeaderFilterStrategy 将标头过滤到或从 Camel 消息过滤。 | HeaderFilterStrategy | |
密码 (安全) | 登录的密码。另请参阅 setAuthenticator (MailAuthenticator)。 | 字符串 | |
sslContextParameters (security) | 使用 SSLContext 参数配置安全性: | SSLContextParameters | |
useGlobalSslContextParameters (security) | 启用使用全局 SSL 上下文参数。 | false | 布尔值 |
用户名 (安全) | 用于登录的用户名。另请参阅 setAuthenticator (MailAuthenticator)。 | 字符串 |