Bug 530241 - java.io.IOException: Unable to resolve plug-in "platform:/plugin/org.eclipse.sirius.tests.rcptt.sample.properties.design/description/PropertiesTests.odesign"
Summary: java.io.IOException: Unable to resolve plug-in "platform:/plugin/org.eclipse....
Status: NEW
Alias: None
Product: Sirius
Classification: Modeling
Component: Properties (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 7
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2018-01-24 07:38 EST by Tamas Miklossy CLA
Modified: 2018-01-29 11:53 EST (History)
2 users (show)

See Also:


Attachments
Screencast about the exception (12.76 MB, image/gif)
2018-01-25 07:19 EST, Tamas Miklossy CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Tamas Miklossy CLA 2018-01-24 07:38:48 EST
The following exception is thrown by Sirius:

!ENTRY org.eclipse.sirius 2 0 2018-01-24 13:27:26.757
!MESSAGE The viewpoint registry was not able to load this file org.eclipse.sirius.tests.rcptt.sample.properties.design/description/PropertiesTests.odesign
!STACK 0
java.io.IOException: Unable to resolve plug-in "platform:/plugin/org.eclipse.sirius.tests.rcptt.sample.properties.design/description/PropertiesTests.odesign".
	at org.eclipse.core.internal.runtime.PlatformURLPluginConnection.parse(PlatformURLPluginConnection.java:61)
	at org.eclipse.core.internal.runtime.PlatformURLPluginConnection.resolve(PlatformURLPluginConnection.java:70)
	at org.eclipse.core.internal.boot.PlatformURLHandler.openConnection(PlatformURLHandler.java:66)
	at org.eclipse.osgi.internal.url.URLStreamHandlerProxy.openConnection(URLStreamHandlerProxy.java:114)
	at java.net.URL.openConnection(URL.java:979)
	at org.eclipse.emf.ecore.resource.impl.URIHandlerImpl.createInputStream(URIHandlerImpl.java:200)
	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.sirius.viewpoint.description.util.DescriptionResourceImpl.load(DescriptionResourceImpl.java:95)
	at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoad(ResourceSetImpl.java:259)
	at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:274)
	at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getResource(ResourceSetImpl.java:406)
	at org.eclipse.sirius.business.api.componentization.ViewpointRegistryImpl.load(ViewpointRegistryImpl.java:651)
	at org.eclipse.sirius.business.api.componentization.ViewpointRegistryImpl.registerFromPlugin(ViewpointRegistryImpl.java:319)
	at org.eclipse.sirius.tests.rcptt.sample.properties.design.Activator.start(Activator.java:48)
	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:774)
	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:767)
	at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:724)
	at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:932)
	at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:309)
	at org.eclipse.osgi.container.Module.doStart(Module.java:581)
	at org.eclipse.osgi.container.Module.start(Module.java:449)
	at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:470)
	at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:529)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:325)
	at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:345)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:423)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:372)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:364)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:161)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

----------------------------------------------------------------------------
As far as I can see, there is a mismatch between the PLUGIN_ID and the actual location of the PropertiesTests.odesign file.

PLUGIN_ID = "org.eclipse.sirius.tests.rcptt.sample.properties.design"
Actual Path= org.eclipse.sirius.tests.rcptt.properties.design\description\PropertiesTests.odesign

The Plugin searches the Properties.odesign file under the wrong location: PLUGIN_ID + "/description/PropertiesTests.odesign".
Comment 1 Laurent Fasani CLA 2018-01-25 05:45:13 EST
I guess that you have a Sirius project with an aird referencing a non existing viewpoint (because the file has been moved). But in that case, sirius manage it. In that case there is no error in error log and the concerned representation are not displayed in model explorer.

So, Could you provide a scenario with attachment to reproduce, so that i can go further in the understanding?
Comment 2 Tamas Miklossy CLA 2018-01-25 07:19:03 EST
Created attachment 272403 [details]
Screencast about the exception
Comment 3 Tamas Miklossy CLA 2018-01-25 07:20:15 EST
Hi Laurent!

Thanks for your quick reply!

The steps to reproduce the problem:

1. Check out all the source code from the Sirius repository.
2. Start Runtime Eclipse.
3. Import the 'Basic Family Sample Model' from the Sirius Examples.
4. Open the basicfamily.sample/representations.aird file
5. The Exception is thrown (see the screencast as attachment).
Comment 4 Pierre-Charles David CLA 2018-01-29 11:53:00 EST
The Eclipse projects contained inside the /org.eclipse.sirius.tests.rcptt.properties.samples/contents/propertiestests folder in the sources should not be imported in the development workspace. They are only used in very a specific context (automated RCPTT tests). It's true they contain some inconsistencies, but those are not an issue in practice in the context they are designed for.

Even without considering this particular issue, importing them in your workspace is probably not a good idea, it will contribute a lot a completely useless viewpoint definitions which are only designed for tests and will pollute the UI.