0
votes

Sometimes getting below exception

javax.jms.JMSException: Could not create a session: Unable to get managed connection for JmsXA
    at org.hornetq.ra.HornetQRASessionFactoryImpl.allocateConnection(HornetQRASessionFactoryImpl.java:881)
    at org.hornetq.ra.HornetQRASessionFactoryImpl.createQueueSession(HornetQRASessionFactoryImpl.java:237)

While creating QueueSession, below is the snippet used

connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);

We are using java:JmsXA connection factory which uses INVM . AFAIK there is no use of setting parameters in nettyconnectionfactory and INVMconnectionfactory in hornetq-jms.xml Either we should set it some parameters in jms-ds.xml(JMS Queue Configuration File) or ra.xml(MDB configuration file)

I know some parameters can be set to 1. <reconnect-attempts>1000</reconnect-attempts> this will try to reconnect 1000 times after it gets disconnected 2. <call-timeout>10800000</call-timeout>

also there is no use of setting as it is default to -1 and will try to connect unlimited no. of times

I am confused as to what parameters can be set and at what level ..i.e. either on queue level (in jms-ds.xml) or at MDB level (ra.xml) as some parameters are same e.g. call-timeout,retry-interval,etc

1

1 Answers

0
votes

Try with increasing max-pool-size of pooled-connection-factory JmsXA.