Я знаю, что это много кода, чтобы выбросить туда, но я был бы признателен, если кто-то может помочь мне разобраться в проблеме. Это просто базовый MVC, на главной странице есть только одна ссылка, «Вход», и при нажатии на нее вы должны перейти на login.jsp. Однако он этого не делает. Я считаю, что проблема связана с контроллером, потому что аннотации в файле контроллера светло-серые (с использованием идеи intellij), как будто они не используются. «/ login» отображается в URL-адресе.Проблема с веб-приложением Spring (MVC) Статус 404
web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app 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"
version="3.1">
<welcome-file-list>
<welcome-file>/WEB-INF/jsp/index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>spring</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/config/spring-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
пружинно-servlet.xml (конфигурации):
<?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: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.xsd">
<mvc:annotation-driven />
<context:component-scan base-package="com.nusuth.controllers"></context:component-scan>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
</beans>
loginController.java:
package com.nusuth.controllers;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
@Controller
public class loginController {
@RequestMapping(value="/login" , method=RequestMethod.GET)
public ModelAndView loadLoginPage() {
ModelAndView mav = new ModelAndView("login");
return mav;
}
}
у вас есть login.jspв папке jsp правильно? а также добавить выход журнала в ваш вопрос, это будет очень полезно. –
Правильно, login.jsp находится в папке jsp. Я включил вывод журнала выше. Благодарю. – muninn9
, если вы используете какой-либо журнал, попробуйте установить уровень журнала для отладки, который позволит детально изучить основную причину. –