You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by akhettar <ay...@gmail.com> on 2015/10/07 22:49:22 UTC
I can connect successfully to Artemis using Stomp Ruby client but
can't publish messages
Hi
I am using Artemis 1.1.0 version and I am unable to send/publish messages to
Artemis using Ruby stomp client - see below code snippet. I have also tried
other protocols such as AMQP, MQTT none are working. I can successfully
connect (connection is established), but when I publish the message nothing
gets published or sent to the queue. I am not seeing anything in the logs
visible to indicate what's wrong. However if I switch to Apache ActiveMQ
(any version, the latest works too) the below client works fine. Also,
openwire connections works when using JMeter for example.
Have I missed anything? Your help is very much appreciated.
Regards,
Ayache
*Log output at the start up of Artemis:*
21:31:10,145 INFO [org.apache.activemq.artemis.integration.bootstrap]
AMQ101000: Starting ActiveMQ Artemis Server
21:31:10,167 INFO [org.apache.activemq.artemis.core.server] AMQ221000: live
Message Broker is starting with configuration Broker Configuration
(clustered=false,journalDirectory=./data/journal,bindingsDirectory=./data/bindings,largeMessagesDirectory=./data/large-messages,pagingDirectory=./data/paging)
21:31:10,199 INFO [org.apache.activemq.artemis.core.server] AMQ221013:
Using NIO Journal
21:31:10,251 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
Protocol module found: [artemis-server]. Adding protocol support for: CORE
21:31:10,255 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
Protocol module found: [artemis-amqp-protocol]. Adding protocol support for:
AMQP
21:31:10,266 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
Protocol module found: [artemis-hornetq-protocol]. Adding protocol support
for: HORNETQ
21:31:10,268 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
Protocol module found: [artemis-mqtt-protocol]. Adding protocol support for:
MQTT
21:31:10,272 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
Protocol module found: [artemis-openwire-protocol]. Adding protocol support
for: OPENWIRE
21:31:10,402 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
Protocol module found: [artemis-stomp-protocol]. Adding protocol support
for: STOMP
21:31:10,990 INFO [org.apache.activemq.artemis.core.server] AMQ221003:
trying to deploy queue jms.queue.DLQ
21:31:11,056 INFO [org.apache.activemq.artemis.core.server] AMQ221003:
trying to deploy queue jms.queue.ExpiryQueue
21:31:11,181 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
Started Acceptor at 0.0.0.0:5672 for protocols [AMQP]
21:31:11,184 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
Started Acceptor at 0.0.0.0:5445 for protocols [STOMP,HORNETQ]
21:31:11,187 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
Started Acceptor at 0.0.0.0:1883 for protocols [MQTT]
21:31:11,189 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
Started Acceptor at 0.0.0.0:61616 for protocols
[STOMP,MQTT,AMQP,OPENWIRE,HORNETQ,CORE]
21:31:11,191 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
Started Acceptor at 0.0.0.0:61613 for protocols [STOMP]
21:31:11,191 INFO [org.apache.activemq.artemis.core.server] AMQ221007:
Server is now live
*RUBY STOMP CLIENT*
require 'test/unit'
require 'openssl-extensions'
require 'amqp'
require 'onstomp'
class MyTest < Test::Unit::TestCase
# Called before every test method runs. Can be used
# to set up fixture information.
def setup
end
# Called after every test method runs. Can be used to tear
# down fixture information.
def teardown
# Do nothing
end
# Fake test
# def test_artemis_mqtt
# EventMachine.run do
# connection = AMQP.connect(:host => '127.0.0.1', :user =>'admin',
:pass =>'admin')
# puts "Connected to AMQP broker. Running #{AMQP::VERSION} version of
the gem..."
#
# channel = AMQP::Channel.new(connection)
# queue = channel.queue("PMR2MB", :auto_delete => true)
# exchange = channel.direct("")
#
# queue.subscribe do |payload|
# puts "Received a message: #{payload}. Disconnecting..."
# connection.close { EventMachine.stop }
# end
#
# exchange.publish "Hello, world!", :routing_key => queue.name
# end
#
# end
def test_onStomp_client
puts "Starting demo"
puts "----------------------------"
running = true
client = OnStomp::Client.new("stomp://127.0.0.1:61613")
client.connect
puts "Connected to broker using protocol #{client.connection.version}"
client.subscribe("/queue/onstomp_test") do |message|
puts "Received: '#{message.body}'"
if message.body == 'finished'
running = false
end
end
client.send("/queue/onstomp_test", "hello world")
client.send("/queue/onstomp_test", "this is a simple demo of onstomp")
client.send("/queue/onstomp_test", "finished")
Thread.pass while running
client.disconnect
puts "----------------------------"
puts "End of demo"
end
end
--
View this message in context: http://activemq.2283324.n4.nabble.com/I-can-connect-successfully-to-Artemis-using-Stomp-Ruby-client-but-can-t-publish-messages-tp4702742.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
Re: I can connect successfully to Artemis using Stomp Ruby client but
can't publish messages
Posted by Clebert Suconic <cl...@gmail.com>.
Fair point...
there is the mapping between core and JMS:
http://activemq.apache.org/artemis/docs/1.1.0/jms-core-mapping.html
it doesn't explicitly say about other protocols.
There's a task to improve this relation between prefixes and
protocols.. the doc should probably be changed as part of that.
On Wed, Oct 7, 2015 at 6:28 PM, akhettar <ay...@gmail.com> wrote:
> Many thanks Clebert... It works now. I Couldn't see anywhere these prefixes
> being documented, would it be good to be there.
>
> Ayache
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/I-can-connect-successfully-to-Artemis-using-Stomp-Ruby-client-but-can-t-publish-messages-tp4702742p4702749.html
> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
--
Clebert Suconic
Re: I can connect successfully to Artemis using Stomp Ruby client
but can't publish messages
Posted by akhettar <ay...@gmail.com>.
Many thanks Clebert... It works now. I Couldn't see anywhere these prefixes
being documented, would it be good to be there.
Ayache
--
View this message in context: http://activemq.2283324.n4.nabble.com/I-can-connect-successfully-to-Artemis-using-Stomp-Ruby-client-but-can-t-publish-messages-tp4702742p4702749.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
Re: I can connect successfully to Artemis using Stomp Ruby client but
can't publish messages
Posted by Clebert Suconic <cl...@gmail.com>.
Artemis has a different prefix for queues... jms.queue for queues,
jms.topic for topics...
Same applies for MQTT and other protocols.
On Wed, Oct 7, 2015 at 4:49 PM, akhettar <ay...@gmail.com> wrote:
> Hi
>
> I am using Artemis 1.1.0 version and I am unable to send/publish messages to
> Artemis using Ruby stomp client - see below code snippet. I have also tried
> other protocols such as AMQP, MQTT none are working. I can successfully
> connect (connection is established), but when I publish the message nothing
> gets published or sent to the queue. I am not seeing anything in the logs
> visible to indicate what's wrong. However if I switch to Apache ActiveMQ
> (any version, the latest works too) the below client works fine. Also,
> openwire connections works when using JMeter for example.
>
> Have I missed anything? Your help is very much appreciated.
>
> Regards,
>
> Ayache
>
>
> *Log output at the start up of Artemis:*
>
> 21:31:10,145 INFO [org.apache.activemq.artemis.integration.bootstrap]
> AMQ101000: Starting ActiveMQ Artemis Server
> 21:31:10,167 INFO [org.apache.activemq.artemis.core.server] AMQ221000: live
> Message Broker is starting with configuration Broker Configuration
> (clustered=false,journalDirectory=./data/journal,bindingsDirectory=./data/bindings,largeMessagesDirectory=./data/large-messages,pagingDirectory=./data/paging)
> 21:31:10,199 INFO [org.apache.activemq.artemis.core.server] AMQ221013:
> Using NIO Journal
> 21:31:10,251 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
> Protocol module found: [artemis-server]. Adding protocol support for: CORE
> 21:31:10,255 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
> Protocol module found: [artemis-amqp-protocol]. Adding protocol support for:
> AMQP
> 21:31:10,266 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
> Protocol module found: [artemis-hornetq-protocol]. Adding protocol support
> for: HORNETQ
> 21:31:10,268 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
> Protocol module found: [artemis-mqtt-protocol]. Adding protocol support for:
> MQTT
> 21:31:10,272 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
> Protocol module found: [artemis-openwire-protocol]. Adding protocol support
> for: OPENWIRE
> 21:31:10,402 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
> Protocol module found: [artemis-stomp-protocol]. Adding protocol support
> for: STOMP
> 21:31:10,990 INFO [org.apache.activemq.artemis.core.server] AMQ221003:
> trying to deploy queue jms.queue.DLQ
> 21:31:11,056 INFO [org.apache.activemq.artemis.core.server] AMQ221003:
> trying to deploy queue jms.queue.ExpiryQueue
> 21:31:11,181 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
> Started Acceptor at 0.0.0.0:5672 for protocols [AMQP]
> 21:31:11,184 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
> Started Acceptor at 0.0.0.0:5445 for protocols [STOMP,HORNETQ]
> 21:31:11,187 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
> Started Acceptor at 0.0.0.0:1883 for protocols [MQTT]
> 21:31:11,189 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
> Started Acceptor at 0.0.0.0:61616 for protocols
> [STOMP,MQTT,AMQP,OPENWIRE,HORNETQ,CORE]
> 21:31:11,191 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
> Started Acceptor at 0.0.0.0:61613 for protocols [STOMP]
> 21:31:11,191 INFO [org.apache.activemq.artemis.core.server] AMQ221007:
> Server is now live
>
> *RUBY STOMP CLIENT*
>
> require 'test/unit'
> require 'openssl-extensions'
> require 'amqp'
> require 'onstomp'
>
> class MyTest < Test::Unit::TestCase
>
> # Called before every test method runs. Can be used
> # to set up fixture information.
>
> def setup
>
> end
>
> # Called after every test method runs. Can be used to tear
> # down fixture information.
>
> def teardown
> # Do nothing
> end
>
> # Fake test
> # def test_artemis_mqtt
> # EventMachine.run do
> # connection = AMQP.connect(:host => '127.0.0.1', :user =>'admin',
> :pass =>'admin')
> # puts "Connected to AMQP broker. Running #{AMQP::VERSION} version of
> the gem..."
> #
> # channel = AMQP::Channel.new(connection)
> # queue = channel.queue("PMR2MB", :auto_delete => true)
> # exchange = channel.direct("")
> #
> # queue.subscribe do |payload|
> # puts "Received a message: #{payload}. Disconnecting..."
> # connection.close { EventMachine.stop }
> # end
> #
> # exchange.publish "Hello, world!", :routing_key => queue.name
> # end
> #
> # end
>
> def test_onStomp_client
> puts "Starting demo"
> puts "----------------------------"
>
> running = true
> client = OnStomp::Client.new("stomp://127.0.0.1:61613")
> client.connect
>
> puts "Connected to broker using protocol #{client.connection.version}"
>
> client.subscribe("/queue/onstomp_test") do |message|
> puts "Received: '#{message.body}'"
> if message.body == 'finished'
> running = false
> end
> end
>
> client.send("/queue/onstomp_test", "hello world")
> client.send("/queue/onstomp_test", "this is a simple demo of onstomp")
> client.send("/queue/onstomp_test", "finished")
>
> Thread.pass while running
> client.disconnect
> puts "----------------------------"
> puts "End of demo"
> end
> end
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/I-can-connect-successfully-to-Artemis-using-Stomp-Ruby-client-but-can-t-publish-messages-tp4702742.html
> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
--
Clebert Suconic
Re: I can connect successfully to Artemis using Stomp Ruby client but
can't publish messages
Posted by Clebert Suconic <cl...@gmail.com>.
So, replace /queues by jms.queue. and it should work.
On Wed, Oct 7, 2015 at 4:49 PM, akhettar <ay...@gmail.com> wrote:
> Hi
>
> I am using Artemis 1.1.0 version and I am unable to send/publish messages to
> Artemis using Ruby stomp client - see below code snippet. I have also tried
> other protocols such as AMQP, MQTT none are working. I can successfully
> connect (connection is established), but when I publish the message nothing
> gets published or sent to the queue. I am not seeing anything in the logs
> visible to indicate what's wrong. However if I switch to Apache ActiveMQ
> (any version, the latest works too) the below client works fine. Also,
> openwire connections works when using JMeter for example.
>
> Have I missed anything? Your help is very much appreciated.
>
> Regards,
>
> Ayache
>
>
> *Log output at the start up of Artemis:*
>
> 21:31:10,145 INFO [org.apache.activemq.artemis.integration.bootstrap]
> AMQ101000: Starting ActiveMQ Artemis Server
> 21:31:10,167 INFO [org.apache.activemq.artemis.core.server] AMQ221000: live
> Message Broker is starting with configuration Broker Configuration
> (clustered=false,journalDirectory=./data/journal,bindingsDirectory=./data/bindings,largeMessagesDirectory=./data/large-messages,pagingDirectory=./data/paging)
> 21:31:10,199 INFO [org.apache.activemq.artemis.core.server] AMQ221013:
> Using NIO Journal
> 21:31:10,251 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
> Protocol module found: [artemis-server]. Adding protocol support for: CORE
> 21:31:10,255 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
> Protocol module found: [artemis-amqp-protocol]. Adding protocol support for:
> AMQP
> 21:31:10,266 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
> Protocol module found: [artemis-hornetq-protocol]. Adding protocol support
> for: HORNETQ
> 21:31:10,268 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
> Protocol module found: [artemis-mqtt-protocol]. Adding protocol support for:
> MQTT
> 21:31:10,272 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
> Protocol module found: [artemis-openwire-protocol]. Adding protocol support
> for: OPENWIRE
> 21:31:10,402 INFO [org.apache.activemq.artemis.core.server] AMQ221043:
> Protocol module found: [artemis-stomp-protocol]. Adding protocol support
> for: STOMP
> 21:31:10,990 INFO [org.apache.activemq.artemis.core.server] AMQ221003:
> trying to deploy queue jms.queue.DLQ
> 21:31:11,056 INFO [org.apache.activemq.artemis.core.server] AMQ221003:
> trying to deploy queue jms.queue.ExpiryQueue
> 21:31:11,181 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
> Started Acceptor at 0.0.0.0:5672 for protocols [AMQP]
> 21:31:11,184 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
> Started Acceptor at 0.0.0.0:5445 for protocols [STOMP,HORNETQ]
> 21:31:11,187 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
> Started Acceptor at 0.0.0.0:1883 for protocols [MQTT]
> 21:31:11,189 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
> Started Acceptor at 0.0.0.0:61616 for protocols
> [STOMP,MQTT,AMQP,OPENWIRE,HORNETQ,CORE]
> 21:31:11,191 INFO [org.apache.activemq.artemis.core.server] AMQ221020:
> Started Acceptor at 0.0.0.0:61613 for protocols [STOMP]
> 21:31:11,191 INFO [org.apache.activemq.artemis.core.server] AMQ221007:
> Server is now live
>
> *RUBY STOMP CLIENT*
>
> require 'test/unit'
> require 'openssl-extensions'
> require 'amqp'
> require 'onstomp'
>
> class MyTest < Test::Unit::TestCase
>
> # Called before every test method runs. Can be used
> # to set up fixture information.
>
> def setup
>
> end
>
> # Called after every test method runs. Can be used to tear
> # down fixture information.
>
> def teardown
> # Do nothing
> end
>
> # Fake test
> # def test_artemis_mqtt
> # EventMachine.run do
> # connection = AMQP.connect(:host => '127.0.0.1', :user =>'admin',
> :pass =>'admin')
> # puts "Connected to AMQP broker. Running #{AMQP::VERSION} version of
> the gem..."
> #
> # channel = AMQP::Channel.new(connection)
> # queue = channel.queue("PMR2MB", :auto_delete => true)
> # exchange = channel.direct("")
> #
> # queue.subscribe do |payload|
> # puts "Received a message: #{payload}. Disconnecting..."
> # connection.close { EventMachine.stop }
> # end
> #
> # exchange.publish "Hello, world!", :routing_key => queue.name
> # end
> #
> # end
>
> def test_onStomp_client
> puts "Starting demo"
> puts "----------------------------"
>
> running = true
> client = OnStomp::Client.new("stomp://127.0.0.1:61613")
> client.connect
>
> puts "Connected to broker using protocol #{client.connection.version}"
>
> client.subscribe("/queue/onstomp_test") do |message|
> puts "Received: '#{message.body}'"
> if message.body == 'finished'
> running = false
> end
> end
>
> client.send("/queue/onstomp_test", "hello world")
> client.send("/queue/onstomp_test", "this is a simple demo of onstomp")
> client.send("/queue/onstomp_test", "finished")
>
> Thread.pass while running
> client.disconnect
> puts "----------------------------"
> puts "End of demo"
> end
> end
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/I-can-connect-successfully-to-Artemis-using-Stomp-Ruby-client-but-can-t-publish-messages-tp4702742.html
> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
--
Clebert Suconic