2012-01-15 26 views
4

私はHibernateでSpringを使用しようとしています。ビューはJSTLを使用します。私は、ブラウザでページを開くと、私はエラーが表示されます。javax.servlet.jsp.jstl.core.Configクラスが見つかりません

java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.Config 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358) 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204) 
at org.springframework.web.servlet.support.JstlUtils.exposeLocalizationContext(JstlUtils.java:97) 
at org.springframework.web.servlet.view.JstlView.exposeHelpers(JstlView.java:135) 
at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:211) 
at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250) 
at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1047) 
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:817) 
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719) 
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644) 
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:549) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:212) 
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) 
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634) 
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445) 
at java.lang.Thread.run(Thread.java:662) 

これはこれで接続のpom.xmlからの私の依存関係の一部です:

<!-- Java EE --> 
<dependency> 
    <groupId>javax.servlet</groupId> 
    <artifactId>servlet-api</artifactId> 
    <version>2.5</version> 
    <scope>provided</scope> 
</dependency> 
<dependency> 
    <groupId>javax.servlet.jsp</groupId> 
    <artifactId>jsp-api</artifactId> 
    <version>2.0</version> 
    <scope>provided</scope> 
</dependency> 
<dependency> 
    <groupId>javax.servlet</groupId> 
    <artifactId>jstl</artifactId> 
    <version>1.2</version> 
</dependency> 
<dependency> 
    <groupId>javax.el</groupId> 
    <artifactId>el-api</artifactId> 
    <version>1.0</version> 
    <scope>provided</scope> 
</dependency> 

問題がありますか? 私はTomcatバージョン6を使用しています。

+0

この回答を見てください:http://stackoverflow.com/a/5168057/81179 – ChristopheD

答えて

0

web.xmlのサーブレットのバージョンが間違っていました。私は2.5とすべての作品を作った。

2

問題の内容は明らかです。私は、デフォルトでtomcatにはjstlライブラリが含まれていないことを知っています。あなたの依存関係リストにjstlを追加したので、あなたのweb-inf/libの一部にする必要があります。それが存在することを確認してください。

+0

私はこの答えを見て:stackoverflow.com/a/5168057/81179、jstl.jarをlibにtomcat direcotryに入れて今働いている。しかし、私が依存関係を追加すると、なぜそこに置く必要がありますか? – Hleb

+2

@Hleb - 私は以下の依存関係がこれを処理する必要があると信じています。ないなら、あなたは のjavax.servlet JSTL 1.2 を追加するために必要なものの依存関係を見つける必要があります –

2

WEB-INF/lib内のすべてのjarファイルを追加します。

jsf-impl.jar 
jsf-api.jar 
jstl.jar 
commons-logging.jar 
commons-beanutils.jar 
commons-collections.jar 
commons-chain.jar 
commons-digester.jar 
commons-codec-1.6.jar 

を、次にビルド・パスに追加し追加します。 それは動作します!

関連する問題