2017-07-24 3 views
-5

Ich habe NetBeans Spring MVC-Projekt mit Maven.Aber ich habe den folgenden Fehler: HTTP-Status 404 - nicht gefunden. Wie kann ich diesen Fehler vermeiden? Hierarchie:HTTP-Status 404 - nicht im Frühjahr gefunden MVC 4-Anwendung

-FinalWebStore 
    -Web Pages 
    -WEB-INF 
      +views 
      web.xml 
      mvc-dispatcher-servlet.xml 
    -Source Packages 
     +com.karans.finalwebstore.controllers 
     +com.karans.finalwebstore.daoimps 
     +com.karans.finalwebstore.daos 
     +com.karans.finalwebstore.models 
    +Dependecies 
... 

Hier sind meine Dateien: web.xml:

<web-app id="WebApp_ID" 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"> 

    <display-name>Spring Web MVC Application</display-name> 


    <servlet> 
     <servlet-name>mvc-dispatcher</servlet-name> 
     <servlet-class> 
      org.springframework.web.servlet.DispatcherServlet 
     </servlet-class> 
     <init-param> 
      <param-name>contextConfigLocation</param-name> 
      <param-value>/WEB-INF/mvc-dispatcher-servlet.xml</param-value> 
     </init-param> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 



    <servlet-mapping> 
     <servlet-name>mvc-dispatcher</servlet-name> 
     <url-pattern>*.htm</url-pattern> 
    </servlet-mapping> 

</web-app> 

mvc-Dispatcher-servlet.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" 
     xmlns:mvc="http://www.springframework.org/schema/mvc" 
     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd 
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd"> 


    <bean name="/login" 
     class="com.karans.finalwebstore.controllers.UserController" /> 


    <bean id="viewResolver" 
      class="org.springframework.web.servlet.view.InternalResourceViewResolver" > 
     <property name="prefix"> 
      <value>/WEB-INF/views/</value> 
     </property> 
     <property name="suffix"> 
      <value>.jsp</value> 
     </property> 
    </bean> 
    <bean id="ds" 
      class="org.springframework.jdbc.datasource.DriverManagerDataSource"> 

     <property name="driverClassName" value="com.mysql.jdbc.Driver" /> 
     <property name="url" value="jdbc:mysql://localhost:3306/webstore" /> 
     <property name="username" value="root" /> 
     <property name="password" value="123456" /> 
    </bean> 


    <bean id="jt" class="org.springframework.jdbc.core.JdbcTemplate"> 
     <property name="dataSource" ref="ds"></property> 
    </bean> 


    <bean id="ProductDAOimpl" class="com.karans.finalwebstore.daoimps.ProductDAOimp"> 

     <property name="template" ref="jt"></property> 
    </bean> 

    <bean id="UserDAOimpl" class="com.karans.finalwebstore.daoimps.UserDAOimp"> 

     <property name="template" ref="jt"></property> 
    </bean> 
    <bean id="CartDAOimpl" class="com.karans.finalwebstore.daoimps.CartDAOimp"> 

     <property name="template" ref="jt"></property> 
    </bean> 
    <bean id="UserController" class="com.karans.finalwebstore.controllers.UserController"> 
     <property name="userdaoimp" ref="UserDAOimpl"></property> 
    </bean> 



</beans> 

UserController.java:

package com.karans.finalwebstore.controllers; 
import com.karans.finalwebstore.daoimps.UserDAOimp; 
import org.springframework.beans.factory.annotation.Autowired; 
import org.springframework.stereotype.Controller; 
import org.springframework.ui.Model; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RequestMethod; 
@Controller 
public class UserController { 
    @Autowired 
    UserDAOimp userdaoimp; 

    public void setUserdaoimp(UserDAOimp userdaoimp) { 
     this.userdaoimp = userdaoimp; 
    } 

    public String login(){ 


     return "login"; 
    } 


} 

login.jsp:

<%-- 
    Document : login 
    Created on : Jul 15, 2017, 2:57:13 PM 
    Author  : raziyeh 
--%> 

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>LOG IN PAGE</title> 
    </head> 
    <body> 
     <h1>Hello World Taze avvaleshe!</h1> 
    </body> 
</html> 

Und ich denke, andere Dateien sind nicht wichtig.

+0

hat meine Antwort nicht Ihr Problem gelöst? Ich habe gesehen, dass Sie Ihren Code geändert haben. Wenn es ein anderes Problem gibt, stellen Sie eine andere Frage. Es ist nicht eine Möglichkeit, dass Sie Ihre Frage ändern und in einer anderen Frage fragen, indem Sie Ihre vorherige Frage bearbeiten – sunkuet02

+0

Sorry, ich wusste nicht, dass es wichtig für Sie ist :(:( – ma98

+0

Yup Es ist wichtig für die Gemeinschaft. Wenn jemand in Die StackOverflow-Community folgt Ihrer Frage, sie könnte fehlgeleitet sein. Und für uns (die Ihre Frage beantwortet haben) haben wir entsprechend Ihrer ersten Bearbeitung geantwortet. Daher haben sie einen schlechten Einfluss auf Follower, die unsere angegebenen Codes implementieren Antwort macht Sinn für Sie, dann akzeptieren Sie so, dass Anhänger Ihrer Frage möglicherweise profitieren. Hoffe, Sie werden das Problem verstehen. – sunkuet02

Antwort

2

Ihre Login-Funktion ändern als

@RequestMapping(value = "/") 
public String login(){ 
    return "login"; 
} 

Auch die web.xml-Datei in dem folgenden Abschnitt ändern:

<servlet-mapping> 
    <servlet-name>mvc-dispatcher</servlet-name> 
    <url-pattern>/</url-pattern> 
</servlet-mapping> 

Sie müssen die unter Leitung von mvc-dispatcher-servlet.xml

<bean name="/login" 
     class="com.karans.finalwebstore.controllers.UserController" /> 

auch löschen Stellen Sie sicher, dass die Datei login.jsp Unde enthält r den Ordner /WEB-INF/views/.

+0

@masoomi, ich habe gesehen, dass du deine Frage bearbeitet hast, nachdem ich deine Frage beantwortet habe und auch meine Antwort nicht akzeptiere. Es ist unpassend und es hat einen schlechten Effekt für die Anhänger dieser Fragen und Antworten Wenn Sie in ein anderes Problem fallen, stellen Sie der Gemeinde eine andere Frage. – sunkuet02

0

Versuchen Sie Folgendes:

Fügen Sie die Spring MVC-Namespace zu Ihrer mvc-Dispatch-servlet.xml Datei xmlns: mvc = "http://www.springframework.org/schema/mvc". Sie müssen die xsi aktualisieren: schema auch mit diesem "http://www.springframework.org/schema/mvchttp://www.springframework.org/schema/mvc/spring-mvc.xsd"

Zweite hinzufügen < mvc: Annotation-driven/> in die Datei. Wenn ich mich richtig erinnere, ermöglicht dies die Verarbeitung von @RequestMapping-Annotationen.

Drittens, entfernen Sie die Bean deklariert mit dem Namen "/ Login". Es ist der gleiche Typ wie der UserController am Ende der Datei deklariert.