You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Victor Perez <vp...@gmail.com> on 2011/09/14 00:24:10 UTC
Can't get stomp to work in .Net
We have this ActiveMQ server used corporate-wide, with many applications
written in Ruby, Java and C++ talking to it using STOMP.
Now I have been asked to write a .Net service to access one of the queues
populated from a Ruby app. It all goes well until I try to connect to the
queue using STOMP, when calling connection.Start() I get all kind of weird
exceptions like:
------------------------------
Apache.NMS.Stomp.IOException: Channel was inactive for too long:
tcp://jms.rrvc.local:61616/
at Apache.NMS.Stomp.Connection.Oneway(Command command) in
C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\Connection.cs:lin
e 545
at Apache.NMS.Stomp.MessageConsumer.DoClose() in
C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\MessageConsumer.cs:line
25
2
at Apache.NMS.Stomp.MessageConsumer.Close() in
C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\MessageConsumer.cs:line
227
at Apache.NMS.Stomp.Session.CreateConsumer(IDestination destination,
String selector, Boolean noLocal) in
C:\src\platform-dot-net\CBSV\Apache.NMS.S
tomp-1.5.1-src\src\main\csharp\Session.cs:line 422
at Apache.NMS.Stomp.Session.CreateConsumer(IDestination destination) in
C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\Ses
sion.cs:line 379
at CBSV.ListenerConsole.Program.Main(String[] args) in
C:\src\platform-dot-net\CBSV\CBSV.ListenerConsole\Program.cs:line 42
------------------------------
------------------------------
Apache.NMS.NMSException: The output char buffer is too small to contain the
decoded characters, encoding 'Unicode (UTF-8)' fallback 'System.Text.Decod
erReplacementFallback'.
Parameter name: chars ---> System.ArgumentException: The output char buffer
is too small to contain the decoded characters, encoding 'Unicode (UTF-8)'
fallback 'System.Text.DecoderReplacementFallback'.
Parameter name: chars
at Apache.NMS.Stomp.Transport.ResponseCorrelator.AsyncRequest(Command
command) in
C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\
csharp\Transport\ResponseCorrelator.cs:line 82
at Apache.NMS.Stomp.Transport.ResponseCorrelator.Request(Command command,
TimeSpan timeout) in C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-
src\src\main\csharp\Transport\ResponseCorrelator.cs:line 92
at Apache.NMS.Stomp.Connection.SyncRequest(Command command, TimeSpan
requestTimeout) in
C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src
\main\csharp\Connection.cs:line 520
--- End of inner exception stack trace ---
at Apache.NMS.Stomp.Connection.SyncRequest(Command command) in
C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\Connection.c
s:line 510
at Apache.NMS.Stomp.Session.CreateConsumer(IDestination destination,
String selector, Boolean noLocal) in
C:\src\platform-dot-net\CBSV\Apache.NMS.S
tomp-1.5.1-src\src\main\csharp\Session.cs:line 425
at Apache.NMS.Stomp.Session.CreateConsumer(IDestination destination) in
C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\Ses
sion.cs:line 379
at CBSV.ListenerConsole.Program.Main(String[] args) in
C:\src\platform-dot-net\CBSV\CBSV.ListenerConsole\Program.cs:line 42
------------------------------
------------------------------
System.NullReferenceException: Object reference not set to an instance of an
object.
at Apache.NMS.Stomp.MessageConsumer.DoClose() in
C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\MessageConsumer.cs:line
25
2
at Apache.NMS.Stomp.MessageConsumer.Close() in
C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\MessageConsumer.cs:line
227
at Apache.NMS.Stomp.Session.CreateConsumer(IDestination destination,
String selector, Boolean noLocal) in
C:\src\platform-dot-net\CBSV\Apache.NMS.S
tomp-1.5.1-src\src\main\csharp\Session.cs:line 422
at Apache.NMS.Stomp.Session.CreateConsumer(IDestination destination) in
C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\Ses
sion.cs:line 379
at CBSV.ListenerConsole.Program.Main(String[] args) in
C:\src\platform-dot-net\CBSV\CBSV.ListenerConsole\Program.cs:line 42
------------------------------
The code I am using is the Async example from the website and IT WORKS FINE
if I use activemq instead of STOMP. I have tried everything, even compiling
the whole thing from sources to not avail.
Help?
Re: Can't get stomp to work in .Net
Posted by Timothy Bish <ta...@gmail.com>.
On Tue, 2011-09-13 at 17:24 -0500, Victor Perez wrote:
> We have this ActiveMQ server used corporate-wide, with many applications
> written in Ruby, Java and C++ talking to it using STOMP.
>
> Now I have been asked to write a .Net service to access one of the queues
> populated from a Ruby app. It all goes well until I try to connect to the
> queue using STOMP, when calling connection.Start() I get all kind of weird
> exceptions like:
>
Check the URI to ensure that you are using the correct port. The error
indicates you are using port 61616 which is usually the default openwire
port.
Regards
> ------------------------------
> Apache.NMS.Stomp.IOException: Channel was inactive for too long:
> tcp://jms.rrvc.local:61616/
> at Apache.NMS.Stomp.Connection.Oneway(Command command) in
> C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\Connection.cs:lin
> e 545
> at Apache.NMS.Stomp.MessageConsumer.DoClose() in
> C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\MessageConsumer.cs:line
> 25
> 2
> at Apache.NMS.Stomp.MessageConsumer.Close() in
> C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\MessageConsumer.cs:line
> 227
> at Apache.NMS.Stomp.Session.CreateConsumer(IDestination destination,
> String selector, Boolean noLocal) in
> C:\src\platform-dot-net\CBSV\Apache.NMS.S
> tomp-1.5.1-src\src\main\csharp\Session.cs:line 422
> at Apache.NMS.Stomp.Session.CreateConsumer(IDestination destination) in
> C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\Ses
> sion.cs:line 379
> at CBSV.ListenerConsole.Program.Main(String[] args) in
> C:\src\platform-dot-net\CBSV\CBSV.ListenerConsole\Program.cs:line 42
> ------------------------------
>
> ------------------------------
> Apache.NMS.NMSException: The output char buffer is too small to contain the
> decoded characters, encoding 'Unicode (UTF-8)' fallback 'System.Text.Decod
> erReplacementFallback'.
> Parameter name: chars ---> System.ArgumentException: The output char buffer
> is too small to contain the decoded characters, encoding 'Unicode (UTF-8)'
> fallback 'System.Text.DecoderReplacementFallback'.
> Parameter name: chars
> at Apache.NMS.Stomp.Transport.ResponseCorrelator.AsyncRequest(Command
> command) in
> C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\
> csharp\Transport\ResponseCorrelator.cs:line 82
> at Apache.NMS.Stomp.Transport.ResponseCorrelator.Request(Command command,
> TimeSpan timeout) in C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-
> src\src\main\csharp\Transport\ResponseCorrelator.cs:line 92
> at Apache.NMS.Stomp.Connection.SyncRequest(Command command, TimeSpan
> requestTimeout) in
> C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src
> \main\csharp\Connection.cs:line 520
> --- End of inner exception stack trace ---
> at Apache.NMS.Stomp.Connection.SyncRequest(Command command) in
> C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\Connection.c
> s:line 510
> at Apache.NMS.Stomp.Session.CreateConsumer(IDestination destination,
> String selector, Boolean noLocal) in
> C:\src\platform-dot-net\CBSV\Apache.NMS.S
> tomp-1.5.1-src\src\main\csharp\Session.cs:line 425
> at Apache.NMS.Stomp.Session.CreateConsumer(IDestination destination) in
> C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\Ses
> sion.cs:line 379
> at CBSV.ListenerConsole.Program.Main(String[] args) in
> C:\src\platform-dot-net\CBSV\CBSV.ListenerConsole\Program.cs:line 42
> ------------------------------
>
> ------------------------------
> System.NullReferenceException: Object reference not set to an instance of an
> object.
> at Apache.NMS.Stomp.MessageConsumer.DoClose() in
> C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\MessageConsumer.cs:line
> 25
> 2
> at Apache.NMS.Stomp.MessageConsumer.Close() in
> C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\MessageConsumer.cs:line
> 227
> at Apache.NMS.Stomp.Session.CreateConsumer(IDestination destination,
> String selector, Boolean noLocal) in
> C:\src\platform-dot-net\CBSV\Apache.NMS.S
> tomp-1.5.1-src\src\main\csharp\Session.cs:line 422
> at Apache.NMS.Stomp.Session.CreateConsumer(IDestination destination) in
> C:\src\platform-dot-net\CBSV\Apache.NMS.Stomp-1.5.1-src\src\main\csharp\Ses
> sion.cs:line 379
> at CBSV.ListenerConsole.Program.Main(String[] args) in
> C:\src\platform-dot-net\CBSV\CBSV.ListenerConsole\Program.cs:line 42
> ------------------------------
>
> The code I am using is the Async example from the website and IT WORKS FINE
> if I use activemq instead of STOMP. I have tried everything, even compiling
> the whole thing from sources to not avail.
>
> Help?
--
Tim Bish
------------
FuseSource
Email: tim.bish@fusesource.com
Web: http://fusesource.com
Twitter: tabish121
Blog: http://timbish.blogspot.com/