2013-12-16 32 views
1

在CQ5中使用定製的電子郵件模板時,我在以下文本文件中創建了etc/notification下的文件。用戶填寫表單時觸發工作流程。CQ5中的「字符串中的非法地址」電子郵件模板javax.mail

From: Order Brochure <[email protected]> 
To: ${payload.email} 
CC: 
Subject: Order Brochures Confirmation ${payload.BrochureID} 

Dear ${payload.Name}, 

Thank you for your Brochure Order, your reference is ${payload.orderBrochureID}. 
Your email address is {$payload.email}. 

除了「To:$ {payload.email}」,此模板中的所有內容都可以正常工作。即使是「您的電子郵件地址是{$ payload.email}」部分也會顯示用戶輸入的電子郵件地址。如果我在「收件人:」中輸入一個靜態電子郵件地址,它也可以工作。

我在這裏做錯了什麼?以下是日誌中的錯誤

Process execution resulted in an error: 
javax.mail.internet.AddressException: Illegal address in string ``'' 
com.day.cq.workflow.WorkflowException: javax.mail.internet.AddressException: Illegal 
address in string ``'' 
+0

這是一個自定義的工作流步驟或者是它的com.day.cq.collab.commons.SendEmailProcess一步? –

+0

這是一個自定義工作流程步驟 – mmmpieee

+0

如果這是自定義工作流程步驟,您能否提供解析互聯網地址的代碼?您收到的錯誤消息是空錯誤。這似乎表明您正在試圖在爲字符串替換實用程序應用映射之前提取「到」地址。 –

回答

0

刪除「CC:」它試圖解析這個頭的電子郵件地址,它是空的。

當您在CQ庫中發生錯誤時處理這些類型的問題時。我建議使用自定義記錄器來協助解決問題。測井

詳情可Logging - docs.day.com

發現這裏是你的問題的示例OSGi的日誌配置。

Logging Example

+0

刪除CC已工作。 將嘗試您建議的登錄方法。謝謝。 – mmmpieee

0

由於您使用字符串作爲Internet地址,因此可能會導致此錯誤。 您需要將$ {payload.email}轉換爲Internet地址。

+0

你能否詳細說明如何以.txt格式來做到這一點? – mmmpieee

+0

我建議對於JSP而不是.txt格式?請詳細說明你的問題? – amitdeol

相關問題