1

In my project I have Business Logic implemented as EJB on Application Server and a desktop client - standalone application that calls those EJBs. Everything works fine when I have only one sided communication (client -> server) but now I need the possibility to subscribe / be pooled by server. So basically after client login into the server the server can send the update to it anytime. Since I cannot use EJB outside the Application server the question is how to do it (what's the standard and preffered way to solve such problems). Maybe I could any JMS implementation ?(how does it work outside application server..)

Regards

user993400
  • 11
  • 1

2 Answers2

0

Polling would be a simple solution. It may not fit your needs in all situations as it increases load on the server:

  • Simply create an EJB on the server your desktop client can query to obtain any updates. For this you could create a background thread on the client. Using some kind of observer pattern on the client you're able to 'push' the information to the GUI.
home
  • 12,468
  • 5
  • 46
  • 54
0

JMS implementation seems appropriate here, the server publishes the message & client consumes it. Also as the communication will be asynchronous, it will utilize the client & server resources optimally.

Polling may reduce performance, as in many situations it may not be needed as a continuous activity. You can use topic/queue mechanism based on the requirements through synchronous/asynchronous communication.

Nayan Wadekar
  • 11,444
  • 4
  • 50
  • 73