javax.jms.JMSException: не удалось создать фабрику сеанса - PullRequest
0 голосов
/ 19 декабря 2018

Я пытался запустить Артемиду.Когда я пытаюсь создать сообщение, используя команду ниже, я получаю сообщение об ошибке.Я использую Windows 10.

C:\Users\a.subhashrao.pande\Downloads\apache-artemis-2.6.3-bin\apache-artemis-2.6.3\bin\tmp\mybroker\bin>artemis producer --url tcp://localhost:61616
Connection failed::Failed to create session factory

--url: is a mandatory property!
Type in the broker URL for a retry (e.g. tcp://localhost:61616)
tcp://localhost:61616

--user: is a mandatory property!
Type the username for a retry
admin

--password: is mandatory with this configuration:
Type the password for a retry    (I have entered password as admin)

Exception in thread "main" javax.jms.JMSException: Failed to create session factory
        at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnectionInternal(ActiveMQConnectionFactory.java:837)
        at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:282)
        at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:277)
        at org.apache.activemq.artemis.cli.commands.messages.Producer.execute(Producer.java:70)
        at org.apache.activemq.artemis.cli.Artemis.internalExecute(Artemis.java:149)
        at org.apache.activemq.artemis.cli.Artemis.execute(Artemis.java:97)
        at org.apache.activemq.artemis.cli.Artemis.execute(Artemis.java:124)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.activemq.artemis.boot.Artemis.execute(Artemis.java:129)
        at org.apache.activemq.artemis.boot.Artemis.main(Artemis.java:49)
Caused by: ActiveMQNotConnectedException[errorType=NOT_CONNECTED message=AMQ119007: Cannot connect to server(s). Tried with all available servers.]
        at org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:797)
        at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnectionInternal(ActiveMQConnectionFactory.java:835)
        ... 12 more

C:\Users\a.subhashrao.pande\Downloads\apache-artemis-2.6.3-bin\apache-artemis-2.6.3\bin\tmp\mybroker\bin>

Ответы [ 3 ]

0 голосов
/ 19 декабря 2018

Исключение, которое вы получаете, является «стандартным» исключением, когда основной клиент JMS не может установить сетевое соединение с брокером.Пожалуйста, подтвердите, что у вас есть брокер, работающий на той же машине, что и производитель (т.е. localhost) на порту 61616.Вы можете сделать это, выполнив команду типа:

netstat -a | grep 61616

и убедившись, что процесс прослушивается.

Вы можете запустить эту команду:

jps -v | grep Artemis

Иубедитесь, что процесс Artemis запущен.

Вы также можете взглянуть на файл artemis.log в каталоге log вашего экземпляра Artemis, чтобы узнать, работает ли брокер в данный момент или был закрыт.

0 голосов
/ 19 декабря 2018

На самом деле ниже шаг разрешил мой запрос.При создании брокера я создал его с портом по умолчанию 83836.

C:\apache-artemis-2.6.3-bin\apache-artemis-2.6.3\bin>artemis create --default-port 
63636 /test/broker
Creating ActiveMQ Artemis instance at: C:\test\broker

--user: is a mandatory property!
Please provide the default username:
admin

--password: is mandatory with this configuration:
Please provide the default password:


--allow-anonymous | --require-login: is a mandatory property!
Allow anonymous access?, valid values are Y,N,True,False
y

Auto tuning journal ...
done! Your system can make 0.54 writes per millisecond, your journal-buffer-timeout 
will be 1855999

Затем я запускаю следующие шаги для создания сообщений

 C:\test\broker\bin>artemis-service.exe install

 C:\test\broker\bin>artemis-service.exe start

 C:\test\broker\bin>artemis producer
 Connection failed::Failed to create session factory

 --url: is a mandatory property!
 Type in the broker URL for a retry (e.g. tcp://localhost:61616)
 tcp://localhost:63636

 --user: is a mandatory property!
 Type the username for a retry
 admin

 --password: is mandatory with this configuration:
 Type the password for a retry

 Producer ActiveMQQueue[TEST], thread=0 Started to calculate elapsed time ...

 Producer ActiveMQQueue[TEST], thread=0 Produced: 1000 messages
 Producer ActiveMQQueue[TEST], thread=0 Elapsed time in second : 4 s
 Producer ActiveMQQueue[TEST], thread=0 Elapsed time in milli second : 4990 milli                
 seconds

 C:\test\broker\bin>artemis consumer
 Consumer:: filter = null
 Connection failed::Failed to create session factory

 --url: is a mandatory property!
 Type in the broker URL for a retry (e.g. tcp://localhost:61616)
 tcp://localhost:63636

 --user: is a mandatory property!
 Type the username for a retry
 admin

 --password: is mandatory with this configuration:
 Type the password for a retry

 Consumer ActiveMQQueue[TEST], thread=0 wait until 1000 messages are consumed
 Received 1000
 Consumer ActiveMQQueue[TEST], thread=0 Consumed: 1000 messages
 Consumer ActiveMQQueue[TEST], thread=0 Consumer thread finished
0 голосов
/ 19 декабря 2018

Ожидаются варианты с -- =

Вы можете попробовать

artemis producer --url=tcp://localhost:61616 --user=xxxx --password=yyyy
...