标题大小超过固定的最大大小

时间:2017-11-02 14:32:13

标签: email size sap cloud-integration

我有一个SAP HCI场景,我最后发送一封附有XML响应的电子邮件。我收到此错误,虽然文件大小为20kb,并且只有一个接收器。

com.sun.mail.smtp.SMTPSendFailedException:552 5.3.4标题大小超过固定的最大大小

1 个答案:

答案 0 :(得分:1)

好的,我明白了:

CPI-PI SMTP adapter configuration

这是SMTP适配器通道特定的配置。按设计开发者必须选择附件和标题的来源是唯一的好选择(不是属性,这是可惜的)。

CPI邮件的所有标题都转移到了SMTP(我的设计不好),因此您的限制是由于指定的附件或任何其他标题而发生的。

为了证明我的假设,我创建了两个标题:aa长度小,ab长文本:

msg.setHeader('aa', "<?xml version='1.0'?><root>" + "a"*256 + "</root>")
msg.setHeader('ab', "<?xml version='1.0'?><root>" + "a"*1024*30 + "</root>")

然后,我将邮件发布到云内部SMTP,并收到退回邮件:

This message was created automatically by the SMTP relay on XXXXXXXXXXXXXXXX.

A message that you sent could not be delivered to all of its recipients.
The following address(es) failed:

  ilya.kuznetsov@domain
    SMTP error from remote mail server after MAIL FROM:<ilya.kuznetsov@domain> SIZE=4019:
    host XXXXXXXXXXXX [1.1.1.1]: 550 Administrative prohibition 2017-11-03-121-56439fc44a7dc0b43c28074ed7efe877

------ This is a copy of the message, including all the headers. ------

Return-path: <ilya.kuznetsov@domain>
...
Date: Fri, 3 Nov 2017 12:00:20 +0000 (UTC)
From: ilya.kuznetsov@domain
To: ilya.kuznetsov@domain
Subject: Hello world 2017-11-03T12:00:19.019Z
MIME-Version: 1.0
Content-Type: multipart/mixed; 
    boundary="----=_Part_69_482225443.1509710419985"
aa: <?xml version='1.0'?><root>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</root>
ab: <?xml version='1.0'?><root>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</root>
SAP_MessageProcessingLogID: AFn8WlOMHKwYXS0KJbCcva0BG9Wh
SAP_MplCorrelationId: AFn8WlOmx_9yZFXocsPbBYIjesC9
SAP_PregeneratedMplId: AFn8WlPK-r5wMnCqVPDM-nHhsvmo
scriptFile: stackoverflow_47077818.groovy
scriptFileType: groovy

------=_Part_69_482225443.1509710419985
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

Hello world body
------=_Part_69_482225443.1509710419985
Content-Type: application/xml; name=aa
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=aa

<?xml version='1.0'?><root>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</root>
------=_Part_69_482225443.1509710419985--

因此,正如您所看到的那样,在SMTP会话期间传输了不用于该字母的不相关标头,这可能是您出错的原因。

更好的方法是使用简单的Groovy脚本和普通的Javamail代码。