Java 获取此org.springframework.web.servlet.DispatcherServlet noHandlerFound错误和警告:在SpringMVC中未找到HTTP请求URI的映射

Java 获取此org.springframework.web.servlet.DispatcherServlet noHandlerFound错误和警告:在SpringMVC中未找到HTTP请求URI的映射,java,spring,spring-mvc,servlets,Java,Spring,Spring Mvc,Servlets,Index.jsp <html> <body> <form action="add"> <input type="text" name="t1"><br> <input type="text" name="t2"><br> <input type="submit" /> </form&

Index.jsp

<html>
    <body>
        <form action="add">
            <input type="text" name="t1"><br>
            <input type="text" name="t2"><br>
            <input type="submit" />
        </form>
    </body>
</html>
我有一个index.jsp文件,其中声明action=/add。现在在web.xml中声明一个调度程序,在该调度程序中指定servlet名称登录。然后创建一个telusko-servlet.xml,其中定义基本包:

<ctx:component-scan base-package="com.telusko"></ctx:component-scan>

在您的配置中添加viewResolver bean,我假设您的视图在“WEB-INF/jsp”中


希望它能工作。

在项目结构中,创建控制器的com.telusko包应该位于Java Resources/src/main/Java文件夹下,该文件夹缺失,可以通过查看项目属性并单击Java构建路径来创建。在那里,请选择“源”选项卡并删除丢失的文件夹。然后再次创建或添加具有相同文件夹路径和名称的文件夹。这将在项目结构中创建一个文件夹src/main/java。在此路径中,应移动或创建带有控制器的com.telusko包。然后再次清理并运行服务器。它现在可以工作了。

我也遇到了同样的问题,下面对项目文件夹结构的更改解决了我的问题

@Component
@RequestMapping(path="/add")
public class AddController {

    @RequestMapping(method=RequestMethod.GET)
    public void add() {
        System.out.println("I'm here");
    }
}
按如下所示更改文件夹结构,如果没有可用的java文件夹,请创建它。您的AddController.java应该位于/src/main/java下。更改后,您可以在日志中看到SOP


/src/main/resources to/src/main/java

花了一整天的时间,我终于了解了解决方案。当您创建maven项目时,默认情况下它不会在“javaResource/src/main”下创建“java”文件夹,这是获取控制器路径所必需的

确保首先在“javaResource/src/main”中创建java文件夹,然后创建包和控制器

附上截图供参考


我面临着同样的问题,没有一个答案有效。在web.xml中做了一些更改之后,它解决了我的问题。我只是在web.xml中添加dispatcher-servlet.xml的路径。附上图片


(警告:GET/Hesab_kar/login没有映射)此警告已发出。您可以添加有关配置和登录控制器的更多信息吗?现在您可以看到我的文件,我已对其进行了更新。请帮助我,我已浪费了2天时间来解决问题,但找不到任何解决方案。我没有任何视图,只有一个jsp文件(index.jsp)当我运行我的程序时,它不会在浏览器上显示任何内容,这是正常的。但它应该在控制台上显示消息。右??尝试创建文件夹“/WEB-INF/jsp/”并将jsp文件放在演示中。
base package=“resources.com.telusko”
似乎有误。当您的基本包只是
com.telusko
时,为什么
resources
在其中?我首先尝试使用com.telusko,但它不起作用,然后我将其更改为resource.com.telusko。在控制台信息上获取此错误:FrameworkServlet'telusko':初始化在2501毫秒9月26日完成,2018年1月6日凌晨1:55 org.springframework.web.servlet.PageNotFound noHandlerFound警告:在名为“telusko”的DispatcherServlet中找不到URI为[/DemoMVC/add]的HTTP请求的映射,我应该得到“我在这里”INFO:FrameworkServlet“telusko”后面的消息:初始化在2501年完成ms@Prashant辛格,我在我的项目中遇到了这个错误。你找到解决这个问题的方法了吗?你能为你的答案添加一些上下文吗?
package com.telusko;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class AddController {
    @RequestMapping("/add")
    public void add() {
        System.out.println("i am here");
    }
}
<ctx:component-scan base-package="com.telusko"></ctx:component-scan>
Sep 26, 2018 10:47:36 PM org.springframework.web.servlet.DispatcherServlet 
initServletBean
INFO: FrameworkServlet 'telusko': initialization started
Sep 26, 2018 10:47:36 PM 
org.springframework.web.context.support.XmlWebApplicationContext 
prepareRefresh
INFO: Refreshing WebApplicationContext for namespace 'telusko-servlet': 
startup date [Wed Sep 26 22:47:36 IST 2018]; root of context hierarchy
Sep 26, 2018 10:47:36 PM 
org.springframework.beans.factory.xml.XmlBeanDefinitionReader 
loadBeanDefinitions
INFO: Loading XML bean definitions from ServletContext resource [/WEB- 
INF/telusko-servlet.xml]
Sep 26, 2018 10:47:38 PM org.springframework.web.servlet.DispatcherServlet 
initServletBean
INFO: FrameworkServlet 'telusko': initialization completed in 2096 ms
Sep 26, 2018 10:47:38 PM org.apache.catalina.core.StandardWrapperValve 
invoke
SEVERE: Servlet.service() for servlet [telusko] in context with path 
[/DemoMVC] threw exception [Servlet execution threw an exception] with root 
cause
java.lang.NoSuchMethodError:   
org.springframework.http.HttpMethod.resolve(Ljava/lang/String;)
Lorg/springframe 
ork/http/HttpMethod;
at 

org.springframework.web.servlet.FrameworkServlet.service
(FrameworkServlet.java:8 
41)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at 

org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
 (ApplicationFilterChain.java:231)
 at 


 org.apache.catalina.core.ApplicationFilterChain.doFilter
 (ApplicationFilterChain.java:166)
  at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
 at 

 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:193)
at 

org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:166 at 
org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:199)at 

org.apache.catalina.core.StandardContextValve.invoke
 (StandardContextValve.java:96)at 

org.apache.catalina.authenticator.AuthenticatorBase.invoke
(AuthenticatorBase.jav 
a:490)
at 
org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:139)
    at 
org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:92)
at 

org.apache.catalina.valves.AbstractAccessLogValve.invoke
(AbstractAccessLogValve. 
java:668)
at 

org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:74)
at 
org.apache.catalina.connector.CoyoteAdapter.service
(CoyoteAdapter.java:343)
at 
org.apache.coyote.http11.Http11Processor.service
(Http11Processor.java:408)at 

org.apache.coyote.AbstractProcessorLight.process
 (AbstractProcessorLight.java:66)at 

org.apache.coyote.AbstractProtocol$ConnectionHandler.process
(AbstractProtocol.ja 
va:770)at 

org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun
(NioEndpoint.java:1415)at 

org.apache.tomcat.util.net.SocketProcessorBase.run
(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at 



org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run
(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
    <property name="prefix" value="/WEB-INF/jsp/"/>
    <property name="suffix" value=".jsp"/>
</bean>
<ctx:component-scan base-package="resources.com.telusko"></ctx:component- 
scan>
<ctx:component-scan base-package="com.telusko"></ctx:component- 
scan>
@RequestMapping("/add")
public String add()
{
    System.out.println("i am here");
    return "index"; //return your view to render
}
@Component
@RequestMapping(path="/add")
public class AddController {

    @RequestMapping(method=RequestMethod.GET)
    public void add() {
        System.out.println("I'm here");
    }
}