[Zope] Need some help to get rid of an InvalidObjectReference exception

chaouche yacine yacinechaouche at yahoo.com
Wed Aug 20 04:52:37 EDT 2008


> >Need some help to get rid of an InvalidObjectReference
> exception
> >In my zope product, when I try to put some specific
> object in the session, I get this :
> >
> >2008-08-18T14:51:02 ERROR(200) SiteError
> http://www.afdas.com:8091/noyauafdas/tests/testAdresses
> >Traceback (most recent call last):
> >  File
> "/opt/Zope-2.7/lib/python/ZPublisher/Publish.py",
> line 107, in publish
> >    transactions_manager.commit()
> >  File
> "/opt/Zope-2.7/lib/python/Zope/App/startup.py",
> line 222, in commit
> >    get_transaction().commit()
> >  File
> "/opt/Zope-2.7/lib/python/ZODB/Transaction.py",
> line 241, in commit
> >    ncommitted += self._commit_objects(objects)
> >  File
> "/opt/Zope-2.7/lib/python/ZODB/Transaction.py",
> line 356, in _commit_objects
> >    jar.commit(o, self)
> >  File
> "/opt/Zope-2.7/lib/python/ZODB/Connection.py",
> line 452, in commit
> >    dump(state)
> >InvalidObjectReference: Attempt to store an object from
> a foreign database connection
> 
> A given persistent object can only be in one (ZODB-)
> database, not in several
> databases at the same time.
> 
> You must copy the persistent object, when you want it to be
> stored
> (also) in another (ZODB-) database.
> 
> You can use the "_getCopy(destination)" method to
> create such
> a copy. "_getCopy" is defined by
> "OFS.CopySupport.CopySource" inherited
> by most Zope objects.
> 
> 
> 
> -- 
> Dieter

Well if it is the case, I didn't do it on purpose because I didn't use any specific ZODB code to copy objects on different ZODBs. 

How do I know to which ZODB a specific object belongs to ?




      


More information about the Zope mailing list