Sitemesh整合struts2使用多个装饰器(非/*)的BUG修正

来源:互联网 发布:淘宝上卖假药怎么投诉 编辑:程序博客网 时间:2024/05/18 16:13

Bug报告地址: http://jira.opensymphony.com/browse/SIM-127

Bug描述: 在和sitemesh和struts整合使用时, 由于request.getRequestURI()得到的是请求的路径(浏览器地址栏输入的路径), 而通过request.getPathInfo()得到的确实配置的实际页面的路径, 因此, 根据sitemesh的com.opensymphony.module.sitemesh.mapper.ConfigDecoratorMapper.getDecorator(HttpServletRequest, Page)这个方法的处理不能得到有效的装饰器配置.

涉及源代码:

处理方案(此种解决方案经过测试在使用一级目录配置装饰器的时候工作良好.):