Hi. I'm having the following problem. I basically have SpyderMQ running within JBOSS and I also have an Interbase 6 database. I have a message reciever whose code for onMessage() is as follows:
public void onMessage(javax.jms.Message msg) {
try {
String msgText = null;
boolean quit = false;
if (msg instanceof TextMessage) {
msgText = ((TextMessage)msg).getText();
try {
//code to get OrderHome home interface
OrderHome orderHome = (OrderHome) Utils.lookupObject ("nuvation.megacd.OrderHome", OrderHome.class);
Order order=orderHome.findByPrimaryKey(msgText);
catch(Exception e)
{ e.printStackTrace() }
The code only sometimes fails at the "orderHome.findByPrimaryKey(msgText)" line. I get this stack trace:
[SpyderMQ] javax.ejb.ObjectNotFoundException: Object with primary key 9763265779
21 not found in storage
[SpyderMQ] at org.jboss.ejb.plugins.jaws.jdbc.JDBCFindEntityCommand.findByP
rimaryKey(JDBCFindEntityCommand.java:88)
[SpyderMQ] at org.jboss.ejb.plugins.jaws.jdbc.JDBCFindEntityCommand.execute
(JDBCFindEntityCommand.java:59)
[SpyderMQ] at org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.findEntity(
JAWSPersistenceManager.java:130)
[SpyderMQ] at org.jboss.ejb.plugins.CMPPersistenceManager.findEntity(CMPPer
sistenceManager.java:206)
[SpyderMQ] at org.jboss.ejb.EntityContainer.find(EntityContainer.java:419)
[SpyderMQ] at java.lang.reflect.Method.invoke(Native Method)
[SpyderMQ] at org.jboss.ejb.EntityContainer$ContainerInterceptor.invokeHome
(EntityContainer.java:639)
[SpyderMQ] at org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invoke
Home(EntitySynchronizationInterceptor.java:160)
[SpyderMQ] at org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(En
tityInstanceInterceptor.java:86)
[SpyderMQ] at org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxIntercept
orCMT.java:135)
[SpyderMQ] at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(Tx
InterceptorCMT.java:263)
[SpyderMQ] at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxIntercept
orCMT.java:86)
[SpyderMQ] at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(Security
Interceptor.java:126)
[SpyderMQ] at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogIntercepto
r.java:106)
[SpyderMQ] at org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java
:316)
[SpyderMQ] at org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke
Home(JRMPContainerInvoker.java:200)
[SpyderMQ] at org.jboss.ejb.plugins.jrmp.interfaces.HomeProxy.invoke(HomePr
oxy.java:198)
[SpyderMQ] at $Proxy4.findByPrimaryKey(Unknown Source)
[SpyderMQ] at com.nuvation.megacd.processors.burningprocessor.BurnQueueRece
iver.onMessage(BurnQueueReceiver.java:129)
[SpyderMQ] at org.spydermq.SpyQueueReceiver.dispatchMessage(SpyQueueReceive
r.java:208)
[SpyderMQ] at org.spydermq.distributed.server.ConnectionReceiverOIL.receive
(ConnectionReceiverOIL.java:228)
[SpyderMQ] at org.spydermq.distributed.server.ConnectionReceiverOIL.run(Con
nectionReceiverOIL.java:113)
[SpyderMQ] at java.lang.Thread.run(Unknown Source
This seems strange to me since I can see the entry with the above primary key in the database.
Does anyone know what might be the problem?
Thanks for your help,
Aadam
