Saturday, December 18, 2010

Fixing Eclipse MWE Error: Workflow interrupted. Reason: Couldn't load resource under platform:/resource/*.xmi : org.eclipse.emf.ecore.xmi.PackageNotFoundException: Package with uri 'http://*' not found.

If you ever tried to run an Eclipse MWE Workflow, most likely to do M2T (Model-to-Text) transformation using Xpand from an EMF Ecore model to text files, you'll surely encounter several errors at first (or later).

For my case, the error is as follows:

0    INFO  WorkflowRunner     - --------------------------------------------------------------------------------------
7    INFO  WorkflowRunner     - EMF Modeling Workflow Engine 1.0.0, Build v201008251122
7    INFO  WorkflowRunner     - (c) 2005-2009 openarchitectureware.org and contributors
7    INFO  WorkflowRunner     - --------------------------------------------------------------------------------------
8    INFO  WorkflowRunner     - running workflow: /home/ceefour/project/Bippo/modeling_workspace/id.co.bippo.models/src/workflow/makegradle.mwe
8    INFO  WorkflowRunner     -
542  INFO  StandaloneSetup    - Registering platform uri '/home/ceefour/project/Bippo/modeling_workspace'
686  INFO  CompositeComponent - Reader: Loading model from platform:/resource/id.co.bippo.models/src/demo.bippo.co.id.xmi
780  ERROR WorkflowRunner     - Workflow interrupted. Reason: Couldn't load resource under platform:/resource/id.co.bippo.models/src/demo.bippo.co.id.xmi : org.eclipse.emf.ecore.xmi.PackageNotFoundException: Package with uri 'http://www.bippo.co.id/shop/3.0/magentoconfig/1.0' not found. (platform:/resource/id.co.bippo.models/src/demo.bippo.co.id.xmi, 2, 312)

This seemed like the dreaded platform:/resource URI common pitfall.

However, in my case the problem was inside the .xmi model file itself :

xsi:schemaLocation="http://www.bippo.co.id/shop/3.0/magentoconfig/1.0 ../metamodel/magento-config.ecore"

I was moving the metamodel (Ecore model) to another folder/package, however the XMI file's schemaLocation was hardcoded to a specific path.

Fix the schemaLocation, and it would work fine.

No comments:

Post a Comment