Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Email 以编程方式呈现facelets(或如何使用facelets呈现电子邮件)_Email_Jsf 2_Jsf 2.2 - Fatal编程技术网

Email 以编程方式呈现facelets(或如何使用facelets呈现电子邮件)

Email 以编程方式呈现facelets(或如何使用facelets呈现电子邮件),email,jsf-2,jsf-2.2,Email,Jsf 2,Jsf 2.2,我想使用facelets作为标记引擎来发送电子邮件。这些电子邮件可以在HttpServeletRequest的上下文中生成,也可以在HttpServeletRequest之外生成(即在另一个线程中) 从我所读到的,唯一的方法是“黑客”请求(),它有几个不一致之处。。。它只能在请求线程内完成,在ajax请求中无法正常工作(使用myfaces 2.2.8进行了尝试) 另一种方法是使用一个幂等URL来呈现标记,但这也有一些不足之处:任何中间数据都必须作为请求参数传递或在viewAction中初始化,这

我想使用facelets作为标记引擎来发送电子邮件。这些电子邮件可以在HttpServeletRequest的上下文中生成,也可以在HttpServeletRequest之外生成(即在另一个线程中)

从我所读到的,唯一的方法是“黑客”请求(),它有几个不一致之处。。。它只能在请求线程内完成,在ajax请求中无法正常工作(使用myfaces 2.2.8进行了尝试)

另一种方法是使用一个幂等URL来呈现标记,但这也有一些不足之处:任何中间数据都必须作为请求参数传递或在viewAction中初始化,这并不总是容易的,sessionId必须模拟

有没有一种简单的方法可以做到这一点,或者我应该远离facelets,使用另一个标记引擎来呈现电子邮件


(myfaces 2.2.8)

即将推出的OmniFaces 2.2为
组件中的组件添加了新的实用方法
类:
字符串mailHtml=Components.encodeHtml(Components.buildView(“/WEB-INF/mail template.xhtml”)这是否满足您的需求?显然,当
FacesContext
可用时必须执行此操作。我认为可以,但我应该如何添加一些参数?。。。一些图像的CID字符串?我应该在请求范围内设置它们,然后再恢复请求吗?只需按照通常的方式设置一些bean属性。它运行在同一个请求中,但构建在不同的faces上下文中。好的,看起来不错,我会尝试让您知道。非常感谢。我对此有些问题。在ajax请求中使用它不起作用,它呈现:。。。。ajax响应是空的