Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF "Technology" (Ecore Tools, EMFatic, etc)  » [EMF Compare] About MatchService API.
[EMF Compare] About MatchService API. [message #130478] Tue, 28 October 2008 18:29 Go to next message
Adolfo Sanchez-Barbudo Herrera is currently offline Adolfo Sanchez-Barbudo HerreraFriend
Messages: 260
Registered: July 2009
Senior Member
Hi guys,

I was wondering about the use of the EMF Compare API, because I have
encountered some problems with it.

I have simply coded an action to compare two EObjects, and to open an
editor with the differences.

Having the case that I have 2 identical models, if I run the action
between the 2 root eObjects of both models, all works fine as expected,
with 0 differences in the compare editor. However if I try to compare
the two same children of the root eObjects in both models, the compare
editor is opened with 1 difference. Besides, if I explore the
differences, a NPE is thrown.

I'm not sure if it's a bug, or I'm not correctly using the API.


This is way I'm using the EMF Compare API:

....
// Computing the match
HashMap<String, Object> options = new HashMap<String, Object>();
options.put(MatchOptions.OPTION_IGNORE_XMI_ID, Boolean.TRUE);
options.put(MatchOptions.OPTION_PROGRESS_MONITOR, monitor);
MatchModel match = MatchService.doContentMatch(jobEObject1, jobEObject2,
options);

// Computing differences
DiffModel diff = DiffService.doDiff(match, false);

// We create the snapshot
ModelInputSnapshot snapshot =
DiffFactory.eINSTANCE.createModelInputSnapshot();
snapshot.setDiff(diff);
snapshot.setMatch(match);

// We open the Editor.
ModelCompareEditorInput editorInput = new
ModelCompareEditorInput(snapshot);
CompareUI.openCompareEditorOnPage(editorInput, page);
....

Below, The NPE thrown, while exploring the unexpected difference in the
editor.

Cheers,
Adolfo.

java.lang.NullPointerException
at
org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:340)
at
org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:277)
at org.eclipse.emf.compare.util.AdapterUtils.adapt(AdapterUtils .java:55)
at
org.eclipse.emf.compare.util.AdapterUtils.getItemProviderTex t(AdapterUtils.java:110)
at
org.eclipse.emf.compare.diff.provider.MoveModelElementItemPr ovider.getText(MoveModelElementItemProvider.java:110)
at
org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider .getText(AdapterFactoryLabelProvider.java:374)
at
org.eclipse.emf.compare.ui.viewer.structure.ModelStructureMe rgeViewer$ModelStructureLabelProvider.getText(ModelStructure MergeViewer.java:333)
at
org.eclipse.jface.viewers.WrappedViewerLabelProvider.getText (WrappedViewerLabelProvider.java:108)
at
org.eclipse.jface.viewers.WrappedViewerLabelProvider.update( WrappedViewerLabelProvider.java:164)
at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn. java:145)
at
org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:932)
at
org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeR unnable.run(AbstractTreeViewer.java:102)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:880)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
at
org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:1012)
at
org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRun nable.run(StructuredViewer.java:466)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:880)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
at
org.eclipse.jface.viewers.StructuredViewer.updateItem(Struct uredViewer.java:2041)
at
org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem( AbstractTreeViewer.java:827)
at
org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractT reeViewer.java:802)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator .java:70)
at
org.eclipse.jface.viewers.AbstractTreeViewer.createChildren( AbstractTreeViewer.java:776)
at org.eclipse.jface.viewers.TreeViewer.createChildren(TreeView er.java:634)
at
org.eclipse.jface.viewers.AbstractTreeViewer.handleTreeExpan d(AbstractTreeViewer.java:1442)
at
org.eclipse.jface.viewers.TreeViewer.handleTreeExpand(TreeVi ewer.java:927)
at
org.eclipse.jface.viewers.AbstractTreeViewer$4.treeExpanded( AbstractTreeViewer.java:1453)
at
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:126)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1012)
at org.eclipse.swt.widgets.Tree.wmNotifyChild(Tree.java:7306)
at org.eclipse.swt.widgets.Control.wmNotify(Control.java:4718)
at org.eclipse.swt.widgets.Composite.wmNotify(Composite.java:17 56)
at org.eclipse.swt.widgets.Control.WM_NOTIFY(Control.java:4348)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3841 )
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4528 )
at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native Method)
at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:227 4)
at org.eclipse.swt.widgets.Tree.callWindowProc(Tree.java:1529)
at org.eclipse.swt.widgets.Tree.WM_LBUTTONDOWN(Tree.java:6249)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3822 )
at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:5791)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4541 )
at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:23 71)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3420)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2382)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:21 98)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:288)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:488)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
at
org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:113)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:193)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication(EclipseAppLauncher.java:110)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:79)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:386)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 549)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
Re: [EMF Compare] About MatchService API. [message #130491 is a reply to message #130478] Tue, 28 October 2008 18:33 Go to previous messageGo to next message
Adolfo Sanchez-Barbudo Herrera is currently offline Adolfo Sanchez-Barbudo HerreraFriend
Messages: 260
Registered: July 2009
Senior Member
BTW,

I have tried with the last emf.compare code from CVS, and it doesn't
work neither.

Cheers,
Adolfo.

Adolfo Sánchez-Barbudo Herrera escribió:
> Hi guys,
>
> I was wondering about the use of the EMF Compare API, because I have
> encountered some problems with it.
>
> I have simply coded an action to compare two EObjects, and to open an
> editor with the differences.
>
> Having the case that I have 2 identical models, if I run the action
> between the 2 root eObjects of both models, all works fine as expected,
> with 0 differences in the compare editor. However if I try to compare
> the two same children of the root eObjects in both models, the compare
> editor is opened with 1 difference. Besides, if I explore the
> differences, a NPE is thrown.
>
> I'm not sure if it's a bug, or I'm not correctly using the API.
>
>
> This is way I'm using the EMF Compare API:
>
> ...
> // Computing the match
> HashMap<String, Object> options = new HashMap<String, Object>();
> options.put(MatchOptions.OPTION_IGNORE_XMI_ID, Boolean.TRUE);
> options.put(MatchOptions.OPTION_PROGRESS_MONITOR, monitor);
> MatchModel match = MatchService.doContentMatch(jobEObject1, jobEObject2,
> options);
>
> // Computing differences
> DiffModel diff = DiffService.doDiff(match, false);
>
> // We create the snapshot
> ModelInputSnapshot snapshot =
> DiffFactory.eINSTANCE.createModelInputSnapshot();
> snapshot.setDiff(diff);
> snapshot.setMatch(match);
>
> // We open the Editor.
> ModelCompareEditorInput editorInput = new
> ModelCompareEditorInput(snapshot);
> CompareUI.openCompareEditorOnPage(editorInput, page);
> ...
>
> Below, The NPE thrown, while exploring the unexpected difference in the
> editor.
>
> Cheers,
> Adolfo.
>
> java.lang.NullPointerException
> at
> org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:340)
>
> at
> org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:277)
>
> at
> org.eclipse.emf.compare.util.AdapterUtils.adapt(AdapterUtils .java:55)
> at
> org.eclipse.emf.compare.util.AdapterUtils.getItemProviderTex t(AdapterUtils.java:110)
>
> at
> org.eclipse.emf.compare.diff.provider.MoveModelElementItemPr ovider.getText(MoveModelElementItemProvider.java:110)
>
> at
> org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider .getText(AdapterFactoryLabelProvider.java:374)
>
> at
> org.eclipse.emf.compare.ui.viewer.structure.ModelStructureMe rgeViewer$ModelStructureLabelProvider.getText(ModelStructure MergeViewer.java:333)
>
> at
> org.eclipse.jface.viewers.WrappedViewerLabelProvider.getText (WrappedViewerLabelProvider.java:108)
>
> at
> org.eclipse.jface.viewers.WrappedViewerLabelProvider.update( WrappedViewerLabelProvider.java:164)
>
> at
> org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn. java:145)
> at
> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:932)
>
> at
> org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeR unnable.run(AbstractTreeViewer.java:102)
>
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
> at org.eclipse.core.runtime.Platform.run(Platform.java:880)
> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
> at
> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:1012)
>
> at
> org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRun nable.run(StructuredViewer.java:466)
>
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
> at org.eclipse.core.runtime.Platform.run(Platform.java:880)
> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
> at
> org.eclipse.jface.viewers.StructuredViewer.updateItem(Struct uredViewer.java:2041)
>
> at
> org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem( AbstractTreeViewer.java:827)
>
> at
> org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractT reeViewer.java:802)
>
> at
> org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator .java:70)
> at
> org.eclipse.jface.viewers.AbstractTreeViewer.createChildren( AbstractTreeViewer.java:776)
>
> at
> org.eclipse.jface.viewers.TreeViewer.createChildren(TreeView er.java:634)
> at
> org.eclipse.jface.viewers.AbstractTreeViewer.handleTreeExpan d(AbstractTreeViewer.java:1442)
>
> at
> org.eclipse.jface.viewers.TreeViewer.handleTreeExpand(TreeVi ewer.java:927)
> at
> org.eclipse.jface.viewers.AbstractTreeViewer$4.treeExpanded( AbstractTreeViewer.java:1453)
>
> at
> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:126)
> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1012)
> at org.eclipse.swt.widgets.Tree.wmNotifyChild(Tree.java:7306)
> at org.eclipse.swt.widgets.Control.wmNotify(Control.java:4718)
> at org.eclipse.swt.widgets.Composite.wmNotify(Composite.java:17 56)
> at org.eclipse.swt.widgets.Control.WM_NOTIFY(Control.java:4348)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3841 )
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4528 )
> at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native Method)
> at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:227 4)
> at org.eclipse.swt.widgets.Tree.callWindowProc(Tree.java:1529)
> at org.eclipse.swt.widgets.Tree.WM_LBUTTONDOWN(Tree.java:6249)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3822 )
> at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:5791)
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4541 )
> at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
> at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:23 71)
> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3420)
> at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2382)
> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
> at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:21 98)
> at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
> at
> org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:288)
>
> at
> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:488)
> at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
> at
> org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:113)
>
> at
> org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:193)
>
> at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication(EclipseAppLauncher.java:110)
>
> at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:79)
>
> at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:386)
>
> at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
>
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 549)
> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
> at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
> at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
>
>
Re: [EMF Compare] About MatchService API. [message #130518 is a reply to message #130491] Wed, 29 October 2008 13:24 Go to previous messageGo to next message
Laurent Goubet is currently offline Laurent GoubetFriend
Messages: 1902
Registered: July 2009
Senior Member
This is a multi-part message in MIME format.
--------------080402060001020800040808
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit

Hi Adolfo,

The NPE I can easily fix, but that wouldn't help with the root problem :
could you send me the models you compare or the result of the comparison
either here or via mail laurent (dot) goubet (at) obeo (dot) fr so that
I can try and see why we detected a diff? As for the NPE, it should be
fixed in the next build.

Regards

Laurent Goubet
Obeo

Adolfo S
Re: [EMF Compare] About MatchService API. [message #130531 is a reply to message #130518] Wed, 29 October 2008 14:43 Go to previous messageGo to next message
Adolfo Sanchez-Barbudo Herrera is currently offline Adolfo Sanchez-Barbudo HerreraFriend
Messages: 260
Registered: July 2009
Senior Member
Ok Laurent,

The problem occurs always (the examples I have tried), independtly the
model and metamodel. So I have prepared a simple example with two very
simple UML models.

I think that it's an implementation bug so I'll better raise a bugzilla,
attaching a zip with the two simple models, and the correspondent diff
models generated by the comparison.

Cheers,
Adolfo.


laurent Goubet escribió:
> Hi Adolfo,
>
> The NPE I can easily fix, but that wouldn't help with the root problem :
> could you send me the models you compare or the result of the comparison
> either here or via mail laurent (dot) goubet (at) obeo (dot) fr so that
> I can try and see why we detected a diff? As for the NPE, it should be
> fixed in the next build.
>
> Regards
>
> Laurent Goubet
> Obeo
>
> Adolfo Sánchez-Barbudo Herrera a écrit :
>> BTW,
>>
>> I have tried with the last emf.compare code from CVS, and it doesn't
>> work neither.
>>
>> Cheers,
>> Adolfo.
>>
>> Adolfo Sánchez-Barbudo Herrera escribió:
>>> Hi guys,
>>>
>>> I was wondering about the use of the EMF Compare API, because I have
>>> encountered some problems with it.
>>>
>>> I have simply coded an action to compare two EObjects, and to open an
>>> editor with the differences.
>>>
>>> Having the case that I have 2 identical models, if I run the action
>>> between the 2 root eObjects of both models, all works fine as
>>> expected, with 0 differences in the compare editor. However if I try
>>> to compare the two same children of the root eObjects in both models,
>>> the compare editor is opened with 1 difference. Besides, if I explore
>>> the differences, a NPE is thrown.
>>>
>>> I'm not sure if it's a bug, or I'm not correctly using the API.
>>>
>>>
>>> This is way I'm using the EMF Compare API:
>>>
>>> ...
>>> // Computing the match
>>> HashMap<String, Object> options = new HashMap<String, Object>();
>>> options.put(MatchOptions.OPTION_IGNORE_XMI_ID, Boolean.TRUE);
>>> options.put(MatchOptions.OPTION_PROGRESS_MONITOR, monitor);
>>> MatchModel match = MatchService.doContentMatch(jobEObject1,
>>> jobEObject2, options);
>>>
>>> // Computing differences
>>> DiffModel diff = DiffService.doDiff(match, false);
>>>
>>> // We create the snapshot
>>> ModelInputSnapshot snapshot =
>>> DiffFactory.eINSTANCE.createModelInputSnapshot();
>>> snapshot.setDiff(diff);
>>> snapshot.setMatch(match);
>>>
>>> // We open the Editor.
>>> ModelCompareEditorInput editorInput = new
>>> ModelCompareEditorInput(snapshot);
>>> CompareUI.openCompareEditorOnPage(editorInput, page);
>>> ...
>>>
>>> Below, The NPE thrown, while exploring the unexpected difference in
>>> the editor.
>>>
>>> Cheers,
>>> Adolfo.
>>>
>>> java.lang.NullPointerException
>>> at
>>> org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:340)
>>>
>>> at
>>> org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:277)
>>>
>>> at
>>> org.eclipse.emf.compare.util.AdapterUtils.adapt(AdapterUtils .java:55)
>>> at
>>> org.eclipse.emf.compare.util.AdapterUtils.getItemProviderTex t(AdapterUtils.java:110)
>>>
>>> at
>>> org.eclipse.emf.compare.diff.provider.MoveModelElementItemPr ovider.getText(MoveModelElementItemProvider.java:110)
>>>
>>> at
>>> org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider .getText(AdapterFactoryLabelProvider.java:374)
>>>
>>> at
>>> org.eclipse.emf.compare.ui.viewer.structure.ModelStructureMe rgeViewer$ModelStructureLabelProvider.getText(ModelStructure MergeViewer.java:333)
>>>
>>> at
>>> org.eclipse.jface.viewers.WrappedViewerLabelProvider.getText (WrappedViewerLabelProvider.java:108)
>>>
>>> at
>>> org.eclipse.jface.viewers.WrappedViewerLabelProvider.update( WrappedViewerLabelProvider.java:164)
>>>
>>> at
>>> org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn. java:145)
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:932)
>>>
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeR unnable.run(AbstractTreeViewer.java:102)
>>>
>>> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
>>> at org.eclipse.core.runtime.Platform.run(Platform.java:880)
>>> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
>>> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:1012)
>>>
>>> at
>>> org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRun nable.run(StructuredViewer.java:466)
>>>
>>> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
>>> at org.eclipse.core.runtime.Platform.run(Platform.java:880)
>>> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
>>> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
>>> at
>>> org.eclipse.jface.viewers.StructuredViewer.updateItem(Struct uredViewer.java:2041)
>>>
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem( AbstractTreeViewer.java:827)
>>>
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractT reeViewer.java:802)
>>>
>>> at
>>> org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator .java:70)
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer.createChildren( AbstractTreeViewer.java:776)
>>>
>>> at
>>> org.eclipse.jface.viewers.TreeViewer.createChildren(TreeView er.java:634)
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer.handleTreeExpan d(AbstractTreeViewer.java:1442)
>>>
>>> at
>>> org.eclipse.jface.viewers.TreeViewer.handleTreeExpand(TreeVi ewer.java:927)
>>>
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer$4.treeExpanded( AbstractTreeViewer.java:1453)
>>>
>>> at
>>> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:126)
>>>
>>> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027)
>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1012)
>>> at org.eclipse.swt.widgets.Tree.wmNotifyChild(Tree.java:7306)
>>> at org.eclipse.swt.widgets.Control.wmNotify(Control.java:4718)
>>> at org.eclipse.swt.widgets.Composite.wmNotify(Composite.java:17 56)
>>> at org.eclipse.swt.widgets.Control.WM_NOTIFY(Control.java:4348)
>>> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3841 )
>>> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4528 )
>>> at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native Method)
>>> at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:227 4)
>>> at org.eclipse.swt.widgets.Tree.callWindowProc(Tree.java:1529)
>>> at org.eclipse.swt.widgets.Tree.WM_LBUTTONDOWN(Tree.java:6249)
>>> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3822 )
>>> at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:5791)
>>> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4541 )
>>> at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
>>> at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:23 71)
>>> at
>>> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3420)
>>> at
>>> org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2382)
>>> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
>>> at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:21 98)
>>> at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
>>> at
>>> org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:288)
>>>
>>> at
>>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:488)
>>>
>>> at
>>> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
>>> at
>>> org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:113)
>>>
>>> at
>>> org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:193)
>>>
>>> at
>>> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication(EclipseAppLauncher.java:110)
>>>
>>> at
>>> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:79)
>>>
>>> at
>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:386)
>>>
>>> at
>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
>>>
>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>>> at java.lang.reflect.Method.invoke(Unknown Source)
>>> at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 549)
>>> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
>>> at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
>>> at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
>>>
>>>
>
Re: [EMF Compare] About MatchService API. [message #130545 is a reply to message #130531] Wed, 29 October 2008 14:55 Go to previous messageGo to next message
Laurent Goubet is currently offline Laurent GoubetFriend
Messages: 1902
Registered: July 2009
Senior Member
This is a multi-part message in MIME format.
--------------040904050207070703040901
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit

Adolfo,

Yes, that would be nice :). And I am sure not to forget about it lying
in the mails :).

Laurent Goubet
Obeo

Adolfo S
Re: [EMF Compare] About MatchService API. [message #130559 is a reply to message #130545] Wed, 29 October 2008 15:09 Go to previous messageGo to next message
Adolfo Sanchez-Barbudo Herrera is currently offline Adolfo Sanchez-Barbudo HerreraFriend
Messages: 260
Registered: July 2009
Senior Member
laurent Goubet escribió:
> Adolfo,
>
> Yes, that would be nice :). And I am sure not to forget about it lying
> in the mails :).

Hahahahaha... I just like having a track of the problems which I detect
around Eclipse's projects, and bugzilla is the a lovely place to do that :D

I have already risen the bug ->
https://bugs.eclipse.org/bugs/show_bug.cgi?id=252599 ;)

Cheers,
Adolfo.
>
> Laurent Goubet
> Obeo
>
> Adolfo Sánchez-Barbudo Herrera a écrit :
>> Ok Laurent,
>>
>> The problem occurs always (the examples I have tried), independtly the
>> model and metamodel. So I have prepared a simple example with two very
>> simple UML models.
>>
>> I think that it's an implementation bug so I'll better raise a
>> bugzilla, attaching a zip with the two simple models, and the
>> correspondent diff models generated by the comparison.
>>
>> Cheers,
>> Adolfo.
>>
>>
>> laurent Goubet escribió:
>>> Hi Adolfo,
>>>
>>> The NPE I can easily fix, but that wouldn't help with the root
>>> problem : could you send me the models you compare or the result of
>>> the comparison either here or via mail laurent (dot) goubet (at) obeo
>>> (dot) fr so that I can try and see why we detected a diff? As for the
>>> NPE, it should be fixed in the next build.
>>>
>>> Regards
>>>
>>> Laurent Goubet
>>> Obeo
>>>
>>> Adolfo Sánchez-Barbudo Herrera a écrit :
>>>> BTW,
>>>>
>>>> I have tried with the last emf.compare code from CVS, and it doesn't
>>>> work neither.
>>>>
>>>> Cheers,
>>>> Adolfo.
>>>>
>>>> Adolfo Sánchez-Barbudo Herrera escribió:
>>>>> Hi guys,
>>>>>
>>>>> I was wondering about the use of the EMF Compare API, because I
>>>>> have encountered some problems with it.
>>>>>
>>>>> I have simply coded an action to compare two EObjects, and to open
>>>>> an editor with the differences.
>>>>>
>>>>> Having the case that I have 2 identical models, if I run the action
>>>>> between the 2 root eObjects of both models, all works fine as
>>>>> expected, with 0 differences in the compare editor. However if I
>>>>> try to compare the two same children of the root eObjects in both
>>>>> models, the compare editor is opened with 1 difference. Besides, if
>>>>> I explore the differences, a NPE is thrown.
>>>>>
>>>>> I'm not sure if it's a bug, or I'm not correctly using the API.
>>>>>
>>>>>
>>>>> This is way I'm using the EMF Compare API:
>>>>>
>>>>> ...
>>>>> // Computing the match
>>>>> HashMap<String, Object> options = new HashMap<String, Object>();
>>>>> options.put(MatchOptions.OPTION_IGNORE_XMI_ID, Boolean.TRUE);
>>>>> options.put(MatchOptions.OPTION_PROGRESS_MONITOR, monitor);
>>>>> MatchModel match = MatchService.doContentMatch(jobEObject1,
>>>>> jobEObject2, options);
>>>>>
>>>>> // Computing differences
>>>>> DiffModel diff = DiffService.doDiff(match, false);
>>>>>
>>>>> // We create the snapshot
>>>>> ModelInputSnapshot snapshot =
>>>>> DiffFactory.eINSTANCE.createModelInputSnapshot();
>>>>> snapshot.setDiff(diff);
>>>>> snapshot.setMatch(match);
>>>>>
>>>>> // We open the Editor.
>>>>> ModelCompareEditorInput editorInput = new
>>>>> ModelCompareEditorInput(snapshot);
>>>>> CompareUI.openCompareEditorOnPage(editorInput, page);
>>>>> ...
>>>>>
>>>>> Below, The NPE thrown, while exploring the unexpected difference in
>>>>> the editor.
>>>>>
>>>>> Cheers,
>>>>> Adolfo.
>>>>>
>>>>> java.lang.NullPointerException
>>>>> at
>>>>> org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:340)
>>>>>
>>>>> at
>>>>> org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:277)
>>>>>
>>>>> at
>>>>> org.eclipse.emf.compare.util.AdapterUtils.adapt(AdapterUtils .java:55)
>>>>> at
>>>>> org.eclipse.emf.compare.util.AdapterUtils.getItemProviderTex t(AdapterUtils.java:110)
>>>>>
>>>>> at
>>>>> org.eclipse.emf.compare.diff.provider.MoveModelElementItemPr ovider.getText(MoveModelElementItemProvider.java:110)
>>>>>
>>>>> at
>>>>> org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider .getText(AdapterFactoryLabelProvider.java:374)
>>>>>
>>>>> at
>>>>> org.eclipse.emf.compare.ui.viewer.structure.ModelStructureMe rgeViewer$ModelStructureLabelProvider.getText(ModelStructure MergeViewer.java:333)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.WrappedViewerLabelProvider.getText (WrappedViewerLabelProvider.java:108)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.WrappedViewerLabelProvider.update( WrappedViewerLabelProvider.java:164)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn. java:145)
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:932)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeR unnable.run(AbstractTreeViewer.java:102)
>>>>>
>>>>> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
>>>>> at org.eclipse.core.runtime.Platform.run(Platform.java:880)
>>>>> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
>>>>> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:1012)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRun nable.run(StructuredViewer.java:466)
>>>>>
>>>>> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
>>>>> at org.eclipse.core.runtime.Platform.run(Platform.java:880)
>>>>> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
>>>>> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
>>>>> at
>>>>> org.eclipse.jface.viewers.StructuredViewer.updateItem(Struct uredViewer.java:2041)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem( AbstractTreeViewer.java:827)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractT reeViewer.java:802)
>>>>>
>>>>> at
>>>>> org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator .java:70)
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer.createChildren( AbstractTreeViewer.java:776)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.TreeViewer.createChildren(TreeView er.java:634)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer.handleTreeExpan d(AbstractTreeViewer.java:1442)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.TreeViewer.handleTreeExpand(TreeVi ewer.java:927)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer$4.treeExpanded( AbstractTreeViewer.java:1453)
>>>>>
>>>>> at
>>>>> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:126)
>>>>>
>>>>> at
>>>>> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
>>>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
>>>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027)
>>>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1012)
>>>>> at org.eclipse.swt.widgets.Tree.wmNotifyChild(Tree.java:7306)
>>>>> at org.eclipse.swt.widgets.Control.wmNotify(Control.java:4718)
>>>>> at org.eclipse.swt.widgets.Composite.wmNotify(Composite.java:17 56)
>>>>> at org.eclipse.swt.widgets.Control.WM_NOTIFY(Control.java:4348)
>>>>> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3841 )
>>>>> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4528 )
>>>>> at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native
>>>>> Method)
>>>>> at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:227 4)
>>>>> at org.eclipse.swt.widgets.Tree.callWindowProc(Tree.java:1529)
>>>>> at org.eclipse.swt.widgets.Tree.WM_LBUTTONDOWN(Tree.java:6249)
>>>>> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3822 )
>>>>> at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:5791)
>>>>> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4541 )
>>>>> at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native
>>>>> Method)
>>>>> at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:23 71)
>>>>> at
>>>>> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3420)
>>>>> at
>>>>> org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2382)
>>>>> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
>>>>> at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:21 98)
>>>>> at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
>>>>> at
>>>>> org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:288)
>>>>>
>>>>> at
>>>>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:488)
>>>>>
>>>>> at
>>>>> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
>>>>> at
>>>>> org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:113)
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:193)
>>>>>
>>>>> at
>>>>> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication(EclipseAppLauncher.java:110)
>>>>>
>>>>> at
>>>>> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:79)
>>>>>
>>>>> at
>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:386)
>>>>>
>>>>> at
>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
>>>>>
>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>>>>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>>>>> at java.lang.reflect.Method.invoke(Unknown Source)
>>>>> at
>>>>> org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 549)
>>>>> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
>>>>> at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
>>>>> at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
>>>>>
>>>>>
>>>
>
Re: [EMF Compare] About MatchService API. [message #130574 is a reply to message #130559] Wed, 29 October 2008 15:13 Go to previous message
Laurent Goubet is currently offline Laurent GoubetFriend
Messages: 1902
Registered: July 2009
Senior Member
This is a multi-part message in MIME format.
--------------010601010609090702010602
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit

Adolfo,

Bugzilla is indeed nice to keep track of all bugs ^^. We'll look into
this ASAP.

Laurent Goubet
Obeo

Adolfo S
Re: [EMF Compare] About MatchService API. [message #620372 is a reply to message #130478] Tue, 28 October 2008 18:33 Go to previous message
Adolfo Sanchez-Barbudo Herrera is currently offline Adolfo Sanchez-Barbudo HerreraFriend
Messages: 260
Registered: July 2009
Senior Member
BTW,

I have tried with the last emf.compare code from CVS, and it doesn't
work neither.

Cheers,
Adolfo.

Adolfo Sánchez-Barbudo Herrera escribió:
> Hi guys,
>
> I was wondering about the use of the EMF Compare API, because I have
> encountered some problems with it.
>
> I have simply coded an action to compare two EObjects, and to open an
> editor with the differences.
>
> Having the case that I have 2 identical models, if I run the action
> between the 2 root eObjects of both models, all works fine as expected,
> with 0 differences in the compare editor. However if I try to compare
> the two same children of the root eObjects in both models, the compare
> editor is opened with 1 difference. Besides, if I explore the
> differences, a NPE is thrown.
>
> I'm not sure if it's a bug, or I'm not correctly using the API.
>
>
> This is way I'm using the EMF Compare API:
>
> ...
> // Computing the match
> HashMap<String, Object> options = new HashMap<String, Object>();
> options.put(MatchOptions.OPTION_IGNORE_XMI_ID, Boolean.TRUE);
> options.put(MatchOptions.OPTION_PROGRESS_MONITOR, monitor);
> MatchModel match = MatchService.doContentMatch(jobEObject1, jobEObject2,
> options);
>
> // Computing differences
> DiffModel diff = DiffService.doDiff(match, false);
>
> // We create the snapshot
> ModelInputSnapshot snapshot =
> DiffFactory.eINSTANCE.createModelInputSnapshot();
> snapshot.setDiff(diff);
> snapshot.setMatch(match);
>
> // We open the Editor.
> ModelCompareEditorInput editorInput = new
> ModelCompareEditorInput(snapshot);
> CompareUI.openCompareEditorOnPage(editorInput, page);
> ...
>
> Below, The NPE thrown, while exploring the unexpected difference in the
> editor.
>
> Cheers,
> Adolfo.
>
> java.lang.NullPointerException
> at
> org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:340)
>
> at
> org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:277)
>
> at
> org.eclipse.emf.compare.util.AdapterUtils.adapt(AdapterUtils .java:55)
> at
> org.eclipse.emf.compare.util.AdapterUtils.getItemProviderTex t(AdapterUtils.java:110)
>
> at
> org.eclipse.emf.compare.diff.provider.MoveModelElementItemPr ovider.getText(MoveModelElementItemProvider.java:110)
>
> at
> org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider .getText(AdapterFactoryLabelProvider.java:374)
>
> at
> org.eclipse.emf.compare.ui.viewer.structure.ModelStructureMe rgeViewer$ModelStructureLabelProvider.getText(ModelStructure MergeViewer.java:333)
>
> at
> org.eclipse.jface.viewers.WrappedViewerLabelProvider.getText (WrappedViewerLabelProvider.java:108)
>
> at
> org.eclipse.jface.viewers.WrappedViewerLabelProvider.update( WrappedViewerLabelProvider.java:164)
>
> at
> org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn. java:145)
> at
> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:932)
>
> at
> org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeR unnable.run(AbstractTreeViewer.java:102)
>
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
> at org.eclipse.core.runtime.Platform.run(Platform.java:880)
> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
> at
> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:1012)
>
> at
> org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRun nable.run(StructuredViewer.java:466)
>
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
> at org.eclipse.core.runtime.Platform.run(Platform.java:880)
> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
> at
> org.eclipse.jface.viewers.StructuredViewer.updateItem(Struct uredViewer.java:2041)
>
> at
> org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem( AbstractTreeViewer.java:827)
>
> at
> org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractT reeViewer.java:802)
>
> at
> org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator .java:70)
> at
> org.eclipse.jface.viewers.AbstractTreeViewer.createChildren( AbstractTreeViewer.java:776)
>
> at
> org.eclipse.jface.viewers.TreeViewer.createChildren(TreeView er.java:634)
> at
> org.eclipse.jface.viewers.AbstractTreeViewer.handleTreeExpan d(AbstractTreeViewer.java:1442)
>
> at
> org.eclipse.jface.viewers.TreeViewer.handleTreeExpand(TreeVi ewer.java:927)
> at
> org.eclipse.jface.viewers.AbstractTreeViewer$4.treeExpanded( AbstractTreeViewer.java:1453)
>
> at
> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:126)
> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1012)
> at org.eclipse.swt.widgets.Tree.wmNotifyChild(Tree.java:7306)
> at org.eclipse.swt.widgets.Control.wmNotify(Control.java:4718)
> at org.eclipse.swt.widgets.Composite.wmNotify(Composite.java:17 56)
> at org.eclipse.swt.widgets.Control.WM_NOTIFY(Control.java:4348)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3841 )
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4528 )
> at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native Method)
> at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:227 4)
> at org.eclipse.swt.widgets.Tree.callWindowProc(Tree.java:1529)
> at org.eclipse.swt.widgets.Tree.WM_LBUTTONDOWN(Tree.java:6249)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3822 )
> at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:5791)
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4541 )
> at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
> at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:23 71)
> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3420)
> at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2382)
> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
> at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:21 98)
> at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
> at
> org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:288)
>
> at
> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:488)
> at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
> at
> org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:113)
>
> at
> org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:193)
>
> at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication(EclipseAppLauncher.java:110)
>
> at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:79)
>
> at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:386)
>
> at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
>
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 549)
> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
> at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
> at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
>
>
Re: [EMF Compare] About MatchService API. [message #620374 is a reply to message #130491] Wed, 29 October 2008 13:24 Go to previous message
Laurent Goubet is currently offline Laurent GoubetFriend
Messages: 1902
Registered: July 2009
Senior Member
This is a multi-part message in MIME format.
--------------080402060001020800040808
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit

Hi Adolfo,

The NPE I can easily fix, but that wouldn't help with the root problem :
could you send me the models you compare or the result of the comparison
either here or via mail laurent (dot) goubet (at) obeo (dot) fr so that
I can try and see why we detected a diff? As for the NPE, it should be
fixed in the next build.

Regards

Laurent Goubet
Obeo

Adolfo S
Re: [EMF Compare] About MatchService API. [message #620375 is a reply to message #130518] Wed, 29 October 2008 14:43 Go to previous message
Adolfo Sanchez-Barbudo Herrera is currently offline Adolfo Sanchez-Barbudo HerreraFriend
Messages: 260
Registered: July 2009
Senior Member
Ok Laurent,

The problem occurs always (the examples I have tried), independtly the
model and metamodel. So I have prepared a simple example with two very
simple UML models.

I think that it's an implementation bug so I'll better raise a bugzilla,
attaching a zip with the two simple models, and the correspondent diff
models generated by the comparison.

Cheers,
Adolfo.


laurent Goubet escribió:
> Hi Adolfo,
>
> The NPE I can easily fix, but that wouldn't help with the root problem :
> could you send me the models you compare or the result of the comparison
> either here or via mail laurent (dot) goubet (at) obeo (dot) fr so that
> I can try and see why we detected a diff? As for the NPE, it should be
> fixed in the next build.
>
> Regards
>
> Laurent Goubet
> Obeo
>
> Adolfo Sánchez-Barbudo Herrera a écrit :
>> BTW,
>>
>> I have tried with the last emf.compare code from CVS, and it doesn't
>> work neither.
>>
>> Cheers,
>> Adolfo.
>>
>> Adolfo Sánchez-Barbudo Herrera escribió:
>>> Hi guys,
>>>
>>> I was wondering about the use of the EMF Compare API, because I have
>>> encountered some problems with it.
>>>
>>> I have simply coded an action to compare two EObjects, and to open an
>>> editor with the differences.
>>>
>>> Having the case that I have 2 identical models, if I run the action
>>> between the 2 root eObjects of both models, all works fine as
>>> expected, with 0 differences in the compare editor. However if I try
>>> to compare the two same children of the root eObjects in both models,
>>> the compare editor is opened with 1 difference. Besides, if I explore
>>> the differences, a NPE is thrown.
>>>
>>> I'm not sure if it's a bug, or I'm not correctly using the API.
>>>
>>>
>>> This is way I'm using the EMF Compare API:
>>>
>>> ...
>>> // Computing the match
>>> HashMap<String, Object> options = new HashMap<String, Object>();
>>> options.put(MatchOptions.OPTION_IGNORE_XMI_ID, Boolean.TRUE);
>>> options.put(MatchOptions.OPTION_PROGRESS_MONITOR, monitor);
>>> MatchModel match = MatchService.doContentMatch(jobEObject1,
>>> jobEObject2, options);
>>>
>>> // Computing differences
>>> DiffModel diff = DiffService.doDiff(match, false);
>>>
>>> // We create the snapshot
>>> ModelInputSnapshot snapshot =
>>> DiffFactory.eINSTANCE.createModelInputSnapshot();
>>> snapshot.setDiff(diff);
>>> snapshot.setMatch(match);
>>>
>>> // We open the Editor.
>>> ModelCompareEditorInput editorInput = new
>>> ModelCompareEditorInput(snapshot);
>>> CompareUI.openCompareEditorOnPage(editorInput, page);
>>> ...
>>>
>>> Below, The NPE thrown, while exploring the unexpected difference in
>>> the editor.
>>>
>>> Cheers,
>>> Adolfo.
>>>
>>> java.lang.NullPointerException
>>> at
>>> org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:340)
>>>
>>> at
>>> org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:277)
>>>
>>> at
>>> org.eclipse.emf.compare.util.AdapterUtils.adapt(AdapterUtils .java:55)
>>> at
>>> org.eclipse.emf.compare.util.AdapterUtils.getItemProviderTex t(AdapterUtils.java:110)
>>>
>>> at
>>> org.eclipse.emf.compare.diff.provider.MoveModelElementItemPr ovider.getText(MoveModelElementItemProvider.java:110)
>>>
>>> at
>>> org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider .getText(AdapterFactoryLabelProvider.java:374)
>>>
>>> at
>>> org.eclipse.emf.compare.ui.viewer.structure.ModelStructureMe rgeViewer$ModelStructureLabelProvider.getText(ModelStructure MergeViewer.java:333)
>>>
>>> at
>>> org.eclipse.jface.viewers.WrappedViewerLabelProvider.getText (WrappedViewerLabelProvider.java:108)
>>>
>>> at
>>> org.eclipse.jface.viewers.WrappedViewerLabelProvider.update( WrappedViewerLabelProvider.java:164)
>>>
>>> at
>>> org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn. java:145)
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:932)
>>>
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeR unnable.run(AbstractTreeViewer.java:102)
>>>
>>> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
>>> at org.eclipse.core.runtime.Platform.run(Platform.java:880)
>>> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
>>> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:1012)
>>>
>>> at
>>> org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRun nable.run(StructuredViewer.java:466)
>>>
>>> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
>>> at org.eclipse.core.runtime.Platform.run(Platform.java:880)
>>> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
>>> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
>>> at
>>> org.eclipse.jface.viewers.StructuredViewer.updateItem(Struct uredViewer.java:2041)
>>>
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem( AbstractTreeViewer.java:827)
>>>
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractT reeViewer.java:802)
>>>
>>> at
>>> org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator .java:70)
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer.createChildren( AbstractTreeViewer.java:776)
>>>
>>> at
>>> org.eclipse.jface.viewers.TreeViewer.createChildren(TreeView er.java:634)
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer.handleTreeExpan d(AbstractTreeViewer.java:1442)
>>>
>>> at
>>> org.eclipse.jface.viewers.TreeViewer.handleTreeExpand(TreeVi ewer.java:927)
>>>
>>> at
>>> org.eclipse.jface.viewers.AbstractTreeViewer$4.treeExpanded( AbstractTreeViewer.java:1453)
>>>
>>> at
>>> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:126)
>>>
>>> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027)
>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1012)
>>> at org.eclipse.swt.widgets.Tree.wmNotifyChild(Tree.java:7306)
>>> at org.eclipse.swt.widgets.Control.wmNotify(Control.java:4718)
>>> at org.eclipse.swt.widgets.Composite.wmNotify(Composite.java:17 56)
>>> at org.eclipse.swt.widgets.Control.WM_NOTIFY(Control.java:4348)
>>> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3841 )
>>> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4528 )
>>> at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native Method)
>>> at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:227 4)
>>> at org.eclipse.swt.widgets.Tree.callWindowProc(Tree.java:1529)
>>> at org.eclipse.swt.widgets.Tree.WM_LBUTTONDOWN(Tree.java:6249)
>>> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3822 )
>>> at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:5791)
>>> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4541 )
>>> at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
>>> at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:23 71)
>>> at
>>> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3420)
>>> at
>>> org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2382)
>>> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
>>> at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:21 98)
>>> at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
>>> at
>>> org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:288)
>>>
>>> at
>>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:488)
>>>
>>> at
>>> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
>>> at
>>> org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:113)
>>>
>>> at
>>> org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:193)
>>>
>>> at
>>> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication(EclipseAppLauncher.java:110)
>>>
>>> at
>>> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:79)
>>>
>>> at
>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:386)
>>>
>>> at
>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
>>>
>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>>> at java.lang.reflect.Method.invoke(Unknown Source)
>>> at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 549)
>>> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
>>> at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
>>> at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
>>>
>>>
>
Re: [EMF Compare] About MatchService API. [message #620376 is a reply to message #130531] Wed, 29 October 2008 14:55 Go to previous message
Laurent Goubet is currently offline Laurent GoubetFriend
Messages: 1902
Registered: July 2009
Senior Member
This is a multi-part message in MIME format.
--------------040904050207070703040901
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit

Adolfo,

Yes, that would be nice :). And I am sure not to forget about it lying
in the mails :).

Laurent Goubet
Obeo

Adolfo S
Re: [EMF Compare] About MatchService API. [message #620377 is a reply to message #130545] Wed, 29 October 2008 15:09 Go to previous message
Adolfo Sanchez-Barbudo Herrera is currently offline Adolfo Sanchez-Barbudo HerreraFriend
Messages: 260
Registered: July 2009
Senior Member
laurent Goubet escribió:
> Adolfo,
>
> Yes, that would be nice :). And I am sure not to forget about it lying
> in the mails :).

Hahahahaha... I just like having a track of the problems which I detect
around Eclipse's projects, and bugzilla is the a lovely place to do that :D

I have already risen the bug ->
https://bugs.eclipse.org/bugs/show_bug.cgi?id=252599 ;)

Cheers,
Adolfo.
>
> Laurent Goubet
> Obeo
>
> Adolfo Sánchez-Barbudo Herrera a écrit :
>> Ok Laurent,
>>
>> The problem occurs always (the examples I have tried), independtly the
>> model and metamodel. So I have prepared a simple example with two very
>> simple UML models.
>>
>> I think that it's an implementation bug so I'll better raise a
>> bugzilla, attaching a zip with the two simple models, and the
>> correspondent diff models generated by the comparison.
>>
>> Cheers,
>> Adolfo.
>>
>>
>> laurent Goubet escribió:
>>> Hi Adolfo,
>>>
>>> The NPE I can easily fix, but that wouldn't help with the root
>>> problem : could you send me the models you compare or the result of
>>> the comparison either here or via mail laurent (dot) goubet (at) obeo
>>> (dot) fr so that I can try and see why we detected a diff? As for the
>>> NPE, it should be fixed in the next build.
>>>
>>> Regards
>>>
>>> Laurent Goubet
>>> Obeo
>>>
>>> Adolfo Sánchez-Barbudo Herrera a écrit :
>>>> BTW,
>>>>
>>>> I have tried with the last emf.compare code from CVS, and it doesn't
>>>> work neither.
>>>>
>>>> Cheers,
>>>> Adolfo.
>>>>
>>>> Adolfo Sánchez-Barbudo Herrera escribió:
>>>>> Hi guys,
>>>>>
>>>>> I was wondering about the use of the EMF Compare API, because I
>>>>> have encountered some problems with it.
>>>>>
>>>>> I have simply coded an action to compare two EObjects, and to open
>>>>> an editor with the differences.
>>>>>
>>>>> Having the case that I have 2 identical models, if I run the action
>>>>> between the 2 root eObjects of both models, all works fine as
>>>>> expected, with 0 differences in the compare editor. However if I
>>>>> try to compare the two same children of the root eObjects in both
>>>>> models, the compare editor is opened with 1 difference. Besides, if
>>>>> I explore the differences, a NPE is thrown.
>>>>>
>>>>> I'm not sure if it's a bug, or I'm not correctly using the API.
>>>>>
>>>>>
>>>>> This is way I'm using the EMF Compare API:
>>>>>
>>>>> ...
>>>>> // Computing the match
>>>>> HashMap<String, Object> options = new HashMap<String, Object>();
>>>>> options.put(MatchOptions.OPTION_IGNORE_XMI_ID, Boolean.TRUE);
>>>>> options.put(MatchOptions.OPTION_PROGRESS_MONITOR, monitor);
>>>>> MatchModel match = MatchService.doContentMatch(jobEObject1,
>>>>> jobEObject2, options);
>>>>>
>>>>> // Computing differences
>>>>> DiffModel diff = DiffService.doDiff(match, false);
>>>>>
>>>>> // We create the snapshot
>>>>> ModelInputSnapshot snapshot =
>>>>> DiffFactory.eINSTANCE.createModelInputSnapshot();
>>>>> snapshot.setDiff(diff);
>>>>> snapshot.setMatch(match);
>>>>>
>>>>> // We open the Editor.
>>>>> ModelCompareEditorInput editorInput = new
>>>>> ModelCompareEditorInput(snapshot);
>>>>> CompareUI.openCompareEditorOnPage(editorInput, page);
>>>>> ...
>>>>>
>>>>> Below, The NPE thrown, while exploring the unexpected difference in
>>>>> the editor.
>>>>>
>>>>> Cheers,
>>>>> Adolfo.
>>>>>
>>>>> java.lang.NullPointerException
>>>>> at
>>>>> org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:340)
>>>>>
>>>>> at
>>>>> org.eclipse.emf.edit.provider.ComposedAdapterFactory.adapt(C omposedAdapterFactory.java:277)
>>>>>
>>>>> at
>>>>> org.eclipse.emf.compare.util.AdapterUtils.adapt(AdapterUtils .java:55)
>>>>> at
>>>>> org.eclipse.emf.compare.util.AdapterUtils.getItemProviderTex t(AdapterUtils.java:110)
>>>>>
>>>>> at
>>>>> org.eclipse.emf.compare.diff.provider.MoveModelElementItemPr ovider.getText(MoveModelElementItemProvider.java:110)
>>>>>
>>>>> at
>>>>> org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider .getText(AdapterFactoryLabelProvider.java:374)
>>>>>
>>>>> at
>>>>> org.eclipse.emf.compare.ui.viewer.structure.ModelStructureMe rgeViewer$ModelStructureLabelProvider.getText(ModelStructure MergeViewer.java:333)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.WrappedViewerLabelProvider.getText (WrappedViewerLabelProvider.java:108)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.WrappedViewerLabelProvider.update( WrappedViewerLabelProvider.java:164)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn. java:145)
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:932)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeR unnable.run(AbstractTreeViewer.java:102)
>>>>>
>>>>> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
>>>>> at org.eclipse.core.runtime.Platform.run(Platform.java:880)
>>>>> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
>>>>> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(Ab stractTreeViewer.java:1012)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRun nable.run(StructuredViewer.java:466)
>>>>>
>>>>> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
>>>>> at org.eclipse.core.runtime.Platform.run(Platform.java:880)
>>>>> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
>>>>> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
>>>>> at
>>>>> org.eclipse.jface.viewers.StructuredViewer.updateItem(Struct uredViewer.java:2041)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem( AbstractTreeViewer.java:827)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractT reeViewer.java:802)
>>>>>
>>>>> at
>>>>> org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator .java:70)
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer.createChildren( AbstractTreeViewer.java:776)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.TreeViewer.createChildren(TreeView er.java:634)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer.handleTreeExpan d(AbstractTreeViewer.java:1442)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.TreeViewer.handleTreeExpand(TreeVi ewer.java:927)
>>>>>
>>>>> at
>>>>> org.eclipse.jface.viewers.AbstractTreeViewer$4.treeExpanded( AbstractTreeViewer.java:1453)
>>>>>
>>>>> at
>>>>> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:126)
>>>>>
>>>>> at
>>>>> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
>>>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
>>>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027)
>>>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1012)
>>>>> at org.eclipse.swt.widgets.Tree.wmNotifyChild(Tree.java:7306)
>>>>> at org.eclipse.swt.widgets.Control.wmNotify(Control.java:4718)
>>>>> at org.eclipse.swt.widgets.Composite.wmNotify(Composite.java:17 56)
>>>>> at org.eclipse.swt.widgets.Control.WM_NOTIFY(Control.java:4348)
>>>>> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3841 )
>>>>> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4528 )
>>>>> at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native
>>>>> Method)
>>>>> at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:227 4)
>>>>> at org.eclipse.swt.widgets.Tree.callWindowProc(Tree.java:1529)
>>>>> at org.eclipse.swt.widgets.Tree.WM_LBUTTONDOWN(Tree.java:6249)
>>>>> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3822 )
>>>>> at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:5791)
>>>>> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4541 )
>>>>> at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native
>>>>> Method)
>>>>> at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:23 71)
>>>>> at
>>>>> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3420)
>>>>> at
>>>>> org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2382)
>>>>> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
>>>>> at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:21 98)
>>>>> at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
>>>>> at
>>>>> org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:288)
>>>>>
>>>>> at
>>>>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:488)
>>>>>
>>>>> at
>>>>> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
>>>>> at
>>>>> org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:113)
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:193)
>>>>>
>>>>> at
>>>>> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication(EclipseAppLauncher.java:110)
>>>>>
>>>>> at
>>>>> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:79)
>>>>>
>>>>> at
>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:386)
>>>>>
>>>>> at
>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
>>>>>
>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>>>>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>>>>> at java.lang.reflect.Method.invoke(Unknown Source)
>>>>> at
>>>>> org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 549)
>>>>> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
>>>>> at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
>>>>> at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
>>>>>
>>>>>
>>>
>
Re: [EMF Compare] About MatchService API. [message #620378 is a reply to message #130559] Wed, 29 October 2008 15:13 Go to previous message
Laurent Goubet is currently offline Laurent GoubetFriend
Messages: 1902
Registered: July 2009
Senior Member
This is a multi-part message in MIME format.
--------------010601010609090702010602
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit

Adolfo,

Bugzilla is indeed nice to keep track of all bugs ^^. We'll look into
this ASAP.

Laurent Goubet
Obeo

Adolfo S
Previous Topic:Re: How to effectively work with packages in ECORE
Next Topic:[Ecore Tools]: EAnnotation link
Goto Forum:
  


Current Time: Thu Mar 28 23:04:29 GMT 2024

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

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

Back to the top