2012-10-12 25 views
1

我在执行日志时遇到问题。我有两个项目:一个是servlet,另一个是简单的java文件。 private static Logger logger=Logger.getLogger(myServiceServlet.class);这工作正常。它的写日志我开始运行Tomcat服务器。但同样的事情并没有在我的简单java文件中实现,它转换成WS并尝试部署在axis/Tomcat服务器上。 Servlet直接在Tomcat服务器上运行。 但是java文件被转换成Axis2 ---> Tomcat服务器内部的Webservice.aar。日志不在java文件内部工作。但在servlet中工作

登录性质在

# Log levels 
log4j.rootLogger=INFO,CONSOLE,R 

# Appender Configuration 
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender 

# Pattern to output the caller's file name and line number 
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout 
log4j.appender.CONSOLE.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n 

# Rolling File Appender 
log4j.appender.R=org.apache.log4j.RollingFileAppender 

# Path and file name to store the log file 
log4j.appender.R.File=C:/res backup/apache-tomcat-6.0.35/webapps/mylog/logs/servicelog.log 
log4j.appender.R.MaxFileSize=2048KB 

# Number of backup files 
log4j.appender.R.MaxBackupIndex=50 

# Layout for Rolling File Appender 
log4j.appender.R.layout=org.apache.log4j.PatternLayout 
log4j.appender.R.layout.ConversionPattern=%d - %c - %p - %m%n` 
+0

你能分享你的日志配置吗?你在哪里期待输出? –

+0

与记录器相关的任何警告。看起来像记录器没有正确初始化。 – rbhawsar

+0

@rbhwasar ...没有错误。它只是在记录器内写入Servlet日志文件,而不是WS文件... –

回答

0

的.aar文件不在同一语境在WEB-INF/lib目录中的JAR运行。

它们共享某种上下文,因为您可以加载对WEB-INF/lib类的引用,但此时它不是100%一致的。

我建议你在你的.aar文件中构建某种包装,它们不做任何事情,然后将调用转发到位于WEB-INF/lib中的JAR文件的方法中。

您只需确保将正确的.aar引用加载到WEB-INF/lib上下文中的方法。

在.aar类中抛出错误我会建议你抓住它们然后抛出一个“AxisFault”。

throw new AxisFault(err.getMessage()); 

http://axis.apache.org/axis2/java/core/api/org/apache/axis2/AxisFault.html

这样,我们已经能够解决几乎所有的问题与.aar文件的内容。

塞巴斯蒂安

相关问题