2012-09-27 3 views
7

Ich versuche mein erstes HelloWorld Servlet mit Eclipse Juno zu erstellen und es im J2EE Preview Server anzuzeigen.Einfaches Servlet mit Eclipse Juno und J2EE Preview Server

Das ist mein Servletklasse:

import java.io.IOException; 
import java.io.PrintWriter; 

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

/** 
* Servlet implementation class HelloWorld 
*/ 
public class HelloWorld extends HttpServlet { 
    private static final long serialVersionUID = 1L; 

    /** 
    * @see HttpServlet#HttpServlet() 
    */ 
    public HelloWorld() { 
     super(); 
     // TODO Auto-generated constructor stub 
    } 

    /** 
    * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) 
    */ 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
     response.setContentType("text/html"); 
     PrintWriter pw = response.getWriter(); 
     pw.println("<html>"); 
     pw.println("<head><title>Hello World</title></title>"); 
     pw.println("<body>"); 
     pw.println("<h1>Hello World</h1>"); 
     pw.println("</body></html>"); 
    } 

    /** 
    * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) 
    */ 
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
     // TODO Auto-generated method stub 
    } 

} 

Und das ist meine web.xml automatisch von Eclipse generiert:

<?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"> 
    <display-name>HelloWorld</display-name> 
    <welcome-file-list> 
    <welcome-file>index.html</welcome-file> 
    <welcome-file>index.htm</welcome-file> 
    <welcome-file>index.jsp</welcome-file> 
    <welcome-file>default.html</welcome-file> 
    <welcome-file>default.htm</welcome-file> 
    <welcome-file>default.jsp</welcome-file> 
    </welcome-file-list> 
    <servlet> 
    <description></description> 
    <display-name>HelloWorld</display-name> 
    <servlet-name>HelloWorld</servlet-name> 
    <servlet-class>HelloWorld</servlet-class> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>HelloWorld</servlet-name> 
    <url-pattern>/HelloWorld</url-pattern> 
    </servlet-mapping> 
</web-app> 

Wenn ich "Run auf Server"> "J2EE Preview" Ich wähle erhalten diese:

Error 404 - Not Found

Kein Kontext auf diesem Server hat diese Anforderung abgeglichen oder bearbeitet. Contexts zu diesem Server bekannt sind:

Hello World (/ Hello World)

Wo mache ich falsch?

+0

Ich habe das gleiche Problem – user1061392

Antwort

1

In "J2EE Preview" Server ist der Kontextpfad der Name des Projekts. Wenn Sie den Server starten, werden alle verfügbaren Kontextpfade aufgelistet.

Zum Beispiel, wenn Ihre Anwendungen Namen „app1“, wird Ihre URL sein „http: // localhost: 8080/app1/Hello World“

+1

Dies ist wahrscheinlich die richtige Antwort. Wie auch immer Ihr Projekt benannt wird, das wird der Standard "Kontext" sein, in dem Ihre Webanwendung implementiert wird. –

0

ich hatte das gleiche Problem und konnte es nicht machen . Ich erstellte eine viel einfachere Anwendung, nur eine Hallo Welt JSP-Seite.

Dieser Prozess ist sehr einfach, Sie erstellen ein dynamisches Webprojekt und erstellen eine index.jsp Datei unter dem WebContent-Verzeichnis, das sollte gut genug sein, um Ihre Anwendung zu starten, indem Sie -> run in Server -> J2EE-Vorschau aber ausführen Immer erhalten:

404 nicht gefunden Kein Kontext auf diesem Server zugeordnet oder behandelt diese Anfrage. Contexts zu diesem Server bekannt sind: Test (/ Test)

ich Eclipse juno gehört haben, wie Indigo nicht so stabil ist, dass ich gerade heruntergeladen der Indigo Java EE Version exacly tat das gleiche und es funktionierte keine Probleme richtig.

Bearbeiten: Ich habe vergessen zu erwähnen, dass Sie einen anderen Application Server wie JBoss oder Glassfish herunterladen können und versuchen, auf Ihrer Anwendung auf ihnen laufen, die Ihr Problem beheben sollte.

Sie können versuchen, dieses Problem zu beheben, indem Sie alle Dateien und Ordner in Ihrem Arbeitsbereich zu löschen, löschen Sie den .metadata Ordner und den Inhalt davon, den Beginn Eclipse und versuchen Sie es erneut diese Werke kann.

Hoffe, das kann Ihnen helfen. Grüße!