siteMesh + Spring 3.0 +排除模式

时间:2011-08-22 20:24:10

标签: spring-mvc sitemesh

除了我的欢迎页面,我想要装饰所有请求。这是我显示的默认页面,只有我的应用程序上下文在url中而没有其他路径元素。

  

http://hostname:8080/MyApp/ - >这不应该装饰。这应该显示我的欢迎页面。如何排除这个?

     

http://hostname:8080/MyApp/user - >现在使用下面的配置

进行装饰

我有以下decorators.xml。

<!-- Any urls that are excluded will never be decorated by Sitemesh -->
<excludes>
    <pattern>/exclude/*</pattern>
</excludes>

<decorator name="main" page="main.jsp">
    <pattern>/*</pattern>
</decorator>

我正在使用Spring MVC,其中dispatch servlet被配置为接受所有输入请求。我有一个控制器来显示我的欢迎页面,用于请求映射“/".

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

1 个答案:

答案 0 :(得分:0)

我找到了自己做的方法。在我的welcome.jsp中,我添加了一个元标记,如下所示,在decorators.xml中添加了欢迎装饰器。

<head> 
     <meta name="decorator" content="welcome"> 
</head> 

decorators.xml

<decorator name="main" page="main.jsp"> 
     <pattern>/*</pattern> 
</decorator> 

<decorator name="welcome" page="welcome.jsp"/>