在错误模式下使用log4j进行Docx4j日志记录

时间:2015-09-15 22:44:15

标签: java logging log4j docx4j

我使用docx4j从模板创建一些docx文件。 但它在生成时会不断产生一些令人讨厌的记录。

这是我的log4j.properties文件

log4j.rootLogger=ERROR, consoleAppender, fileAppender

log4j.appender.consoleAppender=org.apache.log4j.ConsoleAppender
log4j.appender.consoleAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.consoleAppender.layout.ConversionPattern=%-5p %c %x - %m%n

log4j.appender.fileAppender=org.apache.log4j.RollingFileAppender
log4j.appender.fileAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.fileAppender.layout.ConversionPattern=[%t] %-5p %c %x - %m%n
log4j.appender.fileAppender.File=${catalina.base}/logs/imob86.log

我的docx4j.properties文件

docx4j.PageSize=LETTER
docx4j.PageMargins=NORMAL
docx4j.PageOrientationLandscape=false

docx4j.App.write=true
docx4j.Application=docx4j
docx4j.AppVersion=2.7

docx4j.dc.write=true
docx4j.dc.creator.value=docx4j
docx4j.dc.lastModifiedBy.value=docx4j

docx4j.Log4j.Configurator.disabled=true

这是生成日志记录的代码

WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(new java.io.File(pathTemplate));
VariablePrepare.prepare(wordMLPackage);
MainDocumentPart documentPart = wordMLPackage.getMainDocumentPart();
documentPart.variableReplace(mappings);

我已经搜索过并发现有人建议使用此解决方案,但它对我没有用,因为我还没找到Log4jConfigurator

Docx4jProperties.getProperties().setProperty(
"docx4j.Log4j.Configurator.disabled", "true");
Log4jConfigurator.configure();

有没有人有其他解决方案? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

正如JasonPlutext上面说的那样,问题是docx4j使用slf4j而不是log4j。添加了slf4j-log4j12-1.7.12.jar并解决了问题。

相关问题