开发者社区> 问答> 正文

sitemesh 、spring mvc无法修饰错误页

spring mvc 3.1 和 sitemesh 2.4 。

其他页都能正常修饰,就是错误页不能正常修饰。

web.xml 配置. 错误码用了重定向。

<filter>
    <filter-name>sitemesh</filter-name>
    <filter-class> com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>sitemesh</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

<error-page>
        <error-code>404</error-code>
        <location>/404</location>
    </error-page>
    <error-page>
        <error-code>500</error-code>
        <location>/500</location>
    </error-page>
sitemesh.xml配置

<sitemesh>
    <property name="decorators-file" value="/WEB-INF/decorators.xml" />
    <excludes file="${decorators-file}" />
 
    <page-parsers>
        <parser default="true" class="com.opensymphony.module.sitemesh.parser.HTMLPageParser" />
        <parser content-type="text/html" class="com.opensymphony.module.sitemesh.parser.HTMLPageParser" />
        <parser content-type="text/html;charset=UTF-8" class="com.opensymphony.module.sitemesh.parser.HTMLPageParser" />
    </page-parsers>
 
    <decorator-mappers>
        <mapper
            class="com.opensymphony.module.sitemesh.mapper.PrintableDecoratorMapper">
            <param name="decorator" value="printable" />
            <param name="parameter.name" value="printable" />
            <param name="parameter.value" value="true" />
        </mapper>
 
        <mapper
            class="com.opensymphony.module.sitemesh.mapper.ConfigDecoratorMapper">
            <param name="config" value="${decorators-file}" />
        </mapper>
    </decorator-mappers>
</sitemesh>
decorators.xml 配置

<decorators defaultdir="/WEB-INF/views/decorators">
<decorator name="main" page="main.jsp">
<pattern>/*</pattern>
</decorator>
<excludes>
        <pattern>/api/*</pattern>
    </excludes>
</decorators>

各位有没有什么建议?哪里有问题呢

展开
收起
a123456678 2016-03-16 11:57:25 3978 0
1 条回答
写回答
取消 提交回答
  • 在filter中指明ERROR也用sitemesh装饰:
        <filter>
            <filter-name>sitemeshFilter</filter-name>
            <filter-class>com.opensymphony.sitemesh.webapp.SiteMeshFilter</filter-class>
        </filter>
    
        <filter-mapping>
            <filter-name>sitemeshFilter</filter-name> 
            <url-pattern>/*</url-pattern> 
            <dispatcher>ERROR</dispatcher> 
            <dispatcher>FORWARD</dispatcher> 
        </filter-mapping> 
    2019-07-17 19:03:48
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载

相关实验场景

更多