2014-08-31 3 views
0

Я получаю эту ошибку после ввода URL локальный: 8080/HelloWebSpring MVC статус HTTP 404 ошибка

HTTP Status 404 - /HelloWeb 

type Status report 

message /HelloWeb 

description The requested resource is not available. 
Apache Tomcat/7.0.30 

Я не в состоянии решить это, пожалуйста, помогите кто-то здесь мои файлы, которые необходимы, чтобы сделать выполнить эту программу Spring MVC привет

HelloController.java

package com.tutorialspoint; 
import org.springframework.stereotype.Controller; 
import org.springframework.ui.ModelMap; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RequestMethod; 

@Controller 
@RequestMapping("/hello") 
public class HelloController { 
    @RequestMapping(method = RequestMethod.GET) 
    public String printHello(ModelMap model) { 
     model.addAttribute("message", "Hello Spring MVC Framework!"); 

     return "hello"; 
    } 
} 

hello.jsp

<%@ page contentType="text/html; charset=UTF-8" %> 
<html> 
<head> 
<title>Hello World</title> 
</head> 
<body> 
    <h2>${message}</h2> 
</body> 
</html> 

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 MVC Application</display-name> 

    <servlet> 
     <servlet-name>HelloWeb</servlet-name> 
     <servlet-class> 
     org.springframework.web.servlet.DispatcherServlet 
     </servlet-class> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 

    <servlet-mapping> 
     <servlet-name>HelloWeb</servlet-name> 
     <url-pattern>/</url-pattern> 
    </servlet-mapping> 

</web-app> 

HelloWeb-servlet.xml

<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:context="http://www.springframework.org/schema/context" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation=" 
    http://www.springframework.org/schema/beans  
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
    http://www.springframework.org/schema/context 
    http://www.springframework.org/schema/context/spring-context-3.0.xsd"> 

    <context:component-scan base-package="com.tutorialspoint" /> 

    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
     <property name="prefix" value="/WEB-INF/jsp/" /> 
     <property name="suffix" value=".jsp" /> 
    </bean> 

</beans> 

и вот моя иерархия проекта

HelloWeb
  SRC
    com.tutorialspoint
  WebContent
     
JSP           hello.jsp
      META-INF
          MANIFEST.MF
      WEB_INF
          Lib
          HelloWeb-servlet.xml
          index.jsp
          web.xml

извините, я забыл включить, что я после этого примера Spring MVC из

tutorialspoint.com/spring/spring_mvc_hello_world_example.htm

+0

Я также получаю ту же ошибку. Вы получили решение? – Chetan

+0

@Chetu Нет, я этого не сделал. –

ответ

0

Вы используете неправильный URL , Правильный URL-адрес - localhost: 8080/hello или localhost: 8080/HelloWeb/hello, в зависимости от того, как вы развертываете.

+0

no sir @atamanroman Я использую URL-адрес localhost: 8080/HelloWeb /, но как только я вхожу в состояние Http, возникает ошибка 404. –

0

Когда вы нажимаете на URL-адрес localhost:8080/HelloWeb/, ему нужна целевая страница, чтобы отобразить что-то, что вы можете указать в web.xml. Добавьте это в web.xml под

<welcome-file-list> 
    <welcome-file>/WEB-INF/index.jsp</welcome-file> 
</welcome-file-list> 

, но если вам нужно получить доступ к сервлет необходимо указать URL-адрес, как localhost:8080/HelloWeb/hello

+0

Я хочу отобразить сервлет, но как только я вхожу в localhost: 8080/HelloWeb/hello, но затем снова ошибка Http Status 404 приходит –

+0

Что вы подразумеваете под отображением сервлета, а ваш url должен быть localhost: 8080/HelloWeb/hello HelloWeb с прописными буквами H – SparkOn

+0

Кроме того, вам не хватает '' в вашем файле HelloWeb-servlet.xml – SparkOn

0

Это поздно, но я тоже была такая же проблема, потому что также взял код из tutorialspoint.com

попробуйте добавить это в HelloWeb-servlet.xml

<context:annotation-config /> 

Это позволит annotat Ионы

и а также включить это в вашем web.xml

<welcome-file-list> 
<welcome-file>/WEB-INF/jsp/login.jsp</welcome-file> 
</welcome-file-list> 
0

У меня была та же проблема, и обнаружил, что мое имя было JSP пространство. Пример из tutorialspoint работает отлично, как есть.

+1

это скорее комментарий, чем реальный ответ, так как вы только гадаете. – maRtin

0

Я знаю, что этот пост очень старый, это ради других, которые могут столкнуться с тем же вызовом. Неправильное отображение вашего URL-адреса. Используйте это как ваш контроллер. обратите внимание на изменение только «привет» до «HelloWeb» имя в вашем Controoler (@RequestMapping («/ привет»)) должно быть таким же, как имя в вашем веб-приложение ( HelloWeb / )

package com.tutorialspoint; 
    import org.springframework.stereotype.Controller; 
    import org.springframework.ui.ModelMap; 
    import org.springframework.web.bind.annotation.RequestMapping; 
    import org.springframework.web.bind.annotation.RequestMethod; 

    @Controller 
    @RequestMapping("/HelloWeb") 
    public class HelloController { 
     @RequestMapping(method = RequestMethod.GET) 
     public String printHello(ModelMap model) { 
      model.addAttribute("message", "Hello Spring MVC Framework!"); 

      return "hello"; 
     } 
    } 
0

Это ваш код ...

`<property name="prefix" value="/WEB-INF/jsp/" />` 

it shows that you have folder 'jsp' inside the 'WEB-INF' . 

Но у вас нет папки там, глядя на иерархии проекта.

Следовательно, изменить код в поле ниже:

`<property name="prefix" value="/WEB-INF/" />.` 
Смежные вопросы