【发布时间】:2013-02-07 23:09:27
【问题描述】:
我已经构建了两个 Web 应用程序,我们称之为 App1 和 App2。
App1 有多个页面(Page1.jsp 和 Page2.jsp)。 App1 是一个独立的应用程序,它有一个链接到两个页面的菜单。
App2 有多个页面(Page3.jsp 和 Page4.jsp)。 App2 也是一个独立的应用程序,它有一个链接到两个页面的菜单。
现在我想在不修改 App1 或 App2 的情况下将 App1 和 App2 组合成一个超级应用程序。这个超级应用程序应该有一个链接到 App1/Page1.jsp、App1/Page2.jsp、App2/Page3.jsp 和 App2/Page4.jsp 的菜单。
我想到了几种方法来做到这一点:
解决方案 1:框架
我可以创建一个菜单框架,它有一个链接到 App1 和 App2 页面的菜单。
我可以有一个单独的框架,用于显示 App1 和 App2 的内容。
但是,我并不热衷于使用框架 (http://www.html-faq.com/htmlframes/?framesareevil)。
方案二:根据URL参数动态构建菜单
超级应用程序可以有一个基于 div 的菜单链接到 App1 和 App2。它可以在 URL 上传递参数,例如App1/Page1.jsp?parent=SuperApp.
App1 和 App2 可以根据 parent 参数动态构建菜单。
例如,如果 parent 参数不存在,则 App1 将使用其正常菜单链接到 Page1.jsp 和 Page2.jsp。
但是,如果 parent 参数存在,则 App1 将使用 SuperApp 菜单 (SuperApp/header.html) - 它会在 JSP 页面中动态包含此 HTML。这个 SuperApp 菜单将链接到 App1 和 App2 中提供的所有页面。
第二个解决方案可以在不使用框架的情况下工作,但我想探索一下是否还有其他我没有考虑过的解决方案?
【问题讨论】:
-
您为什么不简单地制作一个集成良好的应用程序?它不会那么混乱。
-
我希望将 App1 和 App2 作为独立应用程序 - 在某些情况下我想在没有 App2 的情况下部署 App1,在某些情况下我想在没有 App1 的情况下部署 App2。
标签: java web menu frames composite