I've been trying to maintain in a stateful session bean an open cursor to allow a client to page through potentially large amounts of data. I now know this is not the recommended way to do this and I'm using the recommended pattern. However, I came across some unexpected behaviour in JBoss that someone may have an explanation for. I was handling passivation and activation so that my cursor should have remained usable. However I was getting unpredictable returns while reading through the cursor. JBoss produced a 'Cursor not open' exception. It did this during the read for the second page of results. It didn't occur on the first use of the cursor but some way through the page. This was normally without any passivation/activation having happened. Can anybody explain what closed my cursor? The really sad thing is that the code worked using BES.