2012-05-21 6 views
0

У меня есть следующая проблема: я хочу повторить мою модель Ecore, используя TreeIterator.Ecore TreeIterator отсутствует корневой объект

Однако корневой элемент всегда пропускается, есть ли способ получить RootElement в цикле TreeIterator?

EPackage rootElement = (EPackage) EcoreUtil.getRootContainer(model); 
for (TreeIterator iter = EcoreUtil.getAllProperContents(rootElement, true); iter.hasNext();) { 
EObject element = iter.next()... // I want the root element to be the first element here! 

ответ

1

Попробуйте это:

Resource res = model.eResource(); 
TreeIterator<EObject> allContents = res.getAllContents(); 
+0

Resource Рез = model.eResource() возвращает нуль – matthias

+0

Вы модель должна содержаться ресурс для этой работы. – execc

Смежные вопросы