桌面应用和网络应用之间的通信?

时间:2011-12-14 23:12:08

标签: java javascript web-applications

我对桌面应用程序向Web应用程序发送消息感兴趣。具体来说,用Java编写的桌面应用程序需要将消息发送到将在浏览器中运行的Javascript函数。消息只需要以一种方式发送。此外,两个程序将在同一台本地计算机上运行。如有必要,我可以设置本地开发服务器。

我是网络和网络开发的新手,我不知道如何解决这个问题。任何人都可以提出任何建议吗?

4 个答案:

答案 0 :(得分:3)

我认为适当的方法(如果不是唯一的方法)是通过服务器两个应用程序对话

答案 1 :(得分:1)

我建议您采用的企业架构方式是

  1. 将公共信息放入网络服务。
  2. 网站可能会通过ajax或导航到其他网址或对网络服务进行表单POST来发送信息。
  3. 桌面应用程序将启动并将订阅Web服务。 webservice将在更新后通知桌面应用程序。 (请注意,桌面应用可能需要轮询更新)。
  4. 这种方法就像flikr,twitter等服务一样使用。

    轻量级(即较小的架构)黑客攻击方式使您的网站拥有桌面应用所订阅的RSS源。桌面应用程序通过RSS源进行更新。

    这种方法是新闻网站等服务将如何向读者发送更新。请参阅Google阅读器作为示例RSS客户端。 RSS从一开始就支持MS Outlook或谷歌阅读器这样的通用RSS消费者,从长远来看,网络服务可能更灵活,更清洁。

答案 2 :(得分:0)

为什么桌面应用需要与javascript对话?你究竟想做什么?向数据库发送数据或从数据库接收数据?在Web应用程序上运行一些业务逻辑?这些东西通常使用肥皂或休息从桌面应用程序到网站完成。

是以某种方式嵌入桌面应用中的浏览器吗?或者它可能只是作为一个单独的进程运行?似乎音频处理应该真正在桌面应用程序中运行。

但是,假设浏览器作为单独的应用程序运行,您应该能够通过查询字符串向浏览器发送消息。桌面应用程序可以启动浏览器,将其指向URL并将一些参数传递给它。这个javascript可以处理这些参数。 Google是否jquery可以处理查询字符串参数。

答案 3 :(得分:0)

嵌入像jetty这样的简单容器,然后使用Jersey或Simple Servlet