[英]Does log4j requires JSF jars?
我構建了一個REST Web服務(使用JAX-RS,Spring,Spring JMS和ActiveMQ)。 當我將其部署到Tomcat 5.5.23時,我感到驚訝,因為出現了一個例外,要求使用JSF jar?
Error configuring application listener of class org.apache.myfaces.webapp.StartupServletContextListener
java.lang.ClassNotFoundException: org.apache.myfaces.webapp.StartupServletContextListener
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1359)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1205)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3712)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4216)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
在我在不同的類中添加log4j功能之前,Web服務運行良好,這是我的log4j.properties文件(我將其放在WEB-INF / classes中):
log4j.rootCategory=INFO, S
log4j.logger.com.dappit.Dapper.parser=ERROR
log4j.logger.org.w3c.tidy=FATAL
#------------------------------------------------------------------------------
#
# The following properties configure the console (stdout) appender.
# See http://logging.apache.org/log4j/docs/api/index.html for details.
#
#------------------------------------------------------------------------------
log4j.appender.S = org.apache.log4j.ConsoleAppender
log4j.appender.S.layout = org.apache.log4j.PatternLayout
log4j.appender.S.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} %c{1} [%p] %m%n
任何想法如何解決這個問題?
如果您在web.xml中有對org.apache.myfaces.webapp.StartupServletContextListener
的引用,我希望能看到這一點,例如:
<listener>
<listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
</listener>
您可以驗證是否沒有這樣的元素嗎?
按提供的條件在maven中進行以下依賴(如果存在):javax javaee-api 6.0 scope:提供
javax.servlet javax.servlet-api 3.0.1范圍:提供
聽起來像是類加載器層次結構問題。 您應該將log4j放在WAR文件中,而不是將其放在Tomcat的共享庫中。
另外,我在Tomcat 6.0中已修復的Tomcat 5.5遇到了一些問題。 您可能要考慮升級。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.