試圖關注this Java tutorial。我應該如何初始化freemarker.template.Configuration類?
約63頁介紹瞭如何創建表單(「New.jsp」)來提交新事件。
當我嘗試訪問該頁面時,我得到了以下錯誤:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error() that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Filter execution threw an exception
com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129)
com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
root cause
java.lang.NoClassDefFoundError: Could not initialize class freemarker.template.Configuration
org.apache.struts2.views.freemarker.FreemarkerManager.createConfiguration(FreemarkerManager.java:294)
org.apache.struts2.views.freemarker.FreemarkerManager.init(FreemarkerManager.java:255)
org.apache.struts2.views.freemarker.FreemarkerManager.getConfiguration(FreemarkerManager.java:238)
org.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:734)
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:506)
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129)
com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.29 logs.
Apache Tomcat/6.0.29
,我發現這個日誌文件在d:\教育\ java.metadata.plugins \ org.eclipse.wst.server.core \ tmp1 \ logs \ localhost_access_log.2010-09-26.txt
127.0.0.1 - - [26/Sep/2010:04:29:09 +0200] "GET/HTTP/1.1" 404 953
0:0:0:0:0:0:0:1 - - [26/Sep/2010:04:29:11 +0200] "GET /Events/ HTTP/1.1" 304 -
0:0:0:0:0:0:0:1 - - [26/Sep/2010:04:29:11 +0200] "GET /favicon.ico HTTP/1.1" 404 986
127.0.0.1 - - [26/Sep/2010:04:56:53 +0200] "GET/HTTP/1.1" 404 953
0:0:0:0:0:0:0:1 - - [26/Sep/2010:04:56:55 +0200] "GET /Events/events/Listing.action HTTP/1.1" 200 963
0:0:0:0:0:0:0:1 - - [26/Sep/2010:04:56:55 +0200] "GET /Events/assets/styles.css HTTP/1.1" 304 -
0:0:0:0:0:0:0:1 - - [26/Sep/2010:04:56:55 +0200] "GET /Events/assets/bg.jpg HTTP/1.1" 304 -
0:0:0:0:0:0:0:1 - - [26/Sep/2010:04:56:55 +0200] "GET /Events/assets/alpha-b.png HTTP/1.1" 304 -
0:0:0:0:0:0:0:1 - - [26/Sep/2010:04:56:55 +0200] "GET /Events/assets/alpha-w.png HTTP/1.1" 304 -
0:0:0:0:0:0:0:1 - - [26/Sep/2010:04:56:55 +0200] "GET /favicon.ico HTTP/1.1" 404 986
0:0:0:0:0:0:0:1 - - [26/Sep/2010:05:02:49 +0200] "GET /Events/ HTTP/1.1" 404 974
0:0:0:0:0:0:0:1 - - [26/Sep/2010:05:02:49 +0200] "GET /favicon.ico HTTP/1.1" 404 986
我找不到任何其他日誌。
任何想法如何解決這個問題?
我在我的類路徑中的c:\ devtool \ java \ tools中有一個較早版本的freemarker,但是無論是更新還是刪除都解決了這個問題。 – 2010-09-27 09:46:12
@布萊恩凱斯勒:那裏肯定還有一個。刪除後你重新啓動了服務器嗎?不更新它,刪除愚蠢。 – JoseK 2010-09-27 10:23:50
重新啓動服務器(總是這樣做):沒有幫助。目前搜索我的驅動器更多freemarker * .jar文件,但我不期望找到任何。那麼,我確實在我的eclipse工作區中找到了一些副本,埋在\ .metadata \中。插件文件夾,但在開發期間通過eclipse創建的路徑和路徑甚至不在我的PATH或CLASSPATH中,我不認爲這些應該是相關的。 – 2010-09-27 11:56:39