幫着他找了一些方法,都不行。
後來搜到一篇英文文檔,是水晶報表的一個Bug,每次調用open方法後,水晶報表都會把Log4j的默認輸出級別變成Error。
解決辦法:
在調用open之前,記錄默認輸出級別,在調用open之後,把默認輸出級別改回去。
參考網址:http://support.businessobjects.com/forums/message.asp?fid=582&sk=20&ps=50&pn=1&mid=156125#m156125
參考代碼:
rootLogger=LogManager.getRootLogger();
Level originalLevel = rootLogger.getLevel();
clientDoc.open(file, 0);
Level modifiedLevel = rootLogger.getLevel();
System.out.println("original level: "+originalLevel);
System.out.println("modified level: "+modifiedLevel);
rootLogger.setLevel(originalLevel);