1

我正在查看由tomcat加载的spring的输出,并且有一些非常奇怪的东西......一切都是重复的。什么会导致这个?不管是什么,它都会导致我的应用程序以奇怪的方式运行。

附加信息:

该应用程序是一个网络应用程序。所有 spring 信息都使用 web.xml 文件中定义的上下文加载器(?)加载。我的配置文件分为 6 个(左右)文件。

示例调试输出:

[DEBUG,DefaultFilterInvocationDefinitionSource,main] 添加 URL 模式:/ **;属性:[REQUIRES_SECURE_CHANNEL]

[DEBUG,DefaultFilterInvocationDefinitionSource,main] 添加 URL 模式:/ **;属性:[REQUIRES_SECURE_CHANNEL]

[DEBUG,DefaultFilterInvocationDefinitionSource,main] 添加 URL 模式:/ **;属性:[ROLE_READ,ROLE_UPDATE]

[DEBUG,DefaultFilterInvocationDefinitionSource,main] 添加 URL 模式:/ **;属性:[ROLE_READ,ROLE_UPDATE]

[DEBUG,AbstractFallbackMethodDefinitionSource,main] 添加安全方法 [CacheKey[com.service.impl.FooServiceImpl; public abstract java.lang.Boolean com.service.IFooService.saveOrUpdateFoo(com.model.Foo2,java.lang.String) throws org.springframework.dao.DataAccessException]] 带有属性 [[ROLE_UPDATE]]

[DEBUG,AbstractFallbackMethodDefinitionSource,main] 添加安全方法 [CacheKey[com.service.impl.FooServiceImpl; public abstract java.lang.Boolean com.service.IFooService.saveOrUpdateFoo(com.model.Foo2,java.lang.String) throws org.springframework.dao.DataAccessException]] 带有属性 [[ROLE_UPDATE]]

[INFO,AbstractSecurityInterceptor,main] 验证的配置属性

[INFO,AbstractSecurityInterceptor,main] 验证的配置属性

4

4 回答 4

2

您确定日志配置中的某些内容没有将每个类别/记录器多次添加到附加程序中吗?

这对于 log4j 来说是可能的,不确定 JCL 或最新版本的 Tomcat 在封面下使用的任何内容。

于 2008-10-28T19:57:26.460 回答
0

这里的答案和评论很可能是正确的。

将您的 log4j 配置作为更新/编辑发布到您的问题,然后我将修复作为更新/编辑发布到我的答案。

于 2009-01-04T16:12:44.907 回答
0

在 Tomcat 中,如果您的应用程序被配置为默认应用程序,则它必须部署在 /root 目录下。如果没有,那么 Tomcat 将启动您的应用程序的 2 个副本,一个是您放置它的位置,另一个是它期望的默认位置。

假设我正确地记得所有这些,这可以解释这里发生的事情。

于 2008-11-04T18:14:01.107 回答
0

我和你遇到同样的问题,只是log4j配置问题,这是我原来的配置

<category name="org.springframework">
    <level value="INFO"></level>
    <appender-ref ref="basicAppender" />
</category>

在此配置中,包 org.springframework 中的所有类都将记录一次,由于我没有将 additivity 属性设置为 false,记录器“org.springframework”将再次记录,结果所有日志都重复了。所以我只是将 additivity 属性设置为 false,它就可以工作了。嗯,这只是我的情况,希望对你有帮助。

于 2010-04-19T14:54:00.507 回答