Spring url-pattern和@RequestMapping主页

时间:2012-12-28 18:49:01

标签: spring java-ee spring-mvc

我在web.xml中有以下配置:

<servlet-mapping>
    <servlet-name>orchard</servlet-name>
    <url-pattern>/orchard/*</url-pattern>
    <url-pattern>/orchard</url-pattern>
</servlet-mapping>

以下@RequestMapping

@RequestMapping(value={"", "/","/home"}, method=RequestMethod.GET)
public String homePage(Model model, Principal principal, HttpSession session)

但是要访问主页我需要去:

http://host:8080/app/orchard/ or http://host:8080/app/orchard/home

如果我省略斜杠:

http://host:8080/app/orchard 

我得到了404.我在配置中做错了吗?

干杯, NFV

3 个答案:

答案 0 :(得分:0)

我认为你应该在webapps文件夹下创建index.jsp页面,然后你应该转发到home.html,使用jsp:forward标签

答案 1 :(得分:0)

尝试此请求映射,我认为这应该适合您:

@RequestMapping(value={"/*", "/home"}, method=RequestMethod.GET)

这将是一个全能,但如果找不到任何其他映射,它将默认为此。

答案 2 :(得分:0)

看起来@RequestMapping中的空格不起作用,试试这个

<servlet-mapping>
  <servlet-name>orchard</servlet-name>
  <url-pattern>/</url-pattern>
</servlet-mapping>

更改控制器:

@RequestMapping(value={"/orchard","/orchard/home"}, method=RequestMethod.GET)
   public String homePage(Model model, Principal principal, HttpSession session)