Java 未找到映射错误Spring MVC
我制作了一个非常简单的Spring MVC应用程序来学习AOP,但每次我尝试浏览任何应用程序页面时,都会出现如下错误(未找到映射):Java 未找到映射错误Spring MVC,java,spring,jsp,spring-mvc,Java,Spring,Jsp,Spring Mvc,我制作了一个非常简单的Spring MVC应用程序来学习AOP,但每次我尝试浏览任何应用程序页面时,都会出现如下错误(未找到映射): No mapping found for HTTP request with URI [/TestAOP/page1.htm] in DispatcherServlet with name 'appServlet' 我仔细检查了web.xml、servlet-context.xml和控制器代码,但没有发现任何错误。因此,如果有人能看一下我的web.xml、ser
No mapping found for HTTP request with URI [/TestAOP/page1.htm] in DispatcherServlet with name 'appServlet'
我仔细检查了web.xml、servlet-context.xml和控制器代码,但没有发现任何错误。因此,如果有人能看一下我的web.xml、servlet-context.xml和controller的内容,让我知道我在这里遗漏了什么,以及如何克服这个错误,我将不胜感激。谢谢你的时间
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/root-context.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>appServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>appServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
注意:page01.jsp位于/WEB-INF/views/folder下,请尝试从URL中删除.htm。即:http://[server][:port]/TestAOP/page1
这应该与控制器上的映射相匹配。我建议再次检查控制器是否由spring实例化。最简单的方法是创建一个带有sysout(“我的控制器已实例化!!!”)或其他内容的空构造函数,让我们看看这一行是否在catalina.out中。看看是否
<context:component-scan base-package="com.sampledomain.app.controller" />
这是控制器的正确软件包。如果您的控制器不是由spring实例化的,请仔细检查spring配置路径等。您就是CHAMP!非常感谢:):)问题出在Spring配置路径中。最后一个问题,你们能给我提供一个代码示例吗?在哪里放置代码来测试控制器类初始化?因此,如果下次由于控制器初始化问题而发生这种情况?@controller public class HomeController{public HomeController(){System.out.println(“!!!!”}}}),只需创建一个带有一些输出的默认构造函数,让我们看看spring是否实例化了您的bean。您可以在调试模式下启动服务器,然后在那里添加一个调试点或任何东西。关键是看是否调用了默认构造函数。再次感谢您的帮助:)
@Controller
public class HomeController {
@RequestMapping(value = "/page1", method = RequestMethod.GET)
public String firstPage(HttpServletRequest request,Locale locale, Model model) {
Date date = new Date();
DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, locale);
String formattedDate = dateFormat.format(date);
model.addAttribute("serverTime", formattedDate );
return "page01";
}
}
<context:component-scan base-package="com.sampledomain.app.controller" />