10.2. 配置自定义传输
				使用标准邮件服务器(如 POP3 或 IMAP)时,邮件服务器具有一组可以定义的属性。其中一些属性是必需的。其中最重要的是 出站-socket-binding-ref,它是对出站邮件套接字绑定的引用,通过主机地址和端口号定义。
			
				对于使用多个主机进行负载平衡的用户,定义 出站-socket-binding-ref 可能不是最有效的解决方案。标准 Jakarta Mail 不支持使用多个主机进行负载平衡的主机配置。因此,使用多个主机进行此配置的用户需要实施自定义邮件传输。这些自定义邮件传输不需要 出站-socket-binding-ref,也允许自定义主机属性格式。
			
您可以从管理 CLI 配置自定义邮件传输。
- 添加新邮件会话并指定 JNDI 名称。 - /subsystem=mail/mail-session=mySession:add(jndi-name=java:jboss/mail/MySession) - /subsystem=mail/mail-session=mySession:add(jndi-name=java:jboss/mail/MySession)- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 添加出站套接字绑定并指定主机和端口。 - /socket-binding-group=standard-sockets/remote-destination-outbound-socket-binding=my-smtp-binding:add(host=localhost, port=25) - /socket-binding-group=standard-sockets/remote-destination-outbound-socket-binding=my-smtp-binding:add(host=localhost, port=25)- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 添加 SMTP 服务器并指定出站套接字绑定、用户名和密码。 - /subsystem=mail/mail-session=mySession/server=smtp:add(outbound-socket-binding-ref=my-smtp-binding, username=user, password=pass, tls=true) - /subsystem=mail/mail-session=mySession/server=smtp:add(outbound-socket-binding-ref=my-smtp-binding, username=user, password=pass, tls=true)- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
您可以使用类似的步骤配置 POP3 或 IMAP 服务器。
POP3 服务器
/socket-binding-group=standard-sockets/remote-destination-outbound-socket-binding=my-pop3-binding:add(host=localhost, port=110) /subsystem=mail/mail-session=mySession/server=pop3:add(outbound-socket-binding-ref=my-pop3-binding, username=user, password=pass)
/socket-binding-group=standard-sockets/remote-destination-outbound-socket-binding=my-pop3-binding:add(host=localhost, port=110)
/subsystem=mail/mail-session=mySession/server=pop3:add(outbound-socket-binding-ref=my-pop3-binding, username=user, password=pass)IMAP 服务器
/socket-binding-group=standard-sockets/remote-destination-outbound-socket-binding=my-imap-binding:add(host=localhost, port=143) /subsystem=mail/mail-session=mySession/server=imap:add(outbound-socket-binding-ref=my-imap-binding, username=user, password=pass)
/socket-binding-group=standard-sockets/remote-destination-outbound-socket-binding=my-imap-binding:add(host=localhost, port=143)
/subsystem=mail/mail-session=mySession/server=imap:add(outbound-socket-binding-ref=my-imap-binding, username=user, password=pass)要使用自定义服务器,请创建不含出站套接字绑定的自定义邮件服务器。您可以在自定义邮件服务器的属性定义中指定主机信息。例如:
/subsystem=mail/mail-session=mySession/custom=myCustomServer:add(username=user,password=pass, properties={"host" => "myhost", "my-property" =>"value"})
/subsystem=mail/mail-session=mySession/custom=myCustomServer:add(username=user,password=pass, properties={"host" => "myhost", "my-property" =>"value"})
				如果您定义了自定义协议, 则包含句点(.)的任何属性名都将被视为完全限定名称,并直接传递。任何其他格式,如 my-property, 都使用以下格式进行转换:mail .server-name.my-property。
			
以下 XML 是包含自定义服务器的邮件配置示例: