我正在寻找一种基于某些 bean 中设置的某些值动态加载布局的方法。将 Spring MVC 与 apache 瓦片一起使用。
在我的 views.xml 中,我通常会有类似的内容:
<definition extends="mytemplate" name="home">
<put-attribute name="title" value="Home Page Title"/>
<put-attribute name="heading" value="Home"/>
<put-attribute name="body" value="/WEB-INF/pages/home.jspx"/>
<put-attribute name="side" value="/WEB-INF/pages/side.jspx"/>
</definition>
然后在 mytemplate.jspx 中会有代码定义模板的外观。
我正在寻找的是一种根据某些 URL 逻辑更改 mytemplate 的方法(检查传入的 url 是 www.example1.com 还是 www.example2.com),通过 RequestInterceptor 拦截 url,在 ThemeLayoutBean 中设置一个值和然后根据是url1还是url2,有mytemplate1和mytemplate2,每一个都有完全不同的布局。