public void sendMessage(AbstractMemberMessage messageObject) { QueueManager queueManager = new QueueManager(getQueueName(messageObject.getRecipient())); queueManager.produce(messageObject); System.out.println( messageObject.getSender() + " send a message to " + messageObject.getRecipient()); if (_listeners.containsKey(messageObject.getRecipient())) { try { _listeners.get(messageObject.getRecipient()).notifyAboutMessage(); System.out.println("The recipient was notified about this"); } catch (RemoteException e) { unregisterListener(messageObject.getRecipient()); } } }