Summary: | Opening a modeling project with a missing semantic resource causes a silent ResourceException | ||||||
---|---|---|---|---|---|---|---|
Product: | [Modeling] Sirius | Reporter: | Steve Monnier <steve.monnier> | ||||
Component: | Core | Assignee: | Project inbox <sirius.core-inbox> | ||||
Status: | NEW --- | QA Contact: | |||||
Severity: | normal | ||||||
Priority: | P3 | CC: | claudiai, rolf.theunissen | ||||
Version: | 6.1.2 | Keywords: | triaged | ||||
Target Milestone: | --- | ||||||
Hardware: | PC | ||||||
OS: | Windows 10 | ||||||
Whiteboard: | |||||||
Attachments: |
|
*** Bug 547383 has been marked as a duplicate of this bug. *** |
Created attachment 277767 [details] ecore_sample_with_missing_resource Opening a modeling project with a missing semantic resource causes a silent ResourceException (I see it in my developpement environment but not in the runtime), even if the resource is not referenced anywhere besides the semanticResources tag (see sample in attachment). Step to reproduce: - import the project from ecore_sample_with_missing_resource.zip - open the project - You should not have the following exception: !ENTRY org.eclipse.sirius 2 0 2019-03-05 11:50:16.432 !MESSAGE org.eclipse.core.internal.resources.ResourceException: Resource '/ecore_sample_with_missing_resource/Missing.ecore' does not exist. !STACK 0 org.eclipse.emf.ecore.resource.impl.ResourceSetImpl$1DiagnosticWrappedException: org.eclipse.core.internal.resources.ResourceException: Resource '/ecore_sample_with_missing_resource/Missing.ecore' does not exist. at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.handleDemandLoadException(ResourceSetImpl.java:319) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:278) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getResource(ResourceSetImpl.java:406) at org.eclipse.sirius.viewpoint.impl.DAnalysisImpl.getResource(DAnalysisImpl.java:150) at org.eclipse.sirius.viewpoint.impl.DAnalysisImpl.getModels(DAnalysisImpl.java:119) at org.eclipse.sirius.business.internal.session.danalysis.SessionResourcesTracker.resolveAllSemanticResourcesFromModels(SessionResourcesTracker.java:214) at org.eclipse.sirius.business.internal.session.danalysis.SessionResourcesTracker.initialize(SessionResourcesTracker.java:93) at org.eclipse.sirius.business.internal.session.danalysis.DAnalysisSessionImpl$2.doExecute(DAnalysisSessionImpl.java:1183) at org.eclipse.emf.transaction.RecordingCommand.execute(RecordingCommand.java:135) at org.eclipse.emf.workspace.EMFCommandOperation.doExecute(EMFCommandOperation.java:119) at org.eclipse.emf.workspace.AbstractEMFOperation.execute(AbstractEMFOperation.java:150) at org.eclipse.core.commands.operations.DefaultOperationHistory.execute(DefaultOperationHistory.java:488) at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.doExecute(WorkspaceCommandStackImpl.java:208) at fr.obeo.dsl.viewpoint.collab.api.editingdomain.NonDirtyingCapableWorkspaceCommandStack.doExecute(NonDirtyingCapableWorkspaceCommandStack.java:68) at org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:165) at org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:219) at org.eclipse.sirius.business.internal.session.danalysis.DAnalysisSessionImpl.open(DAnalysisSessionImpl.java:1186) at fr.obeo.dsl.viewpoint.collab.internal.remotesession.CollaborativeDAnalysisSessionImpl.open(CollaborativeDAnalysisSessionImpl.java:244) at org.eclipse.sirius.business.internal.session.SessionManagerImpl.openSession(SessionManagerImpl.java:396) at org.eclipse.sirius.ui.tools.internal.views.common.modelingproject.OpenRepresentationsFileJob.performOpenSession(OpenRepresentationsFileJob.java:192) at org.eclipse.sirius.ui.tools.internal.views.common.modelingproject.OpenRepresentationsFileJob.runInWorkspace(OpenRepresentationsFileJob.java:161) at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:39) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:56) Caused by: org.eclipse.core.internal.resources.ResourceException: Resource '/ecore_sample_with_missing_resource/Missing.ecore' does not exist. at org.eclipse.core.internal.resources.Resource.checkExists(Resource.java:335) at org.eclipse.core.internal.resources.Resource.checkAccessible(Resource.java:209) at org.eclipse.core.internal.resources.File.getContents(File.java:275) at org.eclipse.core.internal.resources.File.getContents(File.java:268) at org.eclipse.emf.ecore.resource.impl.PlatformResourceURIHandlerImpl$WorkbenchHelper.createPlatformResourceInputStream(PlatformResourceURIHandlerImpl.java:207) at org.eclipse.emf.ecore.resource.impl.PlatformResourceURIHandlerImpl.createInputStream(PlatformResourceURIHandlerImpl.java:525) at org.eclipse.emf.ecore.resource.impl.ExtensibleURIConverterImpl.createInputStream(ExtensibleURIConverterImpl.java:360) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1269) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoad(ResourceSetImpl.java:259) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:274) ... 21 more