Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF » [CDO] Editor based-on TransactionEditingdomain
[CDO] Editor based-on TransactionEditingdomain [message #427392] Mon, 16 February 2009 15:57 Go to next message
Stephane  fournier is currently offline Stephane fournierFriend
Messages: 340
Registered: July 2009
Senior Member
After experiencing some difficulties with CDO and a
TransactionalEditingDomain(TED) (see post
http://www.eclipse.org/newsportal/article.php?id=39439&g roup=eclipse.tools.emf#39439),
now I try to use a EMF generated editor slightly modified to use TED and a
CDO resource.

The data are correctly loaded but when selecting an object in the
treeviewer, let's say a company or a customer I get the following
exception.
A part from that, that seems to work properly, the editor gets dirty when
modifying data, the save operation runs well but generates the same
exception.

Do you have an idea to figure out that latest issue ?

Stephane.

Caused by: org.eclipse.net4j.signal.RemoteException:
org.eclipse.net4j.db.DBException: ClassID for CDOID NULL not found
at
org.eclipse.emf.cdo.server.internal.db.ObjectTypeCache.getOb jectType(ObjectTypeCache.java:88)
at
org.eclipse.emf.cdo.server.internal.db.HorizontalMappingStra tegy.readObjectType(HorizontalMappingStrategy.java:69)
at
org.eclipse.emf.cdo.server.internal.db.DBStoreAccessor.readO bjectType(DBStoreAccessor.java:251)
at
org.eclipse.emf.cdo.server.internal.db.DBStoreAccessor.getOb jectType(DBStoreAccessor.java:335)
at
org.eclipse.emf.cdo.server.internal.db.DBStoreAccessor.readR evision(DBStoreAccessor.java:271)
at
org.eclipse.emf.cdo.internal.server.RevisionManager.loadRevi sion(RevisionManager.java:202)
at
org.eclipse.emf.cdo.internal.common.revision.CDORevisionReso lverImpl.getRevision(CDORevisionResolverImpl.java:94)
at
org.eclipse.emf.cdo.internal.common.revision.CDORevisionReso lverImpl.getRevision(CDORevisionResolverImpl.java:79)
at
org.eclipse.emf.cdo.internal.server.protocol.LoadRevisionInd ication.getRevision(LoadRevisionIndication.java:177)
at
org.eclipse.emf.cdo.internal.server.protocol.LoadRevisionInd ication.responding(LoadRevisionIndication.java:147)
at
org.eclipse.emf.cdo.internal.server.protocol.CDOServerIndica tion.responding(CDOServerIndication.java:151)
at
org.eclipse.net4j.signal.IndicationWithResponse.doExtendedOu tput(IndicationWithResponse.java:96)
at org.eclipse.net4j.signal.Signal.doOutput(Signal.java:285)
at
org.eclipse.net4j.signal.IndicationWithResponse.execute(Indi cationWithResponse.java:65)
at
org.eclipse.emf.cdo.internal.server.protocol.CDOReadIndicati on.execute(CDOReadIndication.java:36)
at org.eclipse.net4j.signal.Signal.runSync(Signal.java:237)
at org.eclipse.net4j.signal.Signal.run(Signal.java:145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Threa dPoolExecutor.java:650)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo lExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
Re: [CDO] Editor based-on TransactionEditingdomain [message #427394 is a reply to message #427392] Mon, 16 February 2009 16:20 Go to previous messageGo to next message
Victor Roldan Betancort is currently offline Victor Roldan BetancortFriend
Messages: 524
Registered: July 2009
Senior Member
Stéphane,

I was getting the same exception yesterday. I'm not sure if it would
help, but let's try at least! Since it was also related with TED...

In the method:

org.eclipse.emf.cdo.eresource.impl.CDOResourceImpl.basicSetR esourceSet(ResourceSet,
NotificationChain)


Try to force Resource load *before* notifications take place. You can do
this by simply adding:

try
{
load(null);
}
catch (IOException ex)
{
OM.LOG.error(ex);
}

right before:

if (eNotificationRequired())
{
.......


Again, this is experimental stuff, haven't even executed our test suite
to see if it breaks anything.

Let me know if it helps.
Re: [CDO] Editor based-on TransactionEditingdomain [message #427396 is a reply to message #427394] Mon, 16 February 2009 16:37 Go to previous message
Stephane  fournier is currently offline Stephane fournierFriend
Messages: 340
Registered: July 2009
Senior Member
Victor,

I have just tested your patch.
The exception always happens less often but the fixes I did to get EMF
Transaction notifications ok (see other post), won't run anymore.

I am trying to debug the server to clarify what happens.

Stéphane.


Víctor Roldán Betancort wrote:

> Stéphane,

> I was getting the same exception yesterday. I'm not sure if it would
> help, but let's try at least! Since it was also related with TED...

> In the method:

>
org.eclipse.emf.cdo.eresource.impl.CDOResourceImpl.basicSetR esourceSet(ResourceSet,
> NotificationChain)


> Try to force Resource load *before* notifications take place. You can do
> this by simply adding:

> try
> {
> load(null);
> }
> catch (IOException ex)
> {
> OM.LOG.error(ex);
> }

> right before:

> if (eNotificationRequired())
> {
> .......


> Again, this is experimental stuff, haven't even executed our test suite
> to see if it breaks anything.

> Let me know if it helps.
Previous Topic:Load model from xml file
Next Topic:How to report errors during model load
Goto Forum:
  


Current Time: Thu Apr 25 22:58:08 GMT 2024

Powered by FUDForum. Page generated in 0.03054 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top