Еще один вопрос по сервлету - PullRequest
0 голосов
/ 10 августа 2011

Как я уже задавал аналогичный вопрос о сервлете, который предназначен для отображения отчета в браузере.После создания я реконструирую веб-проект Danymic (с именем JasperServlet), используя Eclipse.компилируя и отображая сервлет (названный FirstReportSendToBrowserServlet), поместите сервлет в Apache Tomcat v5.5, после того как я запустил tomcat, откройте http://localhost:8080/JasperServlet/FR (FirstReportSendToBrowserServlet сопоставлен с FR в web.xml), что меня озадачило:

исключение

javax.servlet.ServletException: Ошибка при создании экземпляра класса сервлета FirstReportSendToBrowserServlet org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportV :5:) org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:148) org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:869) org.apache.coyote.http11.HecConnectHttp11HTPHTP(Http11BaseProtocol.java:664) org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket (PoolTcpEndpoint.java:527) org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt (LeaWerF).tomcat.util.threads.ThreadPool $ ControlRunnable.run (ThreadPool.java:684) java.lang.Thread.run (Thread.java:619) root причиной

java.lang.NoClassDefFoundError: net / sf / jasperreports / engine / JRException java.lang.Class.getDeclaredConstructors0 (собственный метод) java.lang.Class.privateGetDeclaredConstructors (Class.java:2. java.2).lang.Class.getConstructor0 (Class.java:2699) java.lang.Class.newInstance0 (Class.java:326) java.lang.Class.newInstance (Class.java:308) org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:105) org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:148) org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:86co) org.ache.http11.Http11BaseProtocol $ Http11ConnectionHandler.processConnection (Http11BaseProtocol.java:664) org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket (PoolTcpEndpoint.java:527) org.Java: 80) org.apache.tomcat.util.threads.ThreadPool $ ControlRunnable.run (ThreadPool.java:684) java.lang.Thread.run (Thread.java:619)

Я уже нашел в Apache's bugzilla , но, похоже, я не могу найти аналогичный ответ.Кто-нибудь может дать подсказки?

1 Ответ

3 голосов
/ 10 августа 2011

Вам нужно jasper-reports.jar в вашем WEB-INF/lib. NoClassDefFoundError означает, что приложение ожидает, что класс находится в пути к классам, но он отсутствует. Путь к классу веб-приложения формируется из:

  • WEB-INF / классы
  • WEB-INF / Lib
  • контейнер библиотек
...