Home » Eclipse Projects » Eclipse 4 » [E4AP] Error on loading workbench.xmi(duplicate xmi:id for different parts)
[E4AP] Error on loading workbench.xmi [message #911396] |
Tue, 11 September 2012 14:14 |
Christoph Keimel Messages: 482 Registered: December 2010 Location: Germany |
Senior Member |
|
|
Hello,
I have a product with a basic application model. Other plug-ins are contributing to this model with fragments. On the first start of the application everything works fine. On the second start (even if I immediately close the window) I get the following error:
[2012-09-11 15:14:15,401] ERROR org.eclipse.equinox.logger Unable to load resource file:/D:/GosaEntwicklung/runtime-etisch_develop_autologin.product/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi
org.eclipse.emf.ecore.resource.impl.ResourceSetImpl$1DiagnosticWrappedException: org.eclipse.emf.ecore.xmi.IllegalValueException: Value 'org.eclipse.e4.ui.model.application.ui.basic.impl.PartImpl@13e6f83 (elementId: de.emsw.gosa.part.eingangsfach.live, tags: [NoClose], contributorURI: platform:/plugin/de.emsw.gosa.contrib.eingangsfach) (widget: null, renderer: null, toBeRendered: true, onTop: false, visible: true, containerData: null, accessibilityPhrase: null) (contributionURI: bundleclass://de.emsw.gosa.contrib.eingangsfach/de.emsw.gosa.contrib.eingangsfach.live.EingangsfachLivePart, object: null, context: null, variables: null, label: Eingangsfach, iconURI: platform:/plugin/de.emsw.gosa.contrib.eingangsfach/icons/eingangsfach.png, tooltip: null, dirty: false, closeable: false, description: null)' is not legal. (file:/D:/GosaEntwicklung/runtime-etisch_develop_autologin.product/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi, 81, 237)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.handleDemandLoadException(ResourceSetImpl.java:319)
...
Caused by: org.eclipse.emf.ecore.xmi.IllegalValueException: Value 'org.eclipse.e4.ui.model.application.ui.basic.impl.PartImpl@13e6f83 (elementId: de.emsw.gosa.part.eingangsfach.live, tags: [NoClose], contributorURI: platform:/plugin/de.emsw.gosa.contrib.eingangsfach) (widget: null, renderer: null, toBeRendered: true, onTop: false, visible: true, containerData: null, accessibilityPhrase: null) (contributionURI: bundleclass://de.emsw.gosa.contrib.eingangsfach/de.emsw.gosa.contrib.eingangsfach.live.EingangsfachLivePart, object: null, context: null, variables: null, label: Eingangsfach, iconURI: platform:/plugin/de.emsw.gosa.contrib.eingangsfach/icons/eingangsfach.png, tooltip: null, dirty: false, closeable: false, description: null)' is not legal. (file:/D:/GosaEntwicklung/runtime-etisch_develop_autologin.product/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi, 81, 237)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.setFeatureValue(XMLHandler.java:2657)
...
Caused by: java.lang.IllegalArgumentException: The selected element org.eclipse.e4.ui.model.application.ui.basic.impl.PartImpl@9aca82 (elementId: de.emsw.gosa.part.eingangsfach.live, tags: [NoClose], contributorURI: platform:/plugin/de.emsw.gosa.contrib.eingangsfach) (widget: null, renderer: null, toBeRendered: true, onTop: false, visible: true, containerData: null, accessibilityPhrase: null) (contributionURI: bundleclass://de.emsw.gosa.contrib.eingangsfach/de.emsw.gosa.contrib.eingangsfach.live.EingangsfachLivePart, object: null, context: null, variables: null, label: Eingangsfach, iconURI: platform:/plugin/de.emsw.gosa.contrib.eingangsfach/icons/eingangsfach.png, tooltip: null, dirty: false, closeable: false, description: null) is not a child of this container
at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElement(ElementContainerImpl.java:158)
...
This leads to the orginal model being loaded, and user changes to the model are therefore lost.
This seems to be the relevant part of the workbench.xmi:
<application:Application xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:advanced="http://www.eclipse.org/ui/2010/UIModel/application/ui/advanced" xmlns:application="http://www.eclipse.org/ui/2010/UIModel/application" xmlns:basic="http://www.eclipse.org/ui/2010/UIModel/application/ui/basic" xmlns:menu="http://www.eclipse.org/ui/2010/UIModel/application/ui/menu" xmi:id="_KeraEfwXEeGu-tV2gbH-ZA" elementId="de.emsw.gosa.application" contributorURI="platform:/plugin/de.emsw.gosa.product.etisch" selectedElement="_KesBIPwXEeGu-tV2gbH-ZA">
<children xsi:type="basic:TrimmedWindow" xmi:id="_KesBIPwXEeGu-tV2gbH-ZA" elementId="de.emsw.gosa.window.main" contributorURI="platform:/plugin/de.emsw.gosa.product.etisch" selectedElement="_KesBIfwXEeGu-tV2gbH-ZA" label="eSchreibtisch 1.7.1 Beta (beck@emxp64ck.emsw.local:1099)" iconURI="platform:/plugin/de.emsw.gosa.product.etisch/icons/app/app_etisch.png" x="0" y="0" width="1200" height="800">
<tags>topLevel</tags>
<children xsi:type="advanced:PerspectiveStack" xmi:id="_KesBIfwXEeGu-tV2gbH-ZA" elementId="perspectives" contributorURI="platform:/plugin/de.emsw.gosa.product.etisch" selectedElement="_KesBIvwXEeGu-tV2gbH-ZA">
<children xsi:type="advanced:Perspective" xmi:id="_KesBIvwXEeGu-tV2gbH-ZA" elementId="persp.etisch" contributorURI="platform:/plugin/de.emsw.gosa.product.etisch" selectedElement="_KesBI_wXEeGu-tV2gbH-ZA" label="Elektronischer Schreibtisch" iconURI="platform:/plugin/de.emsw.gosa.product.etisch/icons/persp_etisch.png">
<children xsi:type="basic:PartSashContainer" xmi:id="_KesBI_wXEeGu-tV2gbH-ZA" elementId="sash.main" contributorURI="platform:/plugin/de.emsw.gosa.product.etisch" selectedElement="_KesBJPwXEeGu-tV2gbH-ZA" horizontal="true">
<children xsi:type="basic:PartSashContainer" xmi:id="_KesBJPwXEeGu-tV2gbH-ZA" elementId="sash.left" contributorURI="platform:/plugin/de.emsw.gosa.product.etisch" containerData="60" selectedElement="_KesBJfwXEeGu-tV2gbH-ZA">
<children xsi:type="basic:PartStack" xmi:id="_KesBJfwXEeGu-tV2gbH-ZA" elementId="stack.left.top" contributorURI="platform:/plugin/de.emsw.gosa.product.etisch" containerData="50" selectedElement="_DhkoQKyREeCdbe-rhABTjg">
<children xsi:type="basic:Part" xmi:id="_DhkoQKyREeCdbe-rhABTjg" elementId="de.emsw.gosa.part.eingangsfach.live" contributorURI="platform:/plugin/de.emsw.gosa.contrib.eingangsfach" contributionURI="bundleclass://de.emsw.gosa.contrib.eingangsfach/de.emsw.gosa.contrib.eingangsfach.live.EingangsfachLivePart" label="Eingangsfach" iconURI="platform:/plugin/de.emsw.gosa.contrib.eingangsfach/icons/eingangsfach.png">
...
<children xsi:type="basic:PartSashContainer" xmi:id="_PzKgmfwZEeGkWqbY2vzguA" elementId="sash.right" contributorURI="platform:/plugin/de.emsw.gosa.product.etisch" containerData="40">
<children xsi:type="basic:PartStack" xmi:id="_PzKgmvwZEeGkWqbY2vzguA" elementId="stack.right.top" contributorURI="platform:/plugin/de.emsw.gosa.product.etisch" containerData="50" selectedElement="_fJcM4K7mEeCWdr0cltTDYg">
<children xsi:type="basic:Part" xmi:id="_fJcM4K7mEeCWdr0cltTDYg" elementId="de.emsw.gosa.part.umlauf.live" contributorURI="platform:/plugin/de.emsw.gosa.contrib.umlauf" contributionURI="bundleclass://de.emsw.gosa.contrib.umlauf/de.emsw.gosa.contrib.umlauf.live.UmlaufLivePart" label="Umläufe" iconURI="platform:/plugin/de.emsw.gosa.contrib.umlauf/icons/umlauf_live.gif">
...
<children xsi:type="basic:PartStack" xmi:id="_PzKgm_wZEeGkWqbY2vzguA" elementId="stack.right.bottom" contributorURI="platform:/plugin/de.emsw.gosa.product.etisch" containerData="50" selectedElement="_DhkoQKyREeCdbe-rhABTjg">
<children xsi:type="basic:Part" xmi:id="_DhkoQKyREeCdbe-rhABTjg" elementId="de.emsw.gosa.part.egvp" contributorURI="platform:/plugin/de.emsw.gosa.contrib.egvp" contributionURI="bundleclass://de.emsw.gosa.contrib.egvp/de.emsw.gosa.contrib.egvp.live.EgvpLivePart" label="EGVP" iconURI="platform:/plugin/de.emsw.gosa.contrib.egvp/icons/egvp.gif">
...
Running the debugger with a breakpoint in ElementContainerImpl.setSelectedElement() I noticed that the newSelectedElement "de.emsw.gosa.part.eingangsfach.live" is beeing set for the container "stack.right.bottom". Looking back at the workbench.xmi I noticed that the xmi:id is the same for "de.emsw.gosa.part.eingangsfach.live" and "de.emsw.gosa.part.egvp".
There seems to be an error in the generation of the xmi:id. Maybe because these parts are contributed by different fragments?
Is this a known bug, or would you like a bug report?
Does anyone have an idea for a workaround?
Greetings
Christoph
|
|
| | | | |
Goto Forum:
Current Time: Fri Apr 26 15:20:58 GMT 2024
Powered by FUDForum. Page generated in 0.03394 seconds
|