2016-07-03 9 views
1

Ich habe vor kurzem begonnen, an Webanwendungen zu arbeiten, und habe versucht, ein Übungsprojekt einzurichten, um verschiedene Dinge auszuprobieren. Aber ich stecke in einem sehr frühen Stadium fest und habe viel gegoogelt, konnte aber keine Lösung für mein Problem finden. Ich habe das Projekt mit einem EAR-Projekt verknüpft und das Ohr wird auf dem Server bereitgestellt.Die angefragte Ressource ist nicht verfügbar. Glassfish 4

Dies ist das Projekt Setup ich mit Problemen konfrontiert bin:

web.xml

<?xml version="1.0" encoding="UTF-8"?> 
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
    id="WebApp_ID" version="3.1"> 
     <display-name>College Administration</display-name> 
     <servlet> 
      <servlet-name>loginServlet</servlet-name> 
      <servlet-class>kumar.suraj.college.administration.login.LoginServlet</servlet-class> 
     </servlet> 
     <servlet-mapping> 
      <servlet-name>loginServlet</servlet-name> 
      <url-pattern>/login</url-pattern> 
     </servlet-mapping> 
    </web-app> 

application.xml

<?xml version="1.0" encoding="UTF-8"?> 
    <application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/application_7.xsd" id="Application_ID" version="7"> 
    <display-name>web-college-administrationEar</display-name> 
    <module> 
     <web> 
      <web-uri>web-college-administration.war</web-uri> 
      <context-root>web-college-administration</context-root> 
     </web> 
    </module> 
    </application> 

Glassfish-web.xml

<?xml version="1.0" encoding="UTF-8"?> 

<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish- web-app_3_0-1.dtd"> 
<glassfish-web-app> 
     <context-root>web-college-administration</context-root> 
</glassfish-web-app> 

login.jsp

<!DOCTYPE html> 
    <html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
     <title>Login Page</title> 
    </head> 
    <body> 
     <form name="login" action="login" method="post" accept-charset="utf-8"> 
      <label for="usermail ">Email</label> 
      <input type="email" name="usermail" placeholder="[email protected]" required> 
      <br/> 
      <label for="password ">Password</label> 
      <input type="password" name="password" placeholder="password" required> 
      <br/>  
      <input type="submit" value="Login"> 
     </form> 
    </body> 
    </html> 

LoginServlet.java

package kumar.suraj.college.administration.login; 

import java.io.IOException; 
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 

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

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

/** 
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse 
*  response) 
*/ 
@Override 
protected void doGet(final HttpServletRequest request, final HttpServletResponse response) 
     throws ServletException, IOException { 
    // TODO Auto-generated method stub 
    response.getWriter().append("Served at: ").append(request.getContextPath()); 
    response.getWriter().append("Hello Suraj"); 
} 

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

} 

Die login.jsp in WebContent/WEB-INF-Ordner von meinem Projekt platziert wird.

Wenn ich die URL getroffen http://localhost:53809/web-college-administration/login

ich die Put folgende out "Served auf:/web-College-administrationHello Suraj" nach der Methode doGet von LoginServlet.java.

Aber wenn ich traf die URL http://localhost:53809/web-college-administration/login.jsp ich die folgende Fehlermeldung erhalten:

HTTP STATUS 404 - NOT FOUND 
    type status report 
    message Not Found 
    description The requested resource is not available. 

Und in Eclipse Konsole erhalte ich die folgende Meldung:

2016-07-03T16:34:18.969+0530|Severe: PWC6117: File "null" not found. 

Könnte mir bitte jemand sagen, was mit falsch mein Setup?

+0

Könnten Sie bitte die Verzeichnisstruktur Ihres Projekts veröffentlichen? –

+0

404 Statuscode ist für Ressource, die nicht verfügbar ist. –

+0

Hallo @RomanC Siehst du falsche Informationen in meiner Antwort? –

Antwort

0

Die Datei login.jsp befindet sich im Ordner WebContent/WEB-INF meines Projekts.

Könnten Sie bitte login.jsp in WebContent Ordner Ihres Projekts in Eclipse setzen Sie dann das Projekt reinigen und versuchen, die URL: http://localhost:53809/web-college-administration/login.jsp wieder?

+0

@SanjeevSaha Ja, es hat geklappt, ich habe nur versucht, was du gesagt hast, also brauchte es Zeit, um zu antworten. Vielen Dank für deine Unterstützung. Auch wenn es für Sie bequem ist, können Sie mir bitte, wenn Sie gute Links oder Tutorials erklären die Verzeichnisstruktur von Webprojekten sowohl Krieg/Ohr und Maven und nicht Maven –

+0

auch welche Ressource sollte wo platziert werden, wie ich in einigen Fällen gesehen habe JSP-Dateien werden in Web-Inf-Ordner abgelegt. Es ist auch eine gute Vorgehensweise, Ressourcen, die für Ihre Anwendung privat sind, in web-inf-Ordnern zu belassen, da sie nicht öffentlich zugänglich sind. –

+0

@SurajKumar finden Sie viele gute Tutorials unter: http://www.mkyong.com/ –

Verwandte Themen