在JSF源代码中,我找到了通过facelets.Encoding属性定义字符编码的逻辑,它可以在FacesContext.getAttributes()中使用 . 有关详细信息,请参阅FaceletViewHandlingStrategy#getResponseEncoding方法 . 如何为FacesContext的实例定义此属性?我试图通过web.xml中的context-param来定义它,但它不起作用 . 而且我在JSF文档中也没有找到任何关于它的参考 .

我想要这样做的主要原因是它覆盖了javax.faces.request.charset值 . 我不想为我的应用程序定义一个特殊的过滤器来定义不是UTF-8编码 . 因为我的应用程序在大EAR中包含了很多WAR包 .