【发布时间】:2012-01-26 16:15:29
【问题描述】:
我建立了一个.xhtml 页面,其中有一个按钮'turn on/off'。我想通过互联网从我的.xhtml 页面向我的应用程序(.java) 发送一条消息(on or off),该应用程序在另一个网络、另一台计算机上运行。
我想用sockets(客户端/服务器)来做这件事,但我想知道这是否是最好的方法。
有什么想法吗?
【问题讨论】:
-
JSF 是作为小程序运行的吗?您会将消息发送到 Web 服务器还是桌面应用程序?
-
我更喜欢桌面应用程序,以避免使用浏览器、服务器(容器)和其他一切。
-
这是一个非常广泛的问题。这也与 JSF 不完全相关,因此 JSF 的故事在这里无关紧要。您可以使用
main()在普通 Java 应用程序中执行与 JSF 操作方法中相同的操作。您需要知道的第一件事:您需要(或希望)使用的通信协议是什么? HTTP?肥皂? XMPP? MQ?国产的?数据传输的数据格式是什么?应用程序/x-www-form-urlencoded? JSON? XML? CSV?国产的?然后相应地一步一步实施。 -
我刚刚提到了 JSF @BalusC,因为它有很多我不知道的东西,也许它可以更轻松地提供帮助。我认为 TCP 是一个不错的协议选择,所以 socket 在这里更合适,你觉得呢?
-
TCP是一种网络协议,我更多的意思是通信协议。你似乎想朝着本土的方向发展。这将是很多工作。你宁愿寻找一些现有的标准。例如,如果您选择 HTTP,您可以在应用程序客户端中设置一个(小型)网络服务器(PHP?Servlet?)并在您的 JSF 代码中使用
URLConnection或HttpClient,就像您做的那样在一个普通的 Java 应用程序中。 JSF 只需在 action 方法中执行相同的代码。