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".