Setup: Jboss 4.03 + ejb3
MDB configuration
@MessageDriven(activateConfig = { @ActivationConfigProperty(propertyName="destinationType", propertyValue="javax.jms.Queue"), @ActivationConfigProperty(propertyName="destination", propertyValue="queue/queueX"), @ActivationConfigProperty(propertyName="durability", propertyValue="NON_DURABLE"), //NON_DURABLE @ActivationConfigProperty(propertyName="minPoolSize", propertyValue="10"), @ActivationConfigProperty(propertyName="maxPoolSize", propertyValue="20") }) public class MyMsgListener implements MessageListener
msg.setJMSDeliveryMode(DeliveryMode.NON_PERSISTENT);
Try setting the delivery mode of the QueueSender to NON_PERSISTENT. I'm looking into the issue when you only set the message to be NON_PERSISTENT