org.springframework.web.servlet.DispatcherServlet noHandlerFound 404 Ошибка ответа - PullRequest
0 голосов
/ 08 июня 2019
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1"
    xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">
    <display-name>Archetype Created Web Application</display-name>
    <servlet>
        <servlet-name>sample</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>sample</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
</web-app>

индексный файл, в который я добавил форму и действие «output»

<html>
<body>  <form action="output">
        <input type="text" name="t1"></br> <input type="text" name="t2"></br>
        <input type="submit">
    </form>
</body>
</html>

Сервлет настроен как показано ниже

<?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:p="http://www.springframework.org/schema/p"
  xmlns:aop="http://www.springframework.org/schema/aop"
  xmlns:tx="http://www.springframework.org/schema/tx"
  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-3.0.xsd
    http://www.springframework.org/schema/aop
    http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
    http://www.springframework.org/schema/mvc
    http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context-3.0.xsd">

<context:annotation-config></context:annotation-config>
<context:component-scan base-package="com.guni.Controllers"></context:component-scan>
</beans>

sampleController.java

package com.guni;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

@Controller
public class sampleController { 
    @RequestMapping(value="/output", method = RequestMethod.GET)
    public String karna()
    {
        return "sampleOutput.jsp";
    }
}

Я пытаюсь выполнить форму GET с кнопкой отправки. кнопка Отправить не реагирует ни на что. Веб-страница дает мне ошибку 404. Любое тело имеет любую идею. Я использую Eclipse 2019 и Tomcat9. я пытаюсь создать веб-приложение в Maven, используя Spring 4.0

Когда я запускаю проект, он выдаёт мне ошибку org.springframework.web.servlet.DispatcherServlet noHandlerFound Нет отображения для GET / demoMVC / output

1 Ответ

0 голосов
/ 08 июня 2019

Ваш метод контроллера зарегистрирован для приема запросов GET на /output, в то время как вы выполняете запрос GET на /demoMVC/output.Либо измените значение @RequestMapping на /demoMVC/output, либо измените URL, который вы вызываете в браузере.

Кроме того, во многих случаях InternalResourceViewResolver настроен на возвращение имени файла JSP безсуффикс .jsp.Предполагая, что вы создали файл с именем sampleOutput.jsp, настройте метод karna(), чтобы он возвращал "sampleOutput" вместо "sampleOutput.jsp".Если это не поможет, вы сможете опубликовать свою конфигурацию InternalResourceViewResolver?

...