2017-12-25 11 views
0
gefunden

das Servlet istJava-Servlet 404 nicht

import javax.servlet.*; 
import javax.servlet.http.*; 
import java.io.*; 

public class ServletWriteHtml extends HttpServlet 
{ 
public void doGet(HttpServletRequest request, HttpServletResponse response) 
     throws IOException 
{ 
    PrintWriter out = response.getWriter(); 
    java.util.Date today = new java.util.Date(); 
    out.println("html" + 
       "<body>" + 
       "<h1 align = center>Write Html<h1>" 
       + "<br>" + today + "<body>" + "</html>");       
     } 
} 

die web.xml ist

<?xml version="1.0" encoding="UTF-8"?> 
<web-app id="file-upload" version="2.4" 
xmlns="http://java.sun.com/xml/ns/j2ee" 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
     http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> 
    <servlet> 
     <servlet-name>And</servlet-name> 
     <servlet-class>ServletWriteHtml</servlet-class> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>ServletWriteHtml</servlet-name> 
     <url-pattern>/Alfa</url-pattern> 
    </servlet-mapping> 
     <welcome-file-list> 
      <welcome-file>index.html</welcome-file> 
     </welcome-file-list> 
</web-app> 

die URL http://localhost:8080/JavaWeb/Alfa das Servlet kompiliert und Klasse ist in WEB-INF-Ordner

HTTP-Status 404 - Nicht gefunden Typ Statusbericht NachrichtNicht gefunden BeschreibungDie Anfrage ed-Ressource ist nicht verfügbar. Glassfish Server Open Source Edition 4.1.1

+0

Sie haben sich entschieden, Ihr Servlet 'And' zu benennen. Aber dann mappen Sie es unter einem anderen Namen: 'ServletWriteHtml'. Auch nicht verwandt, aber Ihr HTML ist ungültig. –

Antwort

1

Sie servlet-name Dies sollte sowohl Servlets und Servlet-Mapping

Und Sie müssen in servlet-class

zum Beispiel vollständigen Pfad der Klasse (einschließlich Verpackungen) geben:

<servlet> 
    <servlet-name>ServletWriteHtml</servlet-name> 
    <servlet-class>my.packages.ServletWriteHtml</servlet-class> 
</servlet> 
+0

änderte die web.xml, legte ServletWriteHtml in Java-Paket noch denselben Fehler 404 Seite nicht \t \t und \t \t Javas.ServletWriteHtml \t \t \t \t \t und \t \t /Alfa \t

+0

Wenn 'Javas' dein Paket ist und' JavaWeb' dein Projekt ist, sollte dein Servlet nun von 'http: // localhost: 8080/JavaWeb/Und' – user7294900

+0

URL zu http: // aufgerufen werden localhost: 8080/JavaWeb/Und immer noch 404, auch ServletWriteHtml.java kompiliert und die Klassendatei ist im Web-inf-Ordner –