2015-02-25 3 views
0

Я пробовал простое приложение Spring-MVC, которое принимает данные от пользователя и отображает его на экране. Я новичок в Spring-MVC. Я получаю сообщение о браузере сказал:Ошибка: статус HTTP 404: запрашиваемый ресурс недоступен?

"HTTP status 404:The requested resource is not available" 

Я пытаюсь запустить в браузере, используя URL:

"http://localhost:8080/Spring_Test/admissionForm.html" 

Его не показывая никаких сообщений на консоли затмения. Я не уверен, что погода не хватает какого-либо файла jar или какой-то другой вещи. Здесь я делюсь файлом и файлами jar. Пожалуйста, помогите мне решить эту проблему.

Jar файлы:

commons-fileupload-1.2.2.jar 
commons-io-1.3.2.jar 
commons-logging-1.1.1.jar 
jstl-1.1.2.jar 
mysql-connector-java-5.1.34-bin.jar 
spring-aop-3.0.6.RELEASE.jar 
spring-asm-3.0.6.RELEASE.jar 
spring-beans-3.0.6.RELEASE.jar 
spring-context-3.0.6.RELEASE.jar 
spring-context-support-3.0.6.RELEASE.jar 
spring-core-3.0.6.RELEASE.jar 
spring-expression-3.0.6.RELEASE.jar 
spring-jdbc-3.2.9.RELEASE.jar 
spring-web-3.0.6.RELEASE.jar 
spring-webmvc-3.0.6.RELEASE.jar 

web.xml

<?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_3_0.xsd" id="WebApp_ID" version="3.0"> 
<display-name>Spring_Test</display-name> 

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

<servlet-mapping> 
    <servlet-name>Spring_Test</servlet-name> 
    <url-pattern>/</url-pattern> 
</servlet-mapping> 
</web-app> 

Spring_Test-servlet.xml:

<?xml version='1.0' encoding='UTF-8' ?> 
<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" 
    xmlns:mvc="http://www.springframework.org/schema/mvc" 
    xmlns:p="http://www.springframework.org/schema/p" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans-4.0.xsd 
    http://www.springframework.org/schema/context 
    http://www.springframework.org/schema/context/spring-context.xsd 
    http://www.springframework.org/schema/mvc 
    http://www.springframework.org/schema/mvc/spring-mvc.xsd"> 

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

<mvc:default-servlet-handler/> 

<bean id="viewResolver" 
    class="org.springframework.web.servlet.view.UrlBasedViewResolver"> 
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" /> 
    <property name="prefix" value="/WEB-INF/" /> 
    <property name="suffix" value=".jsp" /> 
</bean> 
</beans> 

Контроллер:

package com.leader; 

import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RequestMethod; 
import org.springframework.web.bind.annotation.RequestParam; 
import org.springframework.web.servlet.ModelAndView; 
import org.springframework.stereotype.*; 

@Controller 
public class StudentAdmissionController { 

@RequestMapping(value="/Spring_Test/admissionForm.html", method=RequestMethod.GET) 
public ModelAndView getAdmissionForm(){ 
    ModelAndView model = new ModelAndView("AdmissionForm"); 
    return model; 
} 

@RequestMapping(value = "/Spring_Test/submitAdmissionForm.html", method = RequestMethod.POST) 
public ModelAndView submitAdmissionForm(@RequestParam("studentName") String name,@RequestParam("hobby") String hobby){ 

    ModelAndView model = new ModelAndView("AdmissionSuccess"); 
    model.addObject("msg", "hello"); 
    return model; 

} 

} 
+1

Hmm Sprint_Test против Spring_Test? –

+0

@ScaryWombat: Привет ... Я исправил его. Еще одна проблема. – Madhusudan

+0

Я настоятельно рекомендую использовать Spring Boot вместо ручной настройки всего. Легче получить вывод отладки, и вы вряд ли сделаете простые ошибки, подобные этому. Кроме того, общие префиксы, такие как '/ Spring_Test', могут быть помещены в класс контроллера для уменьшения дублирования. – chrylis

ответ

0

@RequestMapping (значение = "/ admissionForm.html", метод = RequestMethod.GET) использование вместо того, чтобы в контроллере

@RequestMapping (значение = "/ Spring_Test/admissionForm.html", метод = RequestMethod.GET)

+0

Нет человека ... еще такая же ошибка – Madhusudan

0

попробуйте изменить шаблон URL-адрес в вашем web.xml, как/* вместо/

+0

Собственно, '/ **'. – chrylis

1

Может быть, вы забыли <mvc:annotation-driven /> в вашей конфигурации, чтобы включить ур @Controller аннотаций сканирование, по крайней мере, вот как это выглядит

Смежные вопросы