gpt4 book ai didi

websphere - 在 WebSphere 上使用 slf4j 进行 OpenJPA 日志记录

转载 作者:行者123 更新时间:2023-12-03 17:57:36 25 4
gpt4 key购买 nike

我的 Java EE 6 应用程序使用带有 logback 的 slf4j 作为日志框架。
现在我想将 OpenJpa 的 SQL 跟踪添加到我的日志文件中。 OpenJpa-Documentation 说,我可以使用一个参数:

<property name="openjpa.Log" value="slf4j"/>

我使用 WebSphere Application Server v8.0.0.1 作为 Java EE 容器。如果我将应用程序部署到服务器,则此参数不会更改任何内容。我可以在 WebSphere Admin Console 中更改日志级别,这很好用。但是不能绕过 OpenJpa 日志记录到我的 slf4j 框架。

有没有人使用这样的配置并解决了问题?

顺便提一句。我知道,信息中心-文章 http://publib.boulder.ibm.com/infocenter/wasinfo/v8r0/index.jsp?topic=%2Fcom.ibm.websphere.nd.doc%2Finfo%2Fae%2Fae%2Ftejb_jpatroubleshoot.html
说,参数将被忽略,但一切都应该是可能的,嗯?

最佳答案

我不知道 WAS 8.0 中嵌入了什么版本的 OpenJPA。

在 OpenJPA 1.x 中,不可能使用“slf4j”。一种解决方法是复制类 org.apache.openjpa.lib.log.SLF4JLogFactory从 OpenJPA 2.x 源代码到您的应用程序并直接使用它:

<property name="openjpa.Log" value="org.apache.openjpa.lib.log.SLF4JLogFactory"/>

您可以 总是 直接指定工厂类名称,短名称只是一个方便的技巧。

在 OpenJPA 2.x 中 SLF4JLogFactory存在,因此它应该适用于您当前的设置;也许你把它设置在一个被其他配置覆盖的地方?例如,如果您通过 EntityManagerFactory 配置 JPA的 propertyMap,它优先于 persistence.xml 中的设置.

关于websphere - 在 WebSphere 上使用 slf4j 进行 OpenJPA 日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8703105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com