Jon,
EJB - here is a sample below.
Thank you for looking at this.
Ted S.
@Named
@LocalBean
@TransactionManagement(TransactionManagementType.CONTAINER)
@Stateless
public class QueueSenderSessionBean
{
@Resource(mappedName = "jms/localNotificationQueue")
private Queue localQueue;
@Inject
@JMSConnectionFactory("jmsConnectionFactory")
private JMSContext jmsContext;
public void sendMessage(String message)
{
try
{
TextMessage textMessage =
jmsContext.createTextMessage(message);
textMessage.setStringProperty("someProperty", "someValue" );
jmsContext.createProducer().
setDeliveryMode(DeliveryMode.PERSISTENT).
send(localQueue,
textMessage);
}
catch (JMSException e)
{
e.printStackTrace();
}
}
}
On 4/3/19, 4:35 PM, "Jonathan Gallimore" <[email protected]> wrote:
Sounds like an issue we need to look at on the TomEE side (adding
[email protected])
What are you injecting into - an EJB or CDI bean?
Your code shows a consumer - how are you sending your messages?
Jon
On Wed, 3 Apr 2019, 19:43 tkspradley, <[email protected]> wrote:
> First posting here. Please let me know if I need to include other
> environment
> information
>
> Environment: (TomEE)/9.0.12 - CentOS 7 - java-1.8.0-openjdk-1.8.0
>
> Issue: Abandoned connection warning issued after every send and receive
>
> Question: The container eventually releases the abandoned connections and
> delivers some of the messages. Is this expected behavior? Am I supposed to
> release the Connection somehow? If I use a try with resources block to
> create a context using connection factory, resources are release when out
> of
> scope, but messages aren't visible to the messages consumer selector even
> though the messages do appear using QueueBrowser.
>
> Thank you,
> Ted S.
>
> Execution:
>
> If I send 20 messages sequentially, an exception is thrown on message 11:
> javax.jms.JMSRuntimeException: No ManagedConnections available within
> configured blocking timeout ( 5000 [ms] )
>
> Configuration:
> <Resource id="jmsConnectionFactory"
> type="javax.jms.ConnectionFactory">
> connectionMaxIdleTime = 15 Minutes
> connectionMaxWaitTime = 5 seconds
> poolMaxSize = 10
> poolMinSize = 0
> resourceAdapter = Default JMS Resource Adapter
> transactionSupport = xa
> </Resource>
>
> @Inject
> @JMSConnectionFactory("jmsConnectionFactory")
> private JMSContext jmsContext;
> @Resource(mappedName = "jms/localNotificationQueue")
> private Queue localQueue;
>
> JMSConsumer jmsConsumer =
> jmsContext.createConsumer(localQueue,
> "someProperty='someValue'");
>
> Message localMessage =
> jmsConsumer.receiveNoWait();
>
> log=>
> Apr 03, 2019 1:10:21 PM
org.apache.openejb.resource.AutoConnectionTracker$1
> beforeCompletion
> WARNING: Transaction complete, but connection still has handles
associated:
> ManagedConnectionInfo:
>
>
>
>
> --
> Sent from:
> http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html
>