Thanks Rickard for fixing this. The patch from the cvs works!
I owe you something ... :-)

Ciao, Tobias

Tobias Frech wrote:
> 
> 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]


--
--------------------------------------------------------------
To subscribe:        [EMAIL PROTECTED]
To unsubscribe:      [EMAIL PROTECTED]
Problems?:           [EMAIL PROTECTED]

Reply via email to