2015-11-14 2 views
0

У меня возникла эта ошибка при запуске моего приложения на сервере Tomcat. Приветственный файл index.html - это HTML-файл с пустым телом, отлично открывается, когда я запускаю приложение, показывающее что-либо, проблема возникает при доступе к направлению сервлета, независимо от того, что вы всегда выполняете с помощью NullPointerException.java.lang.NullPointerException в WebServlet из проекта Eclipse на Tomcat 8

web.xml

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
    id="WebApp_ID" version="2.5"> 
    <welcome-file-list> 
     <welcome-file>index.html</welcome-file> 
    </welcome-file-list> 
    <servlet> 
     <description></description> 
     <display-name>ListaCorreosServlet</display-name> 
     <servlet-name>ListaCorreosServlet</servlet-name> 
     <servlet-class>comunicacion.ListaCorreosServlet</servlet-class> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>ListaCorreosServlet</servlet-name> 
     <url-pattern>/ListaCorreosServlet</url-pattern> 
    </servlet-mapping> 
</web-app> 

ListaCorreosServlet.java

package comunicacion; 

import javax.servlet.annotation.WebServlet; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 

import java.io.IOException; 

@WebServlet("/ListaCorreosServlet") 
public class ListaCorreosServlet extends HttpServlet { 
    private static final long serialVersionUID = 1L; 

    public void doGet(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     doPost(request, response); 
    } 

    protected void doPost(HttpServletRequest request, 
      HttpServletResponse response) throws ServletException, IOException { 
    } 

} 

выход консоли

nov 14, 2015 5:22:21 PM org.apache.catalina.core.StandardWrapperValve invoke 
GRAVE: Servlet.service() for servlet ListaCorreosServlet throws exception 
java.lang.NullPointerException 
    at comunicacion.ListaCorreosServlet.doPost(ListaCorreosServlet.java:32) 
    at comunicacion.ListaCorreosServlet.doGet(ListaCorreosServlet.java:23) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:622) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:217) 
    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:1500) 
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
    at java.lang.Thread.run(Thread.java:745) 

Я не знаю, что я делаю что-то неправильно или это ошибка Eclipse.

+1

Вы не используете код, который, по вашему мнению, работает. Очистите, перестройте, переустановите, перезапустите и т. Д. – BalusC

+0

@electron: извините, ваша догадка - глупость. Он вообще не объясняет трассировку стека. – BalusC

+0

попробуйте это решение, я думаю, что это то же самое [http://stackoverflow.com/questions/2322031/why-did-servlet-service-for-servlet-jsp-throw-this-exception](http://stackoverflow.com/questions/2322031/why-did-servlet-service-for-servlet-jsp-throw-this-exception) – Abdelhak

ответ

0

Спасибо всем. Я точно не знаю, где была проблема, но создание сервлета с помощью мастера Eclipse (который фактически генерирует точно такой же код) отлично работает; что означало еще одну ошибку в списке Eclipse.

Кстати, я попытался прежде, чем очистить и перестроить приложение хотя бы на десяток раз, как приложение, так и сервер, но все же выдавая ту же ошибку; так что это, я думаю, это будет ошибка Eclipse.

Смежные вопросы