1

我想装饰除我的欢迎页面之外的所有请求。当只有我的应用程序上下文在 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,其中调度 servlet 配置为接受所有输入请求。我有一个控制器来显示我的欢迎页面以请求映射“/”。

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

1 回答 1

0

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

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

装饰器.xml

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

<decorator name="welcome" page="welcome.jsp"/> 
于 2011-10-24T17:11:01.140 回答