Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Keine onMessage-Ereignisse zur Laufzeit (Java JMS MessageListener in Oracle Queue)

Im Wesentlichen sobald Sie den AQjmsQueueReceiver erstellen und setze seinen Nachrichten-Listener auf receive() -Methode wird beendet und der AQjmsQueueReceiver wird aus dem Geltungsbereich fallen. Ich nehme an, es wird von main aufgerufen Methode, was auch bedeutet, dass das Programm beendet wird. Sie müssen:

  1. Ändern Sie Ihre Anwendung so, dass Ihre JMS-Objekte nicht außerhalb des Gültigkeitsbereichs liegen (weil sie einer Garbage Collection unterzogen werden).
  2. Verhindern, dass Ihr Programm beendet wird, während es auf Nachrichten wartet.