我有一个设计得很糟糕的多 WAR Web 应用程序。有一个 WAR 负责处理针对数据库的某些授权,并使用 jsp 标记库定义标准网页。主 WAR 基本上检查用户的权限,然后基于此显示指向其他已部署 WARS 的上下文路径的链接。其他部署的每个 WAR 都包含此自定义标记库。
我正在努力重新设计这个应用程序,我想保留的一件好事是我们有其他项目团队开发了这些 WAR 模块,这些模块“插入”我们当前的系统以利用我们必须提供的其他功能。
不过,我并不完全确定如何处理页面模板。我需要一个足够容易在多个战争中使用的模板系统(我在考虑 jsp 片段??)。我实际上只需要定义一致的标题和主导航部分。页面上显示的其他内容取决于各个 Web 项目。
有什么建议么?
我希望这是清楚的,如果不是我可以详细说明。
过去使用过类似的事情Sitemesh http://www.opensymphony.com/sitemesh/
我们定义了一个名为 Skins-app 的新 Web 应用程序,它只有所有其他需要的通用页眉、页脚、导航栏。
Sitemesh 通过 Skins-app 中名为 WEB-INF/decorators.xml 的文件进行配置
然后在任何使用 Web 应用程序中,您还可以添加 WEB-INF/decorators.xml。
并让您的页面被另一个应用程序的皮肤“装饰”
<decorator name="main" page="/decorators/layout.jsp" webapp="skins-app">
<pattern>/*</pattern>
</decorator>
如果需要从“装饰”中排除任何页面,您也可以在使用的网络应用程序中进行详细的包含/排除。查看 Sitemesh 链接页面上的视觉示例。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)