Я пытаюсь настроить OpenJMS на своей машине и пытаюсь запустить базовый пример из командной строки. Однако я не могу понять, как это сделать.
Это то, что я сделал до сих пор,
Запустите Open JMS
➜ bin ./startup.sh
Using OPENJMS_HOME: /Users/gaurang.shah/Documents/personal/jms/openjms-0.7.7-beta-1
Using JAVA_HOME: /Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home
OpenJMS 0.7.7-beta-1
The OpenJMS Group. (C) 1999-2007. All rights reserved.
http://openjms.sourceforge.net
11:46:59.353 INFO [main] - Server accepting connections on tcp://192.168.2.12:3035/
11:46:59.355 INFO [main] - JNDI service accepting connections on tcp://192.168.2.12:3035/
11:46:59.356 INFO [main] - Admin service accepting connections on tcp://192.168.2.12:3035/
11:46:59.453 INFO [main] - Server accepting connections on rmi://192.168.2.12:1099/
11:46:59.453 INFO [main] - JNDI service accepting connections on rmi://192.168.2.12:1099/
11:46:59.454 INFO [main] - Admin service accepting connections on rmi://192.168.2.12:1099/
Запустите отправителя
➜ basic ./run.sh Sender new_topic 1
Using OPENJMS_HOME: /Users/gaurang.shah/Documents/personal/jms/openjms-0.7.7-beta-1
Using JAVA_HOME: /Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home
Using CLASSPATH: ./:/Users/gaurang.shah/Documents/personal/jms/openjms-0.7.7-beta-1/lib/openjms-0.7.7-beta-1.jar
hello
Запустите приемник
➜ basic ./run.sh Receiver new_topic
Using OPENJMS_HOME: /Users/gaurang.shah/Documents/personal/jms/openjms-0.7.7-beta-1
Using JAVA_HOME: /Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home
Using CLASSPATH: ./:/Users/gaurang.shah/Documents/personal/jms/openjms-0.7.7-beta-1/lib/openjms-0.7.7-beta-1.jar
Однако я не могу ничего получить на стороне получателя.





В JMS, если сообщение отправляется в тему, все подписчики этой темы получают сообщение. Если в теме нет подписчиков, то любое сообщение, отправленное в тему, отбрасывается (т. е. сообщение не сохраняется). Это базовая семантика публикации-подписки.
Поэтому, если вы отправите сообщение до того, как запустите получателя/подписчика, он не получит сообщение.
Запустите приемник перед отправкой сообщения, и он должен его получить.
Что бы это ни стоило, вы можете взглянуть на более современную реализацию JMS. OpenJMS 0.7.7-beta-1 была выпущена в марте 2007 года (12 лет назад!).