dbit-xia created ARTEMIS-2233:
---------------------------------
Summary: AMQP protocol does not seem to support virtual topic
Key: ARTEMIS-2233
URL: https://issues.apache.org/jira/browse/ARTEMIS-2233
Project: ActiveMQ Artemis
Issue Type: Bug
Components: AMQP
Affects Versions: 2.6.4, 2.6.3
Environment: OS: CentOS release 6.10 (Final)
javac: 1.8.0_91
Reporter: dbit-xia
Attachments: AMQPVirtualTopic.java
AMQP protocol does not seem to support virtual topic?
(First issue :))
{code:java}
package org.apache.activemq.artemis.jms.example;
import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageConsumer;
import javax.jms.MessageListener;
import javax.jms.MessageProducer;
import javax.jms.Queue;
import javax.jms.Session;
import javax.jms.TextMessage;
import javax.jms.Topic;
import org.apache.qpid.jms.JmsConnectionFactory;
public class AMQPVirtualTopic {
public static void main(final String[] args) throws Exception {
Connection connection = null;
try {
ConnectionFactory connectionFactory = new
JmsConnectionFactory("amqp://127.0.0.1:5672");
connection = connectionFactory.createConnection();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
//create consumer on queue that is used by the Virtual Topic
Queue queue = session.createQueue("Consumer.A.VirtualTopic.Orders");
Topic topic = session.createTopic("VirtualTopic.Orders");
MessageConsumer messageConsumer = session.createConsumer(queue);
messageConsumer.setMessageListener(new MessageListener(){
public void onMessage(Message message) {
try {
System.out.println("messageConsumer1 Received ID: " + message.getJMSMessageID()
+ " from Queue,"+((TextMessage)message).getText());
message.acknowledge();
} catch (JMSException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
MessageConsumer messageConsumer2 = session.createConsumer(queue);
messageConsumer2.setMessageListener(new MessageListener(){
public void onMessage(Message message) {
try {
System.out.println("messageConsumer2 Received ID: " + message.getJMSMessageID()
+ " from Queue,"+((TextMessage)message).getText());
message.acknowledge();
} catch (JMSException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
MessageProducer producer = session.createProducer(topic); //artemis的amqp协议不生效
connection.start();
for (int i=0;i<10;i++){
//send message to virtual topic
TextMessage message = session.createTextMessage("This is a text message:"+i);
producer.send(message);
// System.out.println("Sent message with ID: " + message.getJMSMessageID()
+ " to Topic: " + topic.getTopicName());
}
}
// catch (Exception e){
// System.out.print(e);
//
// }
finally {
// if (connection != null) {
// connection.close();
// }
}
}
}
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)