Web applications 离线web启动器
我正在构建一个分布式菜单系统,以支持大型企业的操作端。 其想法是,用户可以使用此应用程序启动web应用程序(在线或离线)、驻留在远程服务器上的虚拟化应用程序,以及本地安装的、我们无法更改的传统厚客户端应用程序(读:C/C++,基于Java) 一些额外要求:Web applications 离线web启动器,web-applications,menu,xul,distributed,offline,Web Applications,Menu,Xul,Distributed,Offline,我正在构建一个分布式菜单系统,以支持大型企业的操作端。 其想法是,用户可以使用此应用程序启动web应用程序(在线或离线)、驻留在远程服务器上的虚拟化应用程序,以及本地安装的、我们无法更改的传统厚客户端应用程序(读:C/C++,基于Java) 一些额外要求: 基于Web的部署 应用程序启动检测到服务器上有新版本时自动更新 脱机启用-缺少网络连接不会妨碍本地安装的胖客户端或脱机web应用程序的用户操作 RESTful数据同步(即,菜单通过查询安全集合REST服务使用间接方式访问工具/服务) 跨平台
- 基于Web的部署
- 应用程序启动检测到服务器上有新版本时自动更新
- 脱机启用-缺少网络连接不会妨碍本地安装的胖客户端或脱机web应用程序的用户操作
- RESTful数据同步(即,菜单通过查询安全集合REST服务使用间接方式访问工具/服务)
- 跨平台、跨浏览器,只需最少或不需要客户端安装(例如,不需要不断让用户出错的JVM)
- 直观的用户界面,类似于Mac OS X或
- 脱机web应用程序
-
- 支持我的大多数用例,但AFAIK无法执行本地安装的本机代码
- 为了缓解这种情况,我进行了研究,但它对执行的本机代码进行了限制,这超出了我的预算和控制范围
-
- 这将是我的首选,但是否有可能在没有上述限制的情况下执行厚客户机代码
-
- 浏览器扩展
-
- 我已经构建了其中一个来启动一个小型的厚客户端菜单(见下文)
- 这里需要考虑的是XUL是
-
- 似乎不支持执行本地安装的本机代码
-
- 浏览器插件
-
- 看起来很危险
-
- 厚web服务客户端
-
- 在我所有的努力中,我在XUL方面做得最好。我有一个支持XUL的应用程序,它向我的web服务发出AJAX请求,以动态填充菜单
- 到目前为止,这项工作进展顺利,但也存在一些问题:
- 如何从网页启动本地XUL应用程序
- 再说一次,XUL还会存在更长时间吗
- JavaWebStart
- 我知道我可以和JWS合作,但我
- 使用
- 不知道该如何开始,也不知道它会带我去哪里
- 加速钛
- 可能是一个可行的选择。我还没有研究过
-
编辑:我对此很感兴趣。是否有人有过这方面的经验,或者知道如何从SP中实现这一点?在我看来,实现您描述的功能集有多种可能的方法,但您仍停留在如何以跨浏览器、跨平台的方式从基于浏览器的应用程序执行本机应用程序上 恐怕实现这一点的唯一方法是为您想要支持的每个浏览器开发一个小的附加组件。对于Firefox来说,这样做非常简单,因为有一个XPCOM API(NSIProces)在伊江,你可以编写一个用C++实现的ActiveX并授予必要的权限。在Chrome中,你除了写一个NPAPI插件外别无选择。
如果是我,我会为Firefox和Chrome编写一个NPAPI插件,因为网页可以为这两种浏览器使用相同的代码。对于IE,你可以编写一个ActiveX,它的访问方式或多或少与插件相同。因此,希望能够启动外部进程的网页将嵌入插件,设置必要的属性值(即,要执行的进程的路径)并调用嵌入对象上的方法。我觉得实现您描述的功能集有很多可能的方法,但您仍然无法从基于浏览器的应用程序以跨浏览器、跨平台的方式执行本机应用程序 恐怕实现这一点的唯一方法是为您想要支持的每个浏览器开发一个小的附加组件。对于Firefox来说,这样做非常简单,因为有一个XPCOM API(NSIProces)在伊江,你可以编写一个用C++实现的ActiveX并授予必要的权限。在Chrome中,你除了写一个NPAPI插件外别无选择。
如果是我,我会为Firefox和Chrome编写一个NPAPI插件,因为网页可以为这两种浏览器使用相同的代码。对于IE,你可以编写一个ActiveX,它的访问方式或多或少与插件相同。因此,希望能够启动外部进程的网页将嵌入插件,设置必要的属性值(即要执行的进程的路径)并调用嵌入对象上的方法。基于提供的优秀教程,我尝试使用基于PHP的客户端/服务器框架构建分布式菜单系统