我正在构建一个分布式菜单系统来支持大型企业的运营方。 这个想法是,用户可以使用此应用程序来启动Web应用程序(在线或离线),驻留在远程服务器上的虚拟化应用程序以及本地安装的传统胖客户端应用程序,这些应用程序是我们无法更改的(请参阅:C/C++,Java的基础)离线网络发射器
一些额外的要求:
- 基于Web的部署自动更新时,应用程序启动时检测到服务器上的新版本支持离线操作的
- - 没有网络连接两者均不会妨碍本地安装的富客户端或者离线网络应用程序
- REST风格的数据同步的用户操作(即,菜单采用间接通过查询安全会合REST服务
- 跨平台,跨浏览器来访问工具/服务与最小或无客户端安装所需要(例如,不需要JVM,不断的bug用户update)
- 直观的UI界面,类似于Mac OS X的堆叠或menus that arc when selected
服务器-侧。现在,我已经决定将ServiceStack作为我的RESTful Web服务框架,并由SQL Server Enterprise数据库支持。目前,服务器端并不是一个关键问题。最终,我需要考虑安全性,角色授权等,但现在我在服务器上拥有良好的处理能力。
客户端候选解决方案。客户是一个不同的故事。我研究的方法解决这个问题,没有一个是理想的宽范围我在寻找更好的替代品,以这些(主要是由于浏览器沙盒的安全性。):
- 离线Web应用程序
- Google Installable Web Apps
- 支持我的大部分使用情况,但据我所知它不能执行本地安装的本地代码
- 为了缓解这个问题,我已经研究过NaCl,但它放在本地合作限制德多数民众赞成执行,这已经超出了我的预算和控制
- HTML5 Offline Web Application
- 这将有力地是我的偏好,但有可能没有上述的NaCl的限制执行从这个胖客户端代码?
- Google Installable Web Apps
- 浏览器扩展
- XUL extension
- 我已经建立的这些中的一个,推出一个小的胖客户端菜单(见下文)
- 这里关注的是,XUL是past its prime。
- Cross-browser extension
- 似乎并不支持执行本地安装的本地代码
- XUL extension
- 浏览器插件
- 厚的Web服务客户端
- XUL-based
- 我所有的努力,我已经走了最远用XUL。我有一个XUL供电的应用程序,使得AJAX请求我的web服务动态填充菜单
- 这是运作良好,到目前为止,但有一些问题:
- How do I launch a webpage from a XUL app within XULRunner?
- 如何启动我的地方来自网页的XUL应用程序?
- 再一次,XUL会变得更长吗?
- Java Web Start的
- 我知道我可以拉JWS这一关,但我使用Custom MIME type
- 基于.NET不知道如何开始使用它,或者它会带我到哪里。
- Appcelerator的钛
- 可能是一个可行的选择。我还没有看过它。
- XUL-based
荣誉,如果你做了这么远!基本上,这个应用程序正在取代用脚本构建的遗留菜单,这需要军队进行维护和更新。我确信这个问题存在一些头重脚轻的SOA解决方案,但预算不会支持在前期设计和长期维护方面的大规模投资。
请告诉我,如果有我到目前为止考察的候选人的替代品。鉴于上述要求,我的问题的理想解决方案是什么?
编辑:我很喜欢这SharePoint Quick Launch Web Part。有没有人有这方面的经验,或知道如何从SP中取消这一点?
感谢您的信息。 – retrodrone 2011-06-21 19:15:21