对应的 JSF 代码是什么
<a href="mailto:me@domain.com?subject=Sample subject&body=test&cc=cc@domain.com">Send mail</a>
哪个会向用户打开 Outlook 邮箱并预填邮件模板?
假设您使用的是 JSF 1.2 或更新版本,您可以在 JSF 页面中使用完全相同的 HTML 代码。
<a href="mailto:me@domain.com?subject=Sample subject&body=test&cc=cc@domain.com">Send mail</a>
如果您打算根据 JSF 表单中的值预填充它,那么您需要将重定向发送到该 URL。
public void submit() throws IOException {
// ...
ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext();
externalContext.redirect(String.format(
"mailto:me@domain.com?subject=%s&body=%s&cc=cc@domain.com",
URLEncoder.encode(subject, "UTF-8"),
URLEncoder.encode(body, "UTF-8")));
}
请注意,这并不一定要在 Outlook 中准备邮件。它只是在客户端自己的默认邮件客户端中准备邮件,这可能不是 Outlook 本身。例如,它可能是 Thunderbird 甚至是 Gmail。另请注意,您无法控制该部分。