【发布时间】:2013-09-15 08:55:33
【问题描述】:
我有一个打包为 EAR 的基于 JSF 1.2 的 Java Web 应用程序。它包含几个 JAR 和一个提供 Web UI 作为前端的 WAR。 WAR 包含 JSF 页面 (XHTML)、CSS 文件和其他网络资源,如图像。使用的构建系统是 maven 2(多模块项目)。
现在的目标是为 Web 用户界面提供不同的“风味”。每种风味都可以有不同的样式表和不同的图像,但功能相同。
问题是,我怎么能在没有太多代码重复/开销的情况下做到这一点。我想我必须创建几个 WAR 模块(每种风格一个)和几个依赖于不同 WAR 的 EAR。这样做的缺点是必须为每种口味添加另外两个具有所有配置的模块。所有的 JSF 页面都必须被复制,这真的不是很好(好吧,通过单独的存档提供 XHTML 并使用 Maven's remote resources plugin 到 share remote resources 可能会有所帮助)。
- 所描述的设置是解决我的问题的最佳方法还是有更好的方法?
- 有没有办法在运行时改变样式? IE。提供 CSS 文件和图像作为外部资源?
提前致谢,
- 马丁
【问题讨论】:
-
可能的方法是资源映射 servlet like RichFaces 4 uses。资源映射器可以配置为从外部路径加载资源并将其提供给浏览器。
标签: css maven web-applications war jsf-1.2