Is someone already working on this one ?
-------- Original Message --------
Subject: [jBoss-User] Container Exception, notify ...
Date: Tue, 28 Nov 2000 17:07:57 -0500
From: Tobias Frech <[EMAIL PROTECTED]>
Reply-To: "jBoss" <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Hi container developers!
The most important part first, the server trace (client trace says
nothing new):
jBoss: [User] [15] getPersonalDetails(15,null)
jBoss: [UserACL] [15acl] hasAccess(15,null)
jBoss: [UserACL] [15acl] isOwner(15,null)
jBoss: [UserPersonalDetails] create(15pd,15,null)
jBoss: [UserACL] create(15pdacl,15,null)
[User] CONTAINER EXCEPTION:null
[User] java.lang.NullPointerException
[User] at
org.jboss.ejb.plugins.jrmp.interfaces.EntityProxy.invoke(EntityProxy.
java:136)
[User] at
org.jboss.ejb.plugins.jrmp.interfaces.EntityProxy.invoke(EntityProxy.
java:110)
[User] at $Proxy36.equals(Unknown Source)
[User] at
org.jboss.ejb.plugins.jaws.jdbc.JDBCStoreEntityCommand.changed(JDBCSt
oreEntityCommand.java:164)
[User] at
org.jboss.ejb.plugins.jaws.jdbc.JDBCStoreEntityCommand.execute(JDBCSt
oreEntityCommand.java:87)
[User] at
org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.storeEntity(JAWSPer
sistenceManager.java:156)
[User] at
org.jboss.ejb.plugins.CMPPersistenceManager.storeEntity(CMPPersistenc
eManager.java:337)
[User] at
org.jboss.ejb.plugins.EntitySynchronizationInterceptor$InstanceSynchr
onization.beforeCompletion(EntitySynchronizationInterceptor.java:343)
[User] at
org.jboss.tm.TxCapsule.doBeforeCompletion(TxCapsule.java:1104)
[User] at org.jboss.tm.TxCapsule.commit(TxCapsule.java:278)
[User] at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:76)
[User] at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxIntercep
torCMT.java:318)
[User] at
org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:9
9)
[User] at
org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.
java:144)
[User] at
org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:195)
[User] at
org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:323)
[User] at
org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke(JRMPCon
tainerInvoker.java:163)
[User] at java.lang.reflect.Method.invoke(Native Method)
[User] at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:241)
[User] at sun.rmi.transport.Transport$1.run(Transport.java:142)
[User] at java.security.AccessController.doPrivileged(Native Method)
[User] at sun.rmi.transport.Transport.serviceCall(Transport.java:139)
[User] at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:4
43)
[User] at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
.java:643)
[User] at java.lang.Thread.run(Thread.java:484)
jBoss: [Bean Cache] Resized cache for bean PublicDirectory: old size =
1000, new
size = 50
Ok, that is what is going on inside the code:
User.getPersonalDetails() is called from the client. The B2B reference
to UserPersonalDetails is still null at this time. GetPersonalDetails()
checks the null value after some access right checking with UserACL and
creates a new UserPersonalDetails bean. This bean itself creates a new
UserACL object. In the database I can see, that the UserPersonalDetails
object stored the reference to the new UserACL bean. But the User bean
does not store the reference to the new UserPersonalDetails bean.
Ok :-) , try this one:
User UserACL(for User) UserPersonalDetails UserACL(for UserP.D.)
|
getPersonalDetails()
------------->|
some checking
|<------------|
discovers
B2B reference
is null
|-------------------------------->|
create()
|----------------->|
create()
|<-----------------|
(reference to
UserACL stored)
CONTAINER EXCEPTION?
CONTAINER EXCEPTION? <------------|
And, I am afraid, I am working with the latest cvs checkout.
Please HELP !
Which additional information do you need ?
Ciao,
Tobias
--
--------------------------------------------------------------
To subscribe: [EMAIL PROTECTED]
To unsubscribe: [EMAIL PROTECTED]
Problems?: [EMAIL PROTECTED]