整合SiteMesh
SiteMesh 是通过Filter过滤request 和 response, 对原始的页面进行装饰,然后再将装饰后的页面返回给客户端。
使用步骤:
1 导入jar包 web.xml中配置过滤器
2 制作装饰器页面
3 在decrators.xml中配置装饰器
Warn: 要正确的装饰页面,在设置装饰器的时候,一定要对 请求(action)和响应(jsp)都要进行设置,否则,FILTER不会进行过滤
关于路径的问题,解决方法是:<%=application.getContextPath()%>/
但是有个问题:如果在
<page:applyDecorator page="decorators/nav.html" name="panel" encoding="UTF-8" />
中加入上面的语句的话,报错误
<page:applyDecorator page=":<%=application.getContextPath()%>/decorators/nav.html" name="panel" encoding="UTF-8" />
装饰器页面中的路径是相对于被装饰页面的路径的, 理解了这点很重要