We are trying to process each received JMS message on the onMessage thread from the DefaultMessageListenerContainer. On occasion we get the following error on one of the 25 listeners, or sometimes it will be two or three of the 25 listeners that report the problem. The listener is configured to have 3 minimum listeners and a maximum of 25. Actually in our tests it rarely gets above 10 concurrent processes. The other listeners that do not report a problem seem to function fine.
On our windows XP development machines the out of memory exception has never happened. On the production test Solaris 8 systems the error is frequently happening. This is with the same test input data, actually we ramped up the frequency on the windows systems and there is still no exception.
There is no stack that we can trace back to our code and the reason for the heap failure is not clear to us. I'm sure the error is occuring in our code from the logs, but we haven't observed a reason for the error from our logs. I would appreciate any suggestion on a direction we should take to investigate this issue. Everything seems to be functioning as expected so perhaps we are doing something improper, not releasing resources on the listener thread, etc... We are using it as an simple application thread to process the received JMS message.
AbstractMessageListenerContainer (handleListenerException:613) Execution of JMS message listener failed
java.lang.OutOfMemoryError: Java heap space