浏览 5642 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-11-26
前几天搭建了一个框架: 配置 struts2 spring2 ibatis
搭建完成后,写了些测试都通过,添加了log4j 的日志输出,昨天朋友说,出现异常后,一样直接抛到jsp页面了,控制台干干净净的,没有任何错误! 今天我就看了一下,开始以为是log4j日志级别设置的问题,网上找了很多资料,只有提问没有回答!
最后自己也找了写了个示例,发现 基本的 NullPointerException 异常也不能在控制台输出
查看资料后发现对于RuntimeException 是可以在控制台输出的,但是这里没有输出堆栈信息
public String deleteUser(){ int count=userService.deleteUser(user.getUser_id()); log.info("测试 spring 注入 Dao end"); log.info("-------------级别"); log.info("info"); log.warn("warn"); log.debug("debug"); log.error("error"); System.out.println("levle:"+log.getLevel()); log.info("-------------级别"); if(1==count){ return SUCCESS; }else{ return ERROR; } }
以上代码 在user为 null ,这里就会出错了!可是控制台 没有错误信息,加上 try catch 之后,控制台才可以打出! 解决不了?
希望高手指点一下,是不是哪里配置错了?好久没用使用SSH框架了,这突然用遇到不少问题!是不是版本升级需要在哪里配置? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2012-11-26
see下你log4j.properties
|
|
返回顶楼 | |
发表时间:2012-11-27
# The five logging levels used by Log are (in order):
# # 1. DEBUG (the least serious) # 2. INFO # 3. WARN # 4. ERROR # 5. FATAL (the most serious) # Set root logger level to INFO and append to stdout log4j.rootLogger=INFO,stdout,file # stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d %5p (%c:%L) - %m%n # file log4j.appender.file=org.apache.log4j.DailyRollingFileAppender log4j.appender.file.File=orderMeal.log log4j.appender.file.DatePattern='.'yyyyMMdd'.log' log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n # my log4j.logger.com.om=INFO log4j.logger.com.opensymphony=INFO log4j.logger.org.apache=INFO log4j.logger.org.springframework=INFO log4j.logger.com.ibatis = DEBUG log4j.logger.com.ibatis.common.jdbc.SimpleDataSource = DEBUG log4j.logger.com.ibatis.common.jdbc.ScriptRunner = DEBUG log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate = DEBUG log4j.logger.java.sql.Connection = DEBUG log4j.logger.java.sql.Statement = DEBUG log4j.logger.java.sql.PreparedStatement = DEBUG log4j.logger.java.sql.ResultSet = DEBUG |
|
返回顶楼 | |
发表时间:2012-11-28
貌似没什么问题
|
|
返回顶楼 | |
发表时间:2012-11-28
检查一下你的各个版本JAR。遇到过一次不打印日志的情况,控制台只打印SQL Insert的操作,其他如update等日志不显示,后来换了个版本,发现是mybatis版本问题....
|
|
返回顶楼 | |
发表时间:2012-11-28
当然该记录的日志是mybatis应该写出来的,结果其没写出来,所以找Mybatis的茬,你可用一样找..
|
|
返回顶楼 | |