Can you try removing the "default-reply-channel" from the <gateway> element (so it relies on a default, anonymous reply channel)?
Can you try removing the "default-reply-channel" from the <gateway> element (so it relies on a default, anonymous reply channel)?
Mark Fisher
Spring Integration Lead
SpringSource, a division of VMware
http://www.springsource.com
http://www.springsource.org/spring-integration
http://blog.springsource.com/main/author/markf
Ok, I was able to replicated it. Sorry before i was only sending 1 message, but you explicitly said you have problem when its more then one.
Let me figure out whats going on.
Oleg Zhurakousky
Spring Integration team
http://twitter.com/z_oleg
http://blog.springsource.com/author/ozhurakousky/
I removed the "default-reply-channel" but got the same result.
Ok, here is what's going on.
ActiveMQ creates a working directory usually at the root of your project:/activemq-data/localhost... where it caches your configuration and its state.
Apparently you have some corrupted data (e.g., messages, destination configuration etc.) in it. Luckily while playing with it i was able to accumulate corrupted data there as well which allowed me to replicate the problem. By deleting this directory everything should work fine with latest configuration.
I am also attaching my test so you can take a look.
Let me know.
Oleg Zhurakousky
Spring Integration team
http://twitter.com/z_oleg
http://blog.springsource.com/author/ozhurakousky/
Hi Oleg,
I did a search for activemq-data on both the client and server machines and found no matches.
If a corrupted directory is the problem, then the Spring Integration code that I have should work with some other JMS implementation besides ActiveMQ. Do you have a suggestion for an open source alternative?
Also, why would the code work only when one message is being sent but not with two or more? It seems to me that if something is corrupted, that the program wouldn't work at all.
How can you not find it? I just deleted it and re-ran my test and it was auto-created at the root of the project where my test is. Look at the attached image.
As for the second question. Its a typical problem with cached data when you are developing something and you system is volatile. Why 1st message? Not sure i haven't look any deeper in ActiveMQ code, but my guess it is trying to recover message(s), that were miss-processed before.
Oleg Zhurakousky
Spring Integration team
http://twitter.com/z_oleg
http://blog.springsource.com/author/ozhurakousky/
Hi Oleg,
The brokerURL that you are using is vm://localhost and I'm using tcp://remotehost. Would that make a difference in the creation of the activemq-data folder?
Most likely, since I am using embedded broker for testing. In your case this work directory should be somewhere on the remote server. You can probably post question or search ActiveMQ malling list and/or documentation on how to configure ActiveMQ and its persistence/caching mechanism.
Here is sample: http://activemq.apache.org/persistence.html
Oleg Zhurakousky
Spring Integration team
http://twitter.com/z_oleg
http://blog.springsource.com/author/ozhurakousky/