GEGlobalResearch / DARPA-ASKE-TA1

ANSWER Project to demonstrate knowledge-driven extraction of scientific models from code and texts
Other
8 stars 5 forks source link

Running inference in SADL gets Dialog inference processor #42

Closed crapo closed 4 years ago

crapo commented 4 years ago

@kittaakos , I need some help with this one which has cropped up. Open a project that has a .sadl file with an Ask or Test. Invoke Test Model from the SADL menu. Inference fails with the trace below. It should not be trying to use a JenaBasedDialogInferenceProcessor for a .sadl file.

Inference of 'C:\Users\200005201\sadl3-master2\runtime-New_configuration\TestSadl3Ide\Shapes\Test.sadl' requested. org.eclipse.core.runtime.CoreException: Plug-in "com.ge.research.sadl.darpa.aske.dialog" was unable to instantiate class "com.ge.research.sadl.darpa.aske.inference.JenaBasedDialogInferenceProcessor". at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.throwException(RegistryStrategyOSGI.java:216) at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:208) at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:934) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:246) at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:63) at com.ge.research.sadl.processing.AbstractSadlProcessorProvider.lambda$3(AbstractSadlProcessorProvider.java:151) at com.ge.research.sadl.processing.AbstractSadlProcessorProvider.lambda$4(AbstractSadlProcessorProvider.java:166) at java.lang.Iterable.forEach(Unknown Source) at com.ge.research.sadl.processing.AbstractSadlProcessorProvider.loadFromExtensionPoints(AbstractSadlProcessorProvider.java:174) at com.ge.research.sadl.processing.AbstractSadlProcessorProvider.getAllProcessors(AbstractSadlProcessorProvider.java:94) at com.ge.research.sadl.processing.SadlInferenceProcessorProvider.doCreateProcessor(SadlInferenceProcessorProvider.java:92) at com.ge.research.sadl.processing.SadlInferenceProcessorProvider.getProcessor(SadlInferenceProcessorProvider.java:80) at com.ge.research.sadl.ide.handlers.SadlIdeActionHandler.prepareResource(SadlIdeActionHandler.java:89) at com.ge.research.sadl.ide.handlers.SadlRunInferenceHandler.run(SadlRunInferenceHandler.java:90) at com.ge.research.sadl.ide.handlers.SadlRunInferenceHandler.run(SadlRunInferenceHandler.java:76) at com.ge.research.sadl.ui.handlers.RunInference$1$1.run(RunInference.java:74) Caused by: java.lang.NoSuchMethodException: com.ge.research.sadl.darpa.aske.inference.JenaBasedDialogInferenceProcessor.() at java.lang.Class.getConstructor0(Unknown Source) at java.lang.Class.getDeclaredConstructor(Unknown Source) at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:206) ... 14 more

kittaakos commented 4 years ago

A class instantiated via an extension point must not have an explicit constructor, or it must be no-args. This commit breaks it: https://github.com/GEGlobalResearch/DARPA-ASKE-TA1/commit/1e3f92013dec26f645e20449dca423f69b99b0d2#diff-2aaf1902c80345c7a3d8181ee224299eR343

Just remove the constructors, and it works.

crapo commented 4 years ago

Ah, thank you!!! I would have been hard-pressed to find the cause.