Почему я не могу инициализировать Mongo в сервлете - PullRequest
1 голос
/ 19 мая 2011

Я делаю Java-проект и пытаюсь использовать mongodb. но я нашел проблему,

Mongo mongo = new Mongo("localhost", 27017)

когда я использую его в основном методе, это нормально. но когда я использую его в Servlet init () или doGet, doPost он выдает исключения, это как:

    Allocate exception for servlet RegServlet
java.lang.ClassNotFoundException: com.mongodb.MongoException
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
    at java.lang.Class.getDeclaredConstructors0(Native Method)
    at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
    at java.lang.Class.getConstructor0(Class.java:2699)
    at java.lang.Class.newInstance0(Class.java:326)
    at java.lang.Class.newInstance(Class.java:308)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1116)
    at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:809)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129)
    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:859)
    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:662)
2011-5-19 20:44:39 org.apache.catalina.startup.HostConfig checkResources

1 Ответ

7 голосов
/ 19 мая 2011

Это потому, что вы не включили банку, содержащую класс com.mongodb.MongoException (следовательно, почему у вас java.lang.ClassNotFoundException). Для запуска MongoDB вашему приложению не нужны файлы jar. Добавьте соответствующие файлы Mongo в свою папку WEB-INF/lib или в папку сервера / контейнера lib веб-приложения.

...