Spring 移植到WebLogic10上出现的Log4j.properties错误

问题是在Tomcat移植到Weblogic10上出现的问题,主要原因就是Spring Hibernate与WebLogic包的冲突造成的,但是我进行了很多尝试,仍然不能解决这个问题。

以下是我所使用的Log4j配置,在Tomcat下运行都是正常的:

 
  1. ### direct log messages to stdout ###   
  2. log4j.appender.stdout=org.apache.log4j.ConsoleAppender   
  3. log4j.appender.stdout.Target=System.out   
  4. log4j.appender.stdout.layout=org.apache.log4j.PatternLayout   
  5. log4j.appender.stdout.layout.ConversionPattern=%d - %c -%-4r [%t] %-5p %c %x - %m%n   
  6.   
  7. ### direct messages to file MaxBackup test.log ###   
  8. log4j.appender.file=org.apache.log4j.RollingFileAppender   
  9. log4j.appender.file.File=test.log   
  10. log4j.appender.file.MaxFileSize=100KB   
  11. log4j.appender.file.MaxBackupIndex=1  
  12. log4j.appender.file.layout=org.apache.log4j.PatternLayout   
  13. log4j.appender.file.layout.ConversionPattern=%d - %c -%-4r [%t] %-5p %c %x - %m%n   
  14.   
  15. ### set log levels - for more verbose logging change 'INFO' to 'DEBUG' ###   
  16. log4j.rootLogger=DEBUG,stdout,file   
  17. log4j.logger.org.hibernate=error   
  18. log4j.logger.org.springframework=error   
  19. log4j.logger.org.apache=error   
  20. log4j.logger.org.apache=error   
  21.   
  22. ### log JDBC bind parameters ###   
  23. log4j.logger.org.hibernate.type=error  

1.Spring2.0.5运行于WebLogic10上
  在服务器上很难成功的打印出log 一般只能生成一次Log,就是在domain管理器启动的时候,然后将我生成的test.log删除后,就不会再次生成Log

2.Spring2.0.5 运行于WebLogic10上,使用Spring  Log4jConfigServlet自定义加载Log4j
   方法参考:http://blog.csdn.net/zhizhesky/archive/2007/06/02/1634908.aspx 上面提供的配置,但是仍然无效,并且抛出Cannot set web app root system property when WAR file is not expanded这样严重的错误。错误原因是明显的,由于WebLogic上获得资源文件时不能采用getRealPath("/")这样的方法,但是考虑到这种不兼容对系统的潜在威胁,我决定直接放弃Spring2.0.5(目前使用Spring2.0.5只是因为Spring提供的快速加载Beans的好处,而没有使用Spring2提供的自定义xml和AspectJ风格的AOP配置,所以降级没有什么问题)。
3.Spring-on-wls 1.2.5 运行于Webogic10上
   由于WebLogic与Sping冲突非常多,所以被迫采用Spring版本降级,采用bea官方提供的Spring-on-wls 1.2.5来进行系统集成,为的是减少更多潜在的兼容性问题。
  但是使用以后仍然没有获得满意的效果,而且出现了更为奇怪的错误情况:
  A.首次更换spring.jar,系统正常运行Log文件test.log正常输出,但是我重新deploy以后就出现Log4j的错误警告:

   log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader).
   log4j:WARN Please initialize the log4j system properly.

     仍然是Spring与Weblogic的冲突造成,我晕,没办法,做一次修改,将log4j.properties进行修改,将log4j.logger.org.springframework=error注释掉,结果运行正常,日志也正常打出,但是这样在debug级别Spring的所有日志都会被打出,造成服务器启动异常缓慢。
  无奈,将刚才的配置释放,这次不再出现上面的警告,而是出现了更奇怪的现象,Hibernate的所有debug日志都打出,比Spring的所有debug还慢许多!我吐血……

     这个问题已经搞了我一个星期了,实在是没有办法解决,所以拿出来请大家,谢谢了先!就目前的情况Spring Hibernate移植到Weblogic上将会有更多不可预知的麻烦发生,紧张ing……

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值