【发布时间】:2015-03-04 20:57:43
【问题描述】:
我正在使用带有 mysql 数据库后端的 jsf 2.2 和 primefaces 5.1。浏览器客户端需要将一些串行设备与 JSF 应用程序连接起来。这些是医疗设备,其中一些需要在浏览器应用程序中进行用户交互,而另一些则不需要。使用 JSF 应用程序处理这些设备的更好策略是什么? 目前我有一个多线程 Java 桌面应用程序正在处理这种通信,但在可扩展性、用户体验和体系结构方面存在很多不足。我精通开发Java桌面串行通信软件但是对于这个项目 1. 我应该为每种类型的设备编写 Web 服务吗? 2. Web 服务能否处理与此类设备的用户交互会话? 我们将非常感谢您在战略层面提出的建议。
【问题讨论】:
-
我投票结束这个问题,因为这个没有任何代码的白板问题属于programmers.se。
-
这是一个编程问题,因为我不确定是否要为这个特殊要求编写 Java 桌面应用程序或 Web 服务。当人们询问 java 框架时,有数百个关于堆栈溢出的问题,特别是当人们询问 java 框架时。 stackoverflow.com/questions/4486210/java-frameworks
-
只是想法:您可以编写 Java 桌面应用程序(我看到您已经拥有)从所有设备收集数据,将它们发送到 Web API 并将数据保存到数据库。您可以从数据库加载数据并显示在 JSF 页面上。因此,您不需要为每种设备类型编写 Web 服务,但是是的,您需要编写逻辑来与每个设备进行通信。
-
@jNick:感谢您的意见。在这里,每种设备类型都与不同的协议交互,即 ASTM 协议的不同变体。我的桌面 java 应用程序有一个适当的类层次结构,可以在它正在通信的串行端口的基础上识别和处理此类请求。如果我编写一个 Web 服务,如果连接了多个设备,我可以区分物理端点吗?正如我已经说过的,我对 Web 服务了解不多。如果我知道这是正确的方法,我会开始阅读网络服务。
-
@UmairNaqvi 我就是这样做的。 Web 服务用于客户端服务器通信。只是不要为每种设备类型编写 Web 服务,使其通用。您的桌面应用程序将获取设备数据,您可以将其映射到某个域对象并推送到 Web 服务。稍后在服务器(webservice)上,您可以处理这些数据(可能先将其保存在数据库中,然后再处理)。祝你好运,让我们知道进展如何:)
标签: jsf-2 primefaces communication