[QVTo] factoryEntries in class EclipseRegistry/ interface UnitResolverFactory are empty [message #723175] |
Wed, 07 September 2011 22:42 |
Tom2000 Messages: 6 Registered: May 2011 |
Junior Member |
|
|
Hello all together,
i wrote an qvto transformation from BPMN to a self defined rolemodel. My first goal was to create a stand-alone transformation including a blackbox. Quickly I realized that a platform is needed to register a provider of an extension or an extensionPoint org.eclipse.m2m.qvt.oml.javaBlackboxUnits, m2m.internal.qvt.oml.blackbox.BlackboxRegistry in Platform.getExtensionRegistry().
To use a Blackbox in my transformation i created a separate eclipse application without an UI. Starting my Plugin de.test.transformation_1.0.0 via OSGi console the Transformation.class (InvokeInJava) is instantiated by Activator.class, Case (2).
Before any transformation in QVTo begins the internal TransformationExecutor load Transformation by doLoad() where the URI pointing to qvto script is checked. This leads to following Diagnostic Message: Could not find unit 'localhost/WebContent/WEB-INF/models/bpmn2roleModel.qvto'
During execution the following code is done in Interface org.eclipse.m2m.internal.qvt.oml.compiler.unitResolverFactory:
Registry INSTANCE = EMFPlugin.IS_ECLIPSE_RUNNING ? new EclipseRegistry() : new BasicRegistry(); and result in two cases:
(1) first case, the transformation is triggered by a stand-alone main class and leads to the following issues
Eclipse platform running: false, EMF.Plugin is running: false
URL is resolved
(2) The execution in own Eclipse without UI
Eclipse platform running: true, EMF.Plugin is running: true
URL is not resolved
Because no extension is found the list attribute factoryEntries in class EclipseRegistry is empty if EclipsePlatform runs.
if(EMFPlugin.IS_ECLIPSE_RUNNING) {
IExtensionRegistry pluginRegistry = Platform.getExtensionRegistry();
IExtensionPoint extensionPoint = pluginRegistry.getExtensionPoint(org.eclipse.m2m.qvt.oml.unitResolverFactory);
if(extensionPoint != null) {
IExtension[] allExtensions = extensionPoint.getExtensions(); //null
for (IExtension nextExtension : allExtensions) {
Is it really mandatory to register it's own UnitResolverFactory or could i use some oher plugins, because during the standalone Transformation via main()-method the same URL is resolved by a default http-URI resolver.
Thanks in advance for any comments
Tom
id State Bundle
0 STARTING org.eclipse.osgi_3.7.0.v20110613
Fragments=30
1 ACTIVE org.eclipse.equinox.common_3.6.0.v20110523
2 ACTIVE org.eclipse.update.configurator_3.3.100.v20100512
3 ACTIVE org.eclipse.equinox.http.servletbridge_1.0.0.200704022148
4 ACTIVE org.eclipse.equinox.http.registry_1.1.100.v20110502
5 <<LAZY>> com.ibm.icu_4.4.2.v20110208
6 <<LAZY>> de.dipl.tg.blackboxTransLibrary_1.0.0
7 <<LAZY>> de.dipl.tg.domainMetamodel_1.0.0
8 ACTIVE de.dipl.tg.roleMetamodel_1.0.0
9 <<LAZY>> de.dipl.tg.taskMetamodel_1.0.0
10 STARTING de.test.transformation_1.0.0
11 RESOLVED lpg.runtime.java_2.0.17.v201004271640
12 ACTIVE org.eclipse.bpmn2_0.7.0.201106171747
13 ACTIVE org.eclipse.core.contenttype_3.4.100.v20110423-0524
14 <<LAZY>> org.eclipse.core.expressions_3.4.300.v20110228
15 ACTIVE org.eclipse.core.filesystem_1.3.100.v20110423-0524
16 ACTIVE org.eclipse.core.jobs_3.5.100.v20110404
17 ACTIVE org.eclipse.core.resources_3.7.100.v20110510-0712
18 ACTIVE org.eclipse.core.runtime_3.7.0.v20110110
19 ACTIVE org.eclipse.emf.common_2.7.0.v20110605-0747
20 <<LAZY>> org.eclipse.emf.ecore.change_2.7.0.v20110408-2116
21 ACTIVE org.eclipse.emf.ecore.xmi_2.7.0.v20110520-1406
22 ACTIVE org.eclipse.emf.ecore_2.7.0.v20110605-0747
23 ACTIVE org.eclipse.equinox.app_1.3.100.v20110321
27 ACTIVE org.eclipse.equinox.http.servlet_1.1.200.v20110502
28 ACTIVE org.eclipse.equinox.preferences_3.4.0.v20110502
29 ACTIVE org.eclipse.equinox.registry_3.5.100.v20110502
30 RESOLVED org.eclipse.equinox.servletbridge.extensionbundle_1.0.0
Master=0
31 <<LAZY>> org.eclipse.m2m.qvt.oml.common_3.1.0.v20110518-1530
32 <<LAZY>> org.eclipse.m2m.qvt.oml.cst.parser_3.1.0.v20101214-1530
33 <<LAZY>> org.eclipse.m2m.qvt.oml.ecore.imperativeocl_3.1.0.v20101214-1530
34 <<LAZY>> org.eclipse.m2m.qvt.oml.emf.util_3.1.0.v20110627-1530
35 ACTIVE org.eclipse.m2m.qvt.oml_3.1.0.v20110518-1530
36 <<LAZY>> org.eclipse.ocl.ecore_3.1.0.v20110510-2118
37 <<LAZY>> org.eclipse.ocl_3.1.0.v20110606-1427
38 RESOLVED org.eclipse.osgi.services_3.3.0.v20110513
41 <<LAZY>> org.eclipse.xsd_2.7.0.v20110606-0949
[Updated on: Sat, 10 September 2011 14:15] Report message to a moderator
|
|
|
|
Powered by
FUDForum. Page generated in 0.02564 seconds