Java 应用程序启动index.jsp而不是mail-menu.jsp

Java 应用程序启动index.jsp而不是mail-menu.jsp,java,spring,jsp,spring-mvc,Java,Spring,Jsp,Spring Mvc,我的演示应用程序有问题。 为什么应用程序启动index.jsp不是我在HomeController中映射的main-menu.jsp?正如我通过调试器看到的,没有使用HomeController。 问题出在哪里?如何解决? 谢谢 web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http

我的演示应用程序有问题。 为什么应用程序启动index.jsp不是我在HomeController中映射的main-menu.jsp?正如我通过调试器看到的,没有使用HomeController。 问题出在哪里?如何解决? 谢谢

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
    id="WebApp_ID" version="3.1">

    <display-name>spring-mvc-demo</display-name>

    <!-- Spring MVC Configs -->

    <!-- Step 1: Configure Spring MVC Dispatcher Servlet -->
    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/spring-mvc-demo-servlet.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <!-- Step 2: Set up URL mapping for Spring MVC Dispatcher Servlet -->
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

</web-app>

我不太确定问题出在哪里,但我所能做的就是向你建议一些替代方案。尝试将控制器配置为:

public class HomeController extends AbstractController{

    @Override
    protected ModelAndView handleRequestInternal(HttpServletRequest request,
        HttpServletResponse response) throws Exception {

        ModelAndView model = new ModelAndView("main-menu");
        model.addObject("msg", "Lets Check");

        return model;
    }
}
Web.xml:

<servlet>
    <servlet-name>mvc-dispatcher</servlet-name>
        <servlet-class>
             org.springframework.web.servlet.DispatcherServlet
        </servlet-class>
        <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>spring-mvc-demo</servlet-name>
        <url-pattern>/</url-pattern>
  </servlet-mapping>

mvc调度器
org.springframework.web.servlet.DispatcherServlet
1.
SpringMVC演示
/
您的spring mc demo servlet.xml如下所示:

<bean name="/welcome.htm" 
        class="com.aalegz.springdemo.mvc,HomeController" />

    <bean id="viewResolver"
        class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
        <property name="prefix">
            <value>/WEB-INF/pages/</value>
        </property>
        <property name="suffix">
            <value>.jsp</value>
        </property>
    </bean>

/WEB-INF/pages/
.jsp

你看,我已经提到了它作为一种替代方案,所以如果答案对你没有帮助,请不要投反对票,我已经努力寻找解决方案。

*.htm
可能会让别人投你的反对票哦,对不起,url是否只映射到“/”ok@勒库姆
<servlet>
    <servlet-name>mvc-dispatcher</servlet-name>
        <servlet-class>
             org.springframework.web.servlet.DispatcherServlet
        </servlet-class>
        <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>spring-mvc-demo</servlet-name>
        <url-pattern>/</url-pattern>
  </servlet-mapping>
<bean name="/welcome.htm" 
        class="com.aalegz.springdemo.mvc,HomeController" />

    <bean id="viewResolver"
        class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
        <property name="prefix">
            <value>/WEB-INF/pages/</value>
        </property>
        <property name="suffix">
            <value>.jsp</value>
        </property>
    </bean>