2

I use sitemesh to decorate my application.And config a decorator.xml as follow to make some url not decorated by sitemesh.

<?xml version="1.0" encoding="UTF-8"?>
<decorators defaultdir="/WEB-INF/decorators">
    <excludes>
        <pattern>/xxx/merchant/getimage</pattern>
    </excludes>
   <decorator name="centralized">
     <pattern>/*</pattern>
   </decorator>
</decorators>

And I use a filter to control the sitemesh decorate dynamicly. How can i know the excludes patterns in decorator.xml use API.

public class NewMenuFilter implements Filter {
    @Override
    public void init(FilterConfig filterConfig) {
    }

    @Override
    public void doFilter(ServletRequest request, 
                         ServletResponse response, 
                         FilterChain chain) 
            throws IOException, ServletException {
        String contextPath = 
             ((HttpServletRequest) request).getRequestURI();
        // if contextPath is match excludes pattern
        request.setAttribute("Header_HeadType", "XXX");
        //else 
        request.setAttribute("Header_HeadType", "YYY");
        chain.doFilter(request, response);
    }
}
vsminkov
  • 10,912
  • 2
  • 38
  • 50
yonney.yang
  • 135
  • 8

0 Answers0