Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Eclipse 4 » Updated target platform to Eclipse Neon (4.6) and now Placeholder elements require 'ref' attribute(Updated target platform to Eclipse Neon (4.6) and now Placeholder elements require 'ref' attribute to be set)
Updated target platform to Eclipse Neon (4.6) and now Placeholder elements require 'ref' attribute [message #1737475] Fri, 08 July 2016 14:11
Jani S is currently offline Jani SFriend
Messages: 1
Registered: May 2016
Junior Member
Hi, I'm dealing with a legacy E3 application and contributing E4 modeled elements via fragments.

I'm trying to switch our target platform from 4.5.1 to 4.6 and noticed that Placeholder elements in Part Stacks inside a Perspective (defined in snippets-section of the fragment) require the 'ref' attribute to be set. If not set one ends up with the following error message:

!MESSAGE Fragment from "uri.toString()" of "my.test.plugin" could not be validated and was not merged "org.eclipse.e4.ui.model.fragment.impl.StringModelFragmentImpl@67c6f4d8 (featurename: snippets, parentElementId: xpath:/, positionInList: null)"


With some digging I was able to find out more information about this error message

Diagnostic ERROR source=org.eclipse.emf.ecore code=0 Diagnosis of org.eclipse.e4.ui.model.fragment.impl.StringModelFragmentImpl@45592af7{platform:/plugin/my.test.plugin/fragment.e4xmi#_qFatMNFbEeWTvZi223ngDw} data=[org.eclipse.e4.ui.model.fragment.impl.StringModelFragmentImpl@45592af7 (featurename: snippets, parentElementId: xpath:/, positionInList: null)] [Diagnostic ERROR source=org.eclipse.emf.ecore code=1 The required feature 'ref' of 'org.eclipse.e4.ui.model.application.ui.advanced.impl.PlaceholderImpl@6b37df8e{platform:/plugin/my.test.plugin/fragment.e4xmi#_BcDYQNFjEeWTvZi223ngDw}' must be set


And the perspective fails to load when application finally shows up.

I tried to add the ID of my view part to the 'ref' attribute and imported the Part to the fragment but that ends up to a ClassCastException:

!ENTRY org.eclipse.osgi 4 0 2016-07-08 17:08:55.966
!MESSAGE Application error
!STACK 1
java.lang.ClassCastException: org.eclipse.e4.ui.model.application.ui.advanced.impl.PlaceholderImpl cannot be cast to org.eclipse.e4.ui.model.application.ui.MUIElement
	at org.eclipse.e4.ui.model.application.ui.advanced.impl.PlaceholderImpl.eSet(PlaceholderImpl.java:170)
	at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eSet(BasicEObjectImpl.java:1071)
	at org.eclipse.e4.ui.internal.workbench.ModelAssembler$1.run(ModelAssembler.java:403)
	at org.eclipse.e4.ui.internal.workbench.ModelAssembler.resolveImports(ModelAssembler.java:412)
	at org.eclipse.e4.ui.internal.workbench.ModelAssembler.processFragmentConfigurationElement(ModelAssembler.java:172)
	at org.eclipse.e4.ui.internal.workbench.ModelAssembler.processFragments(ModelAssembler.java:118)
	at org.eclipse.e4.ui.internal.workbench.ModelAssembler.processModel(ModelAssembler.java:96)
	at org.eclipse.e4.ui.internal.workbench.ResourceHandler.loadMostRecentModel(ResourceHandler.java:197)
	at org.eclipse.e4.ui.internal.workbench.swt.E4Application.loadApplicationModel(E4Application.java:377)
	at org.eclipse.e4.ui.internal.workbench.swt.E4Application.createE4Workbench(E4Application.java:252)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:626)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:604)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)


Anyone else experiencing the same? How should I resolve this issue?
Previous Topic:Kepler SR 1 (4.3.1): e4 key bindings will be removed by BindingToModelProcessor
Next Topic:minimum size for MPARTSTASH
Goto Forum:
  


Current Time: Mon Sep 21 14:01:21 GMT 2020

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

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

Back to the top