在JSF 1.2中,我如何改变RenderResponsePhase的日志级别?



我在系统输出中得到以下消息:"FacesMessage(s)已被排队...."。

Sun的JavaServer Faces实现(1.2_07-b03-FCS)的解决方案是将此添加到web.xml:

<context-param>
    <description>
    Set to true to disable the following warning message:
    FacesMessage(s) have been enqueued, but may not have been displayed
    </description>
    <param-name>com.ibm.ws.jsf.disableEnqueuedMessagesWarning</param-name>
    <param-value>true</param-value>
</context-param>

但是由于某种原因,该解决方案不能与我正在使用的这个实现一起工作银鲈(1.2 _15-b01-fcs)。

这个文档说我需要简单地改变RenderResponsePhase的记录器。
消息已被编码…

本质上,我想我问的是什么是记录器类我需要配置的RenderResponsePhase

该上下文参数特定于IBM的Faces Client Framework,它是WebSphere的一部分。但你好像根本不用它。没有必要添加context参数。把它全部去掉

Mojarra使用java.util.logging API作为记录器。JSF生命周期日志记录器的名称(RenderResponsePhase正在使用)是:

javax.enterprise.resource.webcontainer.jsf.lifecycle

日志通过JRE/lib/logging.properties文件配置。首先需要确定服务器环境使用的是什么JRE(注意:JDK也有JRE!),然后相应地编辑其JRE/lib/logging.properties文件,添加以下行:

javax.enterprise.resource.webcontainer.jsf.lifecycle.level = WARNING

将可记录级别1设置为"WARNING"。"FacesMessage(s)已被排队"消息是一个"INFO"消息。您需要重新启动服务器(以及IDE,如果有的话!)以使更改生效。

然而,我想知道禁用该功能有多有用。

你试图隐藏的"问题"的根本原因可能已经得到了更好的解决。

相关内容

  • 没有找到相关文章

最新更新