Sitemesh不装饰返回的视图
问题描述:
我试图设置一个简单的sitemesh装饰页面,但现在正在运行到墙上。Sitemesh不装饰返回的视图
首先,我的设置:
#decorators.xml
<?xml version="1.0" encoding="UTF-8"?>
<decorators>
<decorator name="basicLayout" page="/WEB-INF/views/layout.jsp">
<pattern>*</pattern>
</decorator>
</decorators>
这里没有什么特别
#web.xml
<filter>
<filter-name>sitemesh</filter-name>
<filter-class>com.opensymphony.sitemesh.webapp.SiteMeshFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>sitemesh</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
没什么特别有
当我调用应用程序的索引,它被装饰。 当我点击一个链接调用返回视图的控制器时,返回的视图不会被装饰。实际上,这只适用于目前的欢迎文件。 我尝试了不同的修饰器模式,结果是相同的或除了:D
有人可以给我一个提示呢?
谢谢!
答
对于sitemesh视图的装饰,它认为“main”模板是默认的。所以如果你没有在你的JSP中指定任何模板(要被修饰),那么它将decorator.xml中的定义定义为main。
如果你打算在应用程序中只有一个模板(很少机会),然后将装饰器名称从basicLayout重命名为main。
如果没有,那么你可以在JSP中使用指定要使用哪个装饰器。
呃,好吧,我发现我自己...... *的.jsp url-pattern的>/* url-pattern的>
ximarin
2012-07-30 15:43:49
+5 !!。解决了我的项目中的问题。谢谢@ ximarin – Bhat 2016-10-12 07:12:39