Keep calm, there's not need to get angry like this.
- the version of JBoss are you running
- your OS and version
- the version of your JDK
I assume you use the default configuration (you didn't changed anything in the jbossmq configuration, right?)
If you are using defaults, I doubt a 40M message will fit in
the default heap (64M). Try using the -Xmx parameter.
Even if you configure the cache properly it will require enough
memory to hold the message object and a bytestream copy