2015-09-26 1 views
-1

Я получаю эту ошибку на консоли Eclipse,java.lang.ClassNotFoundException: com.ebank.rajeev.controllers.Alogin

java.lang.ClassNotFoundException: com.ebank.rajeev.controllers.Alogin 
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1332) 
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1166) 
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:520) 
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:501) 
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:120) 
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1095) 
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:817) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:135) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) 
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) 
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518) 
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091) 
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:673) 
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1526) 
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1482) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
at java.lang.Thread.run(Unknown Source) 

На запуске страницы JSP, кот говорит HTTP Status 404 - тип Отчет о состоянии message описание Запрошенный ресурс недоступен.

Мой код верный. Тем не менее я не могу найти способ.

web.xml

<servlet-mapping> 
<servlet-name>Alogin</servlet-name> 
<url-pattern>/Alogin</url-pattern> 
</servlet-mapping> 
<servlet> 
<description></description> 
<display-name>Alogin</display-name> 
<servlet-name>Alogin</servlet-name> 
<servlet-class>com.ebank.rajeev.controllers.Alogin</servlet-class> 
</servlet> 

admin.jsp

<form method="post" action="Alogin"> 
<div> 
<input type="password" name="uname" placeholder="username" /> 
<input type="password" name="pwd" placeholder="password" /> 
<input type="submit" id="search-submit" value="Login" /><br /> 
</div> 
</form> 

Alogin сервлет путь сборки

String uname=request.getParameter("uname"); 
    String pwd=request.getParameter("pwd"); 
    if(uname.equals("admin") && pwd.equals("admin")) 
    { 
     HttpSession session=request.getSession(); 
     session.setAttribute("UNAME",uname); 
     response.sendRedirect("AdminHome.jsp"); 
    } 
    else 
    { 
     response.sendRedirect("admin.jsp?msg=invalid"); 
    } 

Java потребовалось банку файлы, т.е. servlet-api.jar, jsp-api.jar, mysql-connector.jar. Я использую любой код sql для этой страницы, все еще выдавая ошибку.

ответ

0

Перейти к Свойства проекта и на Deployment Descriptor, добавить Java Build path entries и ссылки на ваших исходных папок, как правило, /src/main/resources к WEB-INF/classes. Сделайте Project>Clean и перезапустите сервер.

+0

Я делал все это много раз. Все записи пути Java Build добавляются в сборку развертывания для свойств проекта. Я также много раз заново устанавливал Tomcat, Eclipse. Создал новый проект. Ничего не помогло. – Rajeev

+0

Что происходит, когда вы пытаетесь создать экземпляр или ссылаетесь на класс 'com.ebank.rajeev.controllers.Alogin' в любом из ваших файлов проекта? –

+0

Создание экземпляра для класса Alogin работает в другом файле класса. – Rajeev

0

Я думаю, что com.ebank.rajeev.controllers.Alogin класс не будет присутствовать в баночках, о которых вы упоминаете. Вы должны рассмотреть, какие третья библиотеки необходимы в вашем проекте.

Если у вас есть куча библиотек, и вы не знаете, где находится com.ebank.rajeev.controllers.Alogin, вы можете использовать jarscan отличный инструмент, чтобы найти подходящую банку.

Вы можете скачать jarscan здесь http://www.oracle.com/splash/java.net/maintenance/index.html

И использовать его таким образом:

java -jar jarscan.jar -d /path/to/find/libraries -j com.ebank.rajeev.controllers.Alogin 
+0

У меня есть пакет com.ebank.rajeev.controllers под папкой src. Alogin - это сервлет внутри пакета. Как добавить этот класс в банки.? Или что мне делать? – Rajeev

+0

хорошо, тогда ваша проблема в том, что вы не правильно упаковываете свой проект. Ваши java-источники должны быть скомпилированы в 'WEB-INF/classes' или упакованы в библиотеку jar, которые необходимо скопировать в' WEB-INF/lib'. Просмотрите конфигурацию проекта. – malaguna

+0

Итак, как я могу это сделать? Как источник может быть скомпилирован в web-inf/classes или другое, что вы упомянули. – Rajeev