2016-04-25 34 views
0

ActiveMQが新しくなりました。私はローカルマシン上のデフォルト設定を使用してWindows上でActiveMQサーバーを実行しています。メッセージの送信をテストするための単純なキューを作成しようとしました。ActiveMQキューを作成できないか、またはJavaを使用してメッセージを送信できません。

public class Foo { 

    public static void main(String[] args) { 
     new Foo().send(); 
    } 

    public void send(){  
     try { 
      ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory("vm://localhost:61616"); 
      Connection connection = connectionFactory.createConnection(); 
      connection.start(); 

      Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); 
      Destination destination = session.createQueue("TESTQUEUE"); 
      MessageProducer producer = session.createProducer(destination); 
      producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT); 

      TextMessage message = session.createTextMessage("MESSAGE123"); 
      producer.send(message); 

      session.close(); 
      connection.close(); 

     } catch (JMSException ex) { 
      Logger.getLogger(Foo.class.getName()).log(Level.SEVERE, null, ex); 
     } 
    }  
} 

このコードは、ActiveMQ管理ページにログオンしてチェックし、キューをチェックすると何もしないようです。 (localhost:8161/admin/queues.jsp) キューは作成されません。次に、管理ページから手動でキューを作成しようとしましたが、キューが作成されてもメッセージはキューに送信されません。

コマンドactivemq produceractivemq consumerを使用してサーバーをテストすると、キューが作成され、メッセージはキューに渡され、キューから読み取られます。だから私は、サーバーに何も問題はないと確信しています。

私は、コードを実行すると、これはあなたが実際に埋め込まれたブローカーを作成していると、メッセージがそこに送信され、端末出力

WARN | Memory Usage for the Broker (1024mb) is more than the maximum available for the JVM: 887 mb - resetting to 70% of maximum available: 621 mb 
INFO | Using Persistence Adapter: KahaDBPersistenceAdapter[C:\Users\Prashan\Desktop\Test\activemq-data\localhost\KahaDB] 
INFO | JMX consoles can connect to service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi 
INFO | KahaDB is version 6 
INFO | Recovering from the journal @1:3712 
INFO | Recovery replayed 1 operations from the journal in 0.01 seconds. 
INFO | PListStore:[C:\Users\Prashan\Desktop\Test\activemq-data\localhost\tmp_storage] started 
INFO | Apache ActiveMQ 5.13.2 (localhost, ID:CAPSULE-5179-1461559222267-0:1) is starting 
INFO | Apache ActiveMQ 5.13.2 (localhost, ID:CAPSULE-5179-1461559222267-0:1) started 
INFO | For help or more information please see: http://activemq.apache.org 
WARN | Store limit is 102400 mb (current store usage is 0 mb). The data directory: C:\Users\Prashan\Desktop\Test\activemq-data\localhost\KahaDB only has 6947 mb of usable space. - resetting to maximum available disk space: 6947 mb 
WARN | Temporary Store limit is 51200 mb (current store usage is 0 mb). The data directory: C:\Users\Prashan\Desktop\Test\activemq-data\localhost\tmp_storage only has 6947 mb of usable space. - resetting to maximum available disk space: 6947 mb 
INFO | Connector vm://localhost started 
INFO | Connector vm://localhost stopped 
INFO | Apache ActiveMQ 5.13.2 (localhost, ID:CAPSULE-5179-1461559222267-0:1) is shutting down 
INFO | PListStore:[C:\Users\Prashan\Desktop\Test\activemq-data\localhost\tmp_storage] stopped 
INFO | Stopping async queue tasks 
INFO | Stopping async topic tasks 
INFO | Stopped KahaDB 
INFO | Apache ActiveMQ 5.13.2 (localhost, ID:CAPSULE-5179-1461559222267-0:1) uptime 1.918 seconds 
INFO | Apache ActiveMQ 5.13.2 (localhost, ID:CAPSULE-5179-1461559222267-0:1) is shutdown 

答えて

3

です。 vm://...ではなく、tcp://localhost:61616"によってローカルマシンブローカーに接続する必要があります。

関連する問題