decorator.xml中配置裝飾器頁面的pattern路徑配置準确,jsp請求的頁面沒有問題,隻有.action請求的頁面無法裝飾。那就可能是sitemesh的filter配置順序的問題了
解決辦法很簡單:
将web.xml中sitemeshFilter放在strutsFilter的之前就好啦~
例如:
<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>/jsp/*</url-pattern>
</filter-mapping>
<!-- 配置struts過濾器,Filter會過濾使用者請求為結尾為.action的并将其轉入到struts架構處理 -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>