0

WTP を使用して Tomcat セットアップで Eclipse 動的 Web プロジェクトを実行しようとすると、スタックトレースが添付されて失敗します。

チェックリスト

  • プロジェクトのプロパティで、「Java EE モジュールの依存関係」の下にある「Maven の依存関係」を確認しました。
  • wtp deploy ディレクトリの lib の下に、実際にすべての依存関係が存在します (特に struts-taglib-1.3.10.jar)。

一方、maven でパッケージ化し、war ファイルを webapps ディレクトリの下にコピーすると、すべてが正常に機能します。

仕様

Eclipse Java EE Galileo SR2 (WTP 3.1.1 を使用)

トムキャット 6.0.26

Java(TM) SE ランタイム環境 (ビルド 1.6.0_17-b04-248-10M3025) Java HotSpot(TM) 64 ビット サーバー VM (ビルド 14.3-b01-101、混合モード)

スタックトレース

org.apache.jasper.JasperException: Unable to read TLD "META-INF/tld/struts-html-el.tld" from JAR file "file:/Users/cue/Development/workspace/eclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp2/wtpwebapps/ticketing/WEB-INF/lib/struts-el-1.3.10.jar": org.apache.jasper.JasperException: Failed to load or instantiate TagExtraInfo class: org.apache.struts.taglib.html.MessagesTei
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:51)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:181)
at org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:182)
at org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:383)
at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:446)
at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1393)
at org.apache.jasper.compiler.Parser.parse(Parser.java:130)
at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:255)
at org.apache.jasper.compiler.ParserController.parse(ParserController.java:103)
at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:185)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:347)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:327)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:589)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
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:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:637)
4

1 に答える 1

0

Eclipse は実際にすべての「Maven 依存関係」を移動するため、*servlet-api-2.5.jar も webapp lib の下に存在し、問題を引き起こしていました。

于 2010-03-21T11:08:41.800 に答える