[jboss-user] [EJB 3.0] - Re: EJBException: Failed to acquire the pool semaphore, stri

pbaker01 do-not-reply at jboss.com
Thu Jan 1 09:30:33 EST 2009


That did not solve the problem :(

The console log (below) outputs a line each time a message is received and processed.  So 20 messages had been started and of those 5 had been completed.

Thanks for replying on New Years day!!! Any other suggestions will be appreciated.  

Happy New Year! PB

new MDB:
package com.xxxx.wab.mdb.ssim; 
  | 
  | import java.util.ArrayList;
  | 
  | import javax.ejb.ActivationConfigProperty;
  | import javax.ejb.MessageDriven;
  | import javax.jms.JMSException;
  | import javax.jms.Message;
  | import javax.jms.MessageListener;
  | import javax.jms.ObjectMessage;
  | import javax.persistence.EntityManager;
  | import javax.persistence.PersistenceContext;
  | 
  | import com.xxxx.wab.dao.MasterFlightDAO;
  | import com.xxxx.wab.dao.SubscriberDAO;
  | import com.xxxx.wab.dto.SsimRsp;
  | import com.xxxx.wab.service.SsimService;
  | import com.xxxx.wab.ssim.SsimFlight;
  | 
  | @MessageDriven(mappedName = "jms/SSMListener", activationConfig = {
  | 		@ActivationConfigProperty(propertyName="messagingType", propertyValue="javax.jms.MessageListener"),
  | 		@ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "AUTO_ACKNOWLEDGE"),
  | 		@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
  | 		@ActivationConfigProperty(propertyName = "maxSession", propertyValue = "25"),
  | 		@ActivationConfigProperty(propertyName="destination",propertyValue="queue/SSMQueue") })
  | 
  | public class SSMListener implements MessageListener {
  | 
  | 	@PersistenceContext(unitName="WABPU")
  | 	private EntityManager em;
  | 	SsimService ssimService;
  | 
  | 	private SsimService getSsimService() {
  | 	if (ssimService == null)
  | 		ssimService = new SsimService(em, null);
  | 		MasterFlightDAO fltDAO = new MasterFlightDAO(em);
  | 		SubscriberDAO 	subscriberDAO = new SubscriberDAO(em);
  | 		ssimService.setFltDAO(fltDAO);
  | 		ssimService.setSubscriberDAO(subscriberDAO);
  | 		
  | 		return ssimService;
  | 	}
  | 	
  | 	public void onMessage(Message arg0) {
  | 		// TODO Auto-generated method stub
  | 		ObjectMessage om = (ObjectMessage) arg0;
  | 		try {
  | 			System.out.println("Starting  message: " + om.getJMSMessageID());
  | 			ArrayList<SsimFlight> flts = (ArrayList<SsimFlight>) om.getObject();
  | 			getSsimService().buildFlights(flts);
  | 			System.out.println("Completed message: " + om.getJMSMessageID());
  | 		} catch (JMSException e) {
  | 			// TODO Auto-generated catch block
  | 			e.printStackTrace();
  | 		} finally {
  | 		}
  | 	}
  | }



Console Log:
09:13:55,386 WARN  [InterceptorRegistry] applicable interceptors is non-existent for public void com.sita.wab.mdb.ssim.SSMListener.onMessage(javax.jms.Message)
  | 09:13:56,333 WARN  [InterceptorRegistry] applicable interceptors is non-existent for public void com.sita.wab.mdb.ssim.SSMListener.onMessage(javax.jms.Message)
  | 09:13:56,361 INFO  [STDOUT] Starting  message: ID:JBM-50492cac-9217-467a-9544-a1b1e77b523b
  | 09:13:57,310 INFO  [STDOUT] Starting  message: ID:JBM-3b47938a-0611-45d7-819e-982e682f5f07
  | 09:13:58,100 INFO  [STDOUT] Starting  message: ID:JBM-90be56ab-661a-47fc-94b0-97ddd20f263a
  | 09:13:58,955 INFO  [STDOUT] Starting  message: ID:JBM-40acff81-1248-45c4-9dfb-a17390c71b1d
  | 09:13:59,891 INFO  [STDOUT] Starting  message: ID:JBM-7471c02f-fb50-4d63-b01b-c7e15e694210
  | 09:14:00,884 INFO  [STDOUT] Starting  message: ID:JBM-f0d8822b-d29c-4938-8e42-fb1cf41ec12c
  | 09:14:01,671 INFO  [STDOUT] Starting  message: ID:JBM-fb4f42ff-06d4-4071-9fbb-4ad5b17f6dfb
  | 09:14:02,645 INFO  [STDOUT] Starting  message: ID:JBM-0c7fe953-0071-41d9-abda-dd9120ba564c
  | 09:14:03,648 INFO  [STDOUT] Starting  message: ID:JBM-a4d8b3f9-2de7-4938-a2b1-b9058618ece6
  | 09:14:05,327 INFO  [STDOUT] Starting  message: ID:JBM-23828e1a-a2f9-48b8-80aa-cc9e666f7c29
  | 09:14:05,451 INFO  [STDOUT] Starting  message: ID:JBM-074ae110-0e8b-4130-a7bb-08dc5e379d96
  | 09:14:07,240 INFO  [STDOUT] Starting  message: ID:JBM-54b1f520-fa1d-4e15-bbe2-3b1b8d81ab5e
  | 09:14:07,334 INFO  [STDOUT] Starting  message: ID:JBM-1c32374a-986a-430e-85dc-0cbe09acfe3d
  | 09:14:09,023 INFO  [STDOUT] Starting  message: ID:JBM-5703c26e-baf3-44c0-96d4-9e932805528c
  | 09:14:09,114 INFO  [STDOUT] Starting  message: ID:JBM-f01f269b-b8ab-4a73-ad76-81e6022037fe
  | 09:14:11,897 INFO  [STDOUT] Completed message: ID:JBM-f0d8822b-d29c-4938-8e42-fb1cf41ec12c
  | 09:14:11,917 INFO  [STDOUT] Starting  message: ID:JBM-b9f677e6-7eae-463c-8e78-7b7de728434d
  | 09:14:11,926 INFO  [STDOUT] Completed message: ID:JBM-0c7fe953-0071-41d9-abda-dd9120ba564c
  | 09:14:11,929 INFO  [STDOUT] Starting  message: ID:JBM-d730996a-fe0f-45ee-95ec-30390885a4f2
  | 09:14:14,889 INFO  [STDOUT] Completed message: ID:JBM-a4d8b3f9-2de7-4938-a2b1-b9058618ece6
  | 09:14:14,890 INFO  [STDOUT] Starting  message: ID:JBM-82052933-8ccb-4fcb-b680-d31aba80ea48
  | 09:14:21,189 INFO  [STDOUT] Completed message: ID:JBM-7471c02f-fb50-4d63-b01b-c7e15e694210
  | 09:14:21,190 INFO  [STDOUT] Starting  message: ID:JBM-f666def7-2b21-4fbc-b92d-6c7213d75539
  | 09:14:21,305 INFO  [STDOUT] Completed message: ID:JBM-fb4f42ff-06d4-4071-9fbb-4ad5b17f6dfb
  | 09:14:21,307 INFO  [STDOUT] Starting  message: ID:JBM-620331ca-804c-43e8-9f74-4a6bec3db92d
  | 09:14:24,951 ERROR [TxPolicy] javax.ejb.EJBException: Failed to acquire the pool semaphore, strictTimeout=10000
  | 09:14:24,959 ERROR [JmsServerSession] Unexpected error delivering message delegator->JBossMessage[20165742655045652]:PERSISTENT, deliveryId=20
  | javax.ejb.EJBException: Failed to acquire the pool semaphore, strictTimeout=10000
  | 	at org.jboss.ejb3.pool.StrictMaxPool.get(StrictMaxPool.java:126)
  | 	at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:58)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
  | 	at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:194)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.ejb3.security.RunAsSecurityInterceptorv2.invoke(RunAsSecurityInterceptorv2.java:94)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke(Ejb3AuthenticationInterceptorv2.java:75)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.ejb3.BlockContainerShutdownInterceptor.invoke(BlockContainerShutdownInterceptor.java:65)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.ejb3.mdb.MessagingContainer.localInvoke(MessagingContainer.java:262)
  | 	at org.jboss.ejb3.mdb.inflow.MessageInflowLocalProxy.delivery(MessageInflowLocalProxy.java:270)
  | 	at org.jboss.ejb3.mdb.inflow.MessageInflowLocalProxy.invoke(MessageInflowLocalProxy.java:140)
  | 	at $Proxy129.onMessage(Unknown Source)
  | 	at org.jboss.resource.adapter.jms.inflow.JmsServerSession.onMessage(JmsServerSession.java:178)
  | 	at org.jboss.jms.client.container.ClientConsumer.callOnMessageStatic(ClientConsumer.java:160)
  | 	at org.jboss.jms.client.container.SessionAspect.handleRun(SessionAspect.java:831)
  | 	at org.jboss.aop.advice.org.jboss.jms.client.container.SessionAspect_z_handleRun_1448464820.invoke(SessionAspect_z_handleRun_1448464820.java)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)
  | 	at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:86)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.jms.client.delegate.ClientSessionDelegate.run(ClientSessionDelegate.java)
  | 	at org.jboss.jms.client.JBossSession.run(JBossSession.java:199)
  | 	at org.jboss.resource.adapter.jms.inflow.JmsServerSession.run(JmsServerSession.java:234)
  | 	at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:204)
  | 	at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:260)
  | 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
  | 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
  | 	at java.lang.Thread.run(Thread.java:619)
  | 09:14:25,925 ERROR [TxPolicy] javax.ejb.EJBException: Failed to acquire the pool semaphore, strictTimeout=10000
  | 09:14:25,928 ERROR [JmsServerSession] Unexpected error delivering message delegator->JBossMessage[20165742671806485]:PERSISTENT, deliveryId=21
  | javax.ejb.EJBException: Failed to acquire the pool semaphore, strictTimeout=10000
  | 	at org.jboss.ejb3.pool.StrictMaxPool.get(StrictMaxPool.java:126)
  | 	at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:58)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
  | 	at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:194)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.ejb3.security.RunAsSecurityInterceptorv2.invoke(RunAsSecurityInterceptorv2.java:94)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke(Ejb3AuthenticationInterceptorv2.java:75)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.ejb3.BlockContainerShutdownInterceptor.invoke(BlockContainerShutdownInterceptor.java:65)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.ejb3.mdb.MessagingContainer.localInvoke(MessagingContainer.java:262)
  | 	at org.jboss.ejb3.mdb.inflow.MessageInflowLocalProxy.delivery(MessageInflowLocalProxy.java:270)
  | 	at org.jboss.ejb3.mdb.inflow.MessageInflowLocalProxy.invoke(MessageInflowLocalProxy.java:140)
  | 	at $Proxy129.onMessage(Unknown Source)
  | 	at org.jboss.resource.adapter.jms.inflow.JmsServerSession.onMessage(JmsServerSession.java:178)
  | 	at org.jboss.jms.client.container.ClientConsumer.callOnMessageStatic(ClientConsumer.java:160)
  | 	at org.jboss.jms.client.container.SessionAspect.handleRun(SessionAspect.java:831)
  | 	at org.jboss.aop.advice.org.jboss.jms.client.container.SessionAspect_z_handleRun_1448464820.invoke(SessionAspect_z_handleRun_1448464820.java)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)
  | 	at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:86)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
  | 	at org.jboss.jms.client.delegate.ClientSessionDelegate.run(ClientSessionDelegate.java)
  | 	at org.jboss.jms.client.JBossSession.run(JBossSession.java:199)
  | 	at org.jboss.resource.adapter.jms.inflow.JmsServerSession.run(JmsServerSession.java:234)
  | 	at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:204)
  | 	at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:260)
  | 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
  | 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
  | 	at java.lang.Thread.run(Thread.java:619)
  | 09:14:26,875 ERROR [TxPolicy] javax.ejb.EJBException: Failed to acquire the pool semaphore, strictTimeout=10000
  | 09:14:26,875 ERROR [TxPolicy] javax.ejb.EJBException: Failed to acquire the pool semaphore, strictTimeout=10000
  | 

Additonal Info:  (Service Methods)

This methods queues the messages:

	/**
  | 	 * This method queues the flight schedule for processing
  | 	 * <p>
  | 	 * 
  | 	 * @param pFlt
  | 	 * @throws ApplicationException
  | 	 */
  | 	public void queueFlightPacket(ArrayList<SsimFlight> pFlightPacket)
  | 			throws ApplicationException {
  | 
  | 		Context jndiContext = null;
  | 		ConnectionFactory connectionFactory = null;
  | 		Connection connection = null;
  | 		Session session = null;
  | 		Destination destination = null;
  | 		MessageProducer messageProducer = null;
  | 		ObjectMessage message = null;
  | 
  | 		try {
  | 			jndiContext = new InitialContext();
  | 		} catch (NamingException e) {
  | 			System.out.println("Could not create JNDI " + "context: "
  | 					+ e.toString());
  | 		}
  | 
  | 		try {
  | 			connectionFactory = (ConnectionFactory) jndiContext
  | 					.lookup("ConnectionFactory");
  | 			destination = (Queue) jndiContext.lookup("queue/SSMQueue");
  | 		} catch (NamingException e) {
  | 			System.out.println("JNDI lookup failed: " + e.toString());
  | 		}
  | 
  | 		try {
  | 			connection = connectionFactory.createConnection();
  | 			session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
  | 			messageProducer = session.createProducer(destination);
  | 			message = session.createObjectMessage();
  | 			message.setObject(pFlightPacket);
  | 			messageProducer.send(message);
  | 			connection.close();
  | 		} catch (JMSException e) {
  | 			System.out.println("Exception occurred: " + e.toString());
  | 			throw new ApplicationException();
  | 		} finally {
  | 		}
  | 	}
  | 

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4199112#4199112

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4199112



More information about the jboss-user mailing list