Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 350926

Summary: [Model Explorer] NullPointerExeception (When Transaction and Papyrus isn't active ).
Product: [Modeling] Papyrus Reporter: TimeSquare Mising name <benoit.ferrero>
Component: CoreAssignee: Vincent Lorenzo <vincent.lorenzo>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:

Description TimeSquare Mising name CLA 2011-07-01 08:14:05 EDT
Build Identifier: 0.8.0.v201106151827

 when running methods AbstractEMFOperation.execute(null,null) . the post commit for a "Model Explorer view " cause a NullPointerException when the papyrus Editor don't have a focus.





Reproducible: Sometimes

Steps to Reproduce:
java.lang.NullPointerException
	at org.eclipse.papyrus.modelexplorer.MoDiscoLabelProvider.createEditorRegistry(MoDiscoLabelProvider.java:142)
	at org.eclipse.papyrus.modelexplorer.MoDiscoLabelProvider.getEditorRegistry(MoDiscoLabelProvider.java:127)
	at org.eclipse.papyrus.modelexplorer.MoDiscoLabelProvider.getImage(MoDiscoLabelProvider.java:79)
	at org.eclipse.papyrus.table.modelexplorer.providers.NavigatorTableLabelProvider.getImage(NavigatorTableLabelProvider.java:38)
	at org.eclipse.jface.viewers.WrappedViewerLabelProvider.getImage(WrappedViewerLabelProvider.java:117)
	at org.eclipse.jface.viewers.WrappedViewerLabelProvider.update(WrappedViewerLabelProvider.java:165)
	at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:152)
	at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:938)
	at org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run(AbstractTreeViewer.java:106)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
	at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:1018)
	at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:485)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
	at org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:2167)
	at org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren(AbstractTreeViewer.java:2730)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1908)
	at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:721)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1915)
	at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:721)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1883)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1840)
	at org.eclipse.ui.navigator.CommonViewer.internalRefresh(CommonViewer.java:561)
	at org.eclipse.jface.viewers.StructuredViewer$8.run(StructuredViewer.java:1535)
	at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1443)
	at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:403)
	at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1404)
	at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1533)
	at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:548)
	at org.eclipse.ui.navigator.CommonViewer.refresh(CommonViewer.java:353)
	at org.eclipse.ui.navigator.CommonViewer.refresh(CommonViewer.java:510)
	at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1465)
	at org.eclipse.papyrus.modelexplorer.ModelExplorerView.refresh(ModelExplorerView.java:387)
	at org.eclipse.papyrus.modelexplorer.ModelExplorerView$4.run(ModelExplorerView.java:369)
	at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:180)
	at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:150)
	at org.eclipse.swt.widgets.Display.syncExec(Display.java:4330)
	at org.eclipse.papyrus.modelexplorer.ModelExplorerView.handleResourceSetChanged(ModelExplorerView.java:363)
	at org.eclipse.papyrus.modelexplorer.ModelExplorerView.access$2(ModelExplorerView.java:362)
	at org.eclipse.papyrus.modelexplorer.ModelExplorerView$2.resourceSetChanged(ModelExplorerView.java:354)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl$1.run(TransactionalEditingDomainImpl.java:781)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.runExclusive(TransactionalEditingDomainImpl.java:328)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.postcommit(TransactionalEditingDomainImpl.java:771)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.deactivate(TransactionalEditingDomainImpl.java:543)
	at org.eclipse.emf.transaction.impl.TransactionImpl.close(TransactionImpl.java:712)
	at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:474)
	at org.eclipse.emf.workspace.AbstractEMFOperation.execute(AbstractEMFOperation.java:155)
Comment 1 Vincent Lorenzo CLA 2011-07-11 03:19:00 EDT
Hi Benoit, 
	please, could you detail the steps to reproduce? Thank you. 
	
/Vincent Lorenzo
Comment 2 TimeSquare Mising name CLA 2011-07-11 04:01:15 EDT
Hi

The  "Model Explorer view " is open .

I have a code : 

A) Openning  a Papyrus editor

B)  Running   several times a command with a AbstractEMFOperation.execute(null,null) method's in display thread.


if you  select a other editor during step B, the NullPointerException  is throws and show in popup 

Apparently .
After a my command , the post-commit traitment , update a  "Model Explorer view " but this view don't find a papyrus editor .


Thank you

Benoit Ferrero
Comment 3 Camille Letavernier CLA 2014-03-25 15:47:37 EDT
This cannot be reproduced in the current version, I close the task