Regarding your questions: 1) Yes, without a pooled connection factory it is possible that you create a new JMS connection, session, producer/consumer for every new message. Creating these JMS resources is very expensive in terms of performance and CPU usage. There are some additional details given in this blog post: http://tmielke.blogspot.com/2009/12/using-spring-jms-template-for-sending.html
2) Certainly yes when using a pooled connection factory as you have already configured. I am not very familiar with configuring ActiveMQ in a web application, so I am not sure what's wrong in your config. However using a pooled connection factory is definitely recommended, in case you plan to use Spring JMS to send/receive messages. Torsten Mielke tors...@fusesource.com tmie...@blogspot.com