【发布时间】:2016-08-05 00:21:17
【问题描述】:
首先,这个错误看起来非常愚蠢且易于修复,但问题是一切似乎都很好,我不知道是什么原因造成的。我尝试使用 java 配置和 xml 配置这个 Web 项目,我得到相同的 404错误代码。
警告:在名称为“springapp”的 DispatcherServlet 中找不到带有 URI [/AdminTemplate/] 的 HTTP 请求的映射
如果有人可以在这里帮助我,我将不胜感激。 这是我的代码:
web.xml
<welcome-file-list>
<welcome-file>index.htm</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>springapp</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/springapp-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springapp</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
springapp-servlet.xml
<mvc:annotation-driven />
<context:component-scan base-package="com.admin.controller" />
<mvc:resources mapping="/resources/**" location="resources/" />
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView"></property>
<property name="prefix" value="/WEB-INF/views/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
一个简单的控制器
@Controller
public class PageController {
@RequestMapping(value = "/", method = RequestMethod.GET)
public String homePage() {
return "index";
}
}
还有一个不重要的简单jsp。
我的项目结构是这样的:
当然,如果我在 web.xml 中设置
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
并将 index.jsp 文件从 jsp 文件夹移动到 webapps 它可以工作。 任何人都知道是什么原因造成的?在此先感谢。
更新:
我测试了过去工作的其他项目,现在我得到了相同的 404 错误。
【问题讨论】:
-
你用的是哪个网址?
-
localhost:8080/AdminTemplate/(应用名称后加一个斜杠)
-
试试 localhost:8080/springapp/AdminTemplate
-
它是一样的。在我看来问题不在于链接或配置我认为它应该是一个 tomcat 错误或其他......因为我过去有其他项目但现在我得到了同样的 404 错误
-
你有没有看到控制器在spring star时启动,你需要在日志中看到类似url:/AdminTemplate的东西,如果没有控制器注释是无法识别的
标签: spring spring-mvc servlets http-status-code-404 servlet-mapping