Hi,
I'm using Jonas2.2.6 with RMI, with jdk1.2.2-004. I have deploied in Jonas two EJB, 
Session bean stateful.
Sometime I receive this error:
'java.rmi.ServerException: RemoteException occurred in server thread; nested exception 
is:
     java.rmi.server.ExportException: object already exported'


I found in Jonas mailing list some mail about this error but with Jeremie. Your answer 
is that this error is resolved in Jonas2.2.7.

I did some tests with version 2.2.7 and I have received same error.

I think the problem is due to the fact that Jonas inserts in the free_session_pool, 
istance variable of the class JSessionHome, the same remoteObject
more times. In this case the same remoteObject could become eligible to be exported, 
so RMI throws java.rmi.server.ExportException: object already
exported.

I have a debug log of Jonas server with a trial Session bean in which this error is 
thrown.
The trial client every time creates two ejb, one is removed by Client and the other no.
In this test I have added some trace in the source code of the class 'JSessionHome' 
beacause I wanted to wacth the variables fre_session_pool and
use_session_pool.


This is a log:


RMI Unreferenced-8 : 11:40:58:654  JBeanSession.unreferenced
RMI Unreferenced-8 : 11:40:58:654  JBeanSession.removeInstance
RMI Unreferenced-8 : 11:40:58:654 NamingManager: setComponentContext: prova
RMI Unreferenced-8 : 11:40:58:654  SessionContextImpl.removInstance
Start ejbRemove. Remove time: 769887 millisecondi
RMI Unreferenced-8 : 11:40:58:694  JBean.noMoreInUse
RMI Unreferenced-8 : 11:40:58:704  JBeanSession: putContextInPool
RMI Unreferenced-8 : 11:40:58:714  JBeanHome.toThePool: size=2
RMI Unreferenced-8 : 11:40:58:734  JSessionHome.freeSessionEJBObject
RMI Unreferenced-8 : 11:40:58:754  use_session_pool.size= 0
RMI Unreferenced-8 : 11:40:58:764  use_session_pool contain
RMI Unreferenced-8 : 11:40:58:784  free_session_pool.size= 6
RMI Unreferenced-9 : 11:40:58:794  JBeanSession.unreferenced
RMI Unreferenced-8 : 11:40:58:814  free_session_pool contain =  
provabas.JOnASprovaRemote[RemoteStub [ref: [endpoint:[1
0.159.101.74:2829](local),objID:[13]]]] provabas.JOnASprovaRemote[RemoteStub [ref: 
[endpoint:[10.159.101.74:2829](local)
,objID:[13]]]] provabas.JOnASprovaRemote[RemoteStub [ref: 
[endpoint:[10.159.101.74:2829](local),objID:[14]]]] provabas.J
OnASprovaRemote[RemoteStub [ref: [endpoint:[10.159.101.74:2829](local),objID:[13]]]] 
provabas.JOnASprovaRemote[RemoteStu
b [ref: [endpoint:[10.159.101.74:2829](local),objID:[14]]]] 
provabas.JOnASprovaRemote[RemoteStub [ref: [endpoint:[10.159
.101.74:2829](local),objID:[13]]]]
RMI Unreferenced-9 : 11:40:58:904  JBeanSession.removeInstance
RMI Unreferenced-9 : 11:40:58:914  JBean.noMoreInUse
RMI Unreferenced-9 : 11:40:59:54  JBeanSession: putContextInPool
RMI Unreferenced-9 : 11:40:59:64  JSessionHome.freeSessionEJBObject
RMI Unreferenced-9 : 11:40:59:84  use_session_pool.size= 0
RMI Unreferenced-9 : 11:40:59:94  use_session_pool contain
RMI Unreferenced-9 : 11:40:59:114  free_session_pool.size= 7
RMI Unreferenced-9 : 11:40:59:134  free_session_pool contain=  
provabas.JOnASprovaRemote[RemoteStub [ref: [endpoint:[1
0.159.101.74:2829](local),objID:[13]]]] provabas.JOnASprovaRemote[RemoteStub [ref: 
[endpoint:[10.159.101.74:2829](local)
,objID:[13]]]] provabas.JOnASprovaRemote[RemoteStub [ref: 
[endpoint:[10.159.101.74:2829](local),objID:[14]]]] provabas.J
OnASprovaRemote[RemoteStub [ref: [endpoint:[10.159.101.74:2829](local),objID:[13]]]] 
provabas.JOnASprovaRemote[RemoteStu
b [ref: [endpoint:[10.159.101.74:2829](local),objID:[14]]]] 
provabas.JOnASprovaRemote[RemoteStub [ref: [endpoint:[10.159
.101.74:2829](local),objID:[13]]]] provabas.JOnASprovaRemote[RemoteStub [ref: 
[endpoint:[10.159.101.74:2829](local),objI
D:[14]]]]



RMI TCP Connection(24)-10.159.101.74 : 11:42:12:670 inRequest --->
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:670  
Current.setPropagationContext(null) -> detach
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:670  JOnASprovaHome.create()
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:670  JSessionHome.getSessionEJBObject
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:670  JBeanSession is found in pool.
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:670  JBeanSession get 
object:provabas.JOnASprovaRemote[RemoteStub [
ref: [endpoint:[10.159.101.74:2829](local),objID:[13]]]]
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:670  use_session_pool contain   
provabas.JOnASprovaRemote[RemoteStub [
ref: [endpoint:[10.159.101.74:2829](local),objID:[13]]]]
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:680  free_session_pool contain=  
provabas.JOnASprovaRemote[RemoteStub
[ref: [endpoint:[10.159.101.74:2829](local),objID:[13]]]] 
provabas.JOnASprovaRemote[RemoteStub [ref: [endpoint:[10.159.1
01.74:2829](local),objID:[14]]]] provabas.JOnASprovaRemote[RemoteStub [ref: 
[endpoint:[10.159.101.74:2829](local),objID:
[13]]]] provabas.JOnASprovaRemote[RemoteStub [ref: 
[endpoint:[10.159.101.74:2829](local),objID:[14]]]] provabas.JOnASpro
vaRemote[RemoteStub [ref: [endpoint:[10.159.101.74:2829](local),objID:[13]]]] 
provabas.JOnASprovaRemote[RemoteStub [ref:
 [endpoint:[10.159.101.74:2829](local),objID:[14]]]]
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:680  JBeanSession.exportObject
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:680  Object exported 
provabas.JOnASprovaRemote[RemoteStub [ref: [endpo
int:[10.159.101.74:2829](local),objID:[15]]]]
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:680  use_session_pool contain   
provabas.JOnASprovaRemote[RemoteStub [
ref: [endpoint:[10.159.101.74:2829](local),objID:[15]]]]
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:680  free_session_pool contain=  
provabas.JOnASprovaRemote[RemoteStub
[ref: [endpoint:[10.159.101.74:2829](local),objID:[15]]]] 
provabas.JOnASprovaRemote[RemoteStub [ref: [endpoint:[10.159.1
01.74:2829](local),objID:[14]]]] provabas.JOnASprovaRemote[RemoteStub [ref: 
[endpoint:[10.159.101.74:2829](local),objID:
[15]]]] provabas.JOnASprovaRemote[RemoteStub [ref: 
[endpoint:[10.159.101.74:2829](local),objID:[14]]]] provabas.JOnASpro
vaRemote[RemoteStub [ref: [endpoint:[10.159.101.74:2829](local),objID:[15]]]] 
provabas.JOnASprovaRemote[RemoteStub [ref:
 [endpoint:[10.159.101.74:2829](local),objID:[14]]]]
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:680  JSessionHome.preinvoke
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:680 NamingManager: 
setComponentContext: prova
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:680  JBeanSession: getContextFromPool
Start ejbCreate
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:680  JSessionHome.postinvoke
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:680 NamingManager: 
setComponentContext: reset to null
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:680 outReply <---
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:730 inRequest --->
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:740  
Current.setPropagationContext(null) -> detach
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:740  JOnASprovaHome.create()
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:740  JSessionHome.getSessionEJBObject
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:740  JBeanSession is found in pool.
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:740  JBeanSession get 
object:provabas.JOnASprovaRemote[RemoteStub [
ref: [endpoint:[10.159.101.74:2829](local),objID:[15]]]]
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:740  use_session_pool contain   
provabas.JOnASprovaRemote[RemoteStub [
ref: [endpoint:[10.159.101.74:2829](local),objID:[15]]]] 
provabas.JOnASprovaRemote[RemoteStub [ref: [endpoint:[10.159.10
1.74:2829](local),objID:[15]]]]
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:740  free_session_pool contain=  
provabas.JOnASprovaRemote[RemoteStub
[ref: [endpoint:[10.159.101.74:2829](local),objID:[14]]]] 
provabas.JOnASprovaRemote[RemoteStub [ref: [endpoint:[10.159.1
01.74:2829](local),objID:[15]]]] provabas.JOnASprovaRemote[RemoteStub [ref: 
[endpoint:[10.159.101.74:2829](local),objID:
[14]]]] provabas.JOnASprovaRemote[RemoteStub [ref: 
[endpoint:[10.159.101.74:2829](local),objID:[15]]]] provabas.JOnASpro
vaRemote[RemoteStub [ref: [endpoint:[10.159.101.74:2829](local),objID:[14]]]]
RMI TCP Connection(24)-10.159.101.74 : 11:42:12:740  JBeanSession.exportObject

In this moment error on the client:

Error on the thread_0 :java.rmi.ServerException: RemoteException occurred in server 
thread; nested exception is:
     java.rmi.server.ExportException: object already exported

end of Log.

I wait your opinion about this problem

thanks a lot

Andrea Ravagli



*************************************************************************
Ai sensi della legge n.ro  675/96, si precisa che le informazioni contenute
in questo messaggio e negli eventuali  allegati sono riservate e per uso
esclusivo del destinatario. Persone diverse dallo stesso non possono
copiare o distribuire il messaggio a terzi. Chiunque riceva questo
messaggio per errore, è pregato di distruggerlo e di informare
immediatamente [EMAIL PROTECTED]

----
To unsubscribe, send email to [EMAIL PROTECTED] and
include in the body of the message "unsubscribe jonas-users".
For general help, send email to [EMAIL PROTECTED] and
include in the body of the message "help".

Reply via email to