Я успешно помещаю сообщение в ActiveMQ из локальной настройки Eclipse. Однако тот же код не выдвигает сообщение, когда я пытаюсь выполнить его с сервера как задание cron
. Он даже не генерирует исключение во время выполнения кода.
среда Java - 1,8
Используемые опорные банки:
- SLF4J-апи-1.8.0-beta2.jar
- javax.annotation-апи-1.2.jar
- javax.jms-апи-2.0.1.jar
- управление-апи-1,1-преподобный 1.jar
- ActiveMQ-ядро-5.7.0.jar
Код:
try {
map = getMessageDetails(session,"MessageQueueEmail");
userName = map.get("userName");
password = map.get("password");
hostName = map.get("mqHostName");
queue = map.get("queueName");
// Create a ConnectionFactory
ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory(userName, password, hostName);
// Create a Connection
connection = factory.createConnection();
// start the Connection
connection.start();
System.out.println("MQ started connection");
// Create a Session
sessionMQ = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
// Create the destination Queue
Destination destination = sessionMQ.createQueue(queue);
// Create a MessageProducer from the Session to the Queue
messageProducer = sessionMQ.createProducer(destination);
messageProducer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
// Create a message
Message message = sessionMQ.createTextMessage(textMsg);
System.out.println("MQ Message sent successfully");
// Tell the producer to send the message
messageProducer.send(message);
} catch(Exception e) {
e.printStackTrace();
System.out.println("\n::::::::::::Error occurred sendEmailMessageToIntranet::::::::::::: " + e.getMessage());
}