I'm losing my mind and donβt understand what the problem is:
I have the following structure:
SpringMVC +WebContent -web-inf -web.xml -springMVC-servlet.xml -index.jsp -security -login.jsp
web.xml
<display-name>springMVC</display-name> <servlet> <servlet-name>springMVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springMVC</servlet-name> <url-pattern>*.html</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>springMVC</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>springMVC</servlet-name> <url-pattern>/index.html</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list>
SpringMVC-servlet.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-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/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans"> <context:annotation-config/> <context:component-scan base-package="com.vanilla.springMVC"/> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" > <property name="prefix"> <value>/</value> </property> <property name="suffix"> <value>.jsp</value> </property> </bean> </beans>
My controller:
package com.vanilla.springMVC; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.portlet.ModelAndView; @Controller public class DefaultController { @RequestMapping(value="/index.html", method=RequestMethod.GET) public ModelAndView index(){ ModelAndView mv = new ModelAndView("index"); return mv; } @RequestMapping(value="/login.html", method=RequestMethod.GET) public ModelAndView loginPage(){ ModelAndView mv = new ModelAndView("/security/login"); return mv; } }
I have no problem to go to /index.html
http: // localhost: 8080 / SpringMVC / index.html works fine.
however, when I go to http: // localhost: 8080 / SpringMVC / login.html I have a 404 error.
HTTP Status 404 - /SpringMVC/login.jsp type Status report message /SpringMVC/login.jsp description The requested resource (/SpringMVC/login.jsp) is not available.
I do not want to move login.jsp at the same level as index.jsp, but why do I have this problem?
java spring spring-mvc jsp servlets
danny.lesnik
source share