簡體   English   中英

log4j是否需要JSF jar?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM