|
From: Craig G. (opennms) <cg...@op...> - 2012-08-15 14:20:45
|
Xose,
This is a minor bug which may cause confusion when people start using
tigerstripe.
When I run the Soap Generator against an empty model project I get the
following error;
Unexpected error while merging 'templates/dependencyAnalyzer.vm'
template: Invocation of method 'getPackagesFromArtifacts' in class
org.eclipse.tigerstripe.generators.xml.helpers.ModelHelpers threw
exception java.lang.ClassCastException: $Proxy12 cannot be cast to
org.eclipse.tigerstripe.workbench.internal.core.model.AbstractArtifact @
templates/dependencyAnalyzer.vm[4,43]. Generation may be incomplete.
Details;
org.eclipse.tigerstripe.workbench.TigerstripeException: Unexpected error
while merging 'templates/dependencyAnalyzer.vm' template: Invocation of
method 'getPackagesFromArtifacts' in class
org.eclipse.tigerstripe.generators.xml.helpers.ModelHelpers threw
exception java.lang.ClassCastException: $Proxy12 cannot be cast to
org.eclipse.tigerstripe.workbench.internal.core.model.AbstractArtifact @
templates/dependencyAnalyzer.vm[4,43]
at
org.eclipse.tigerstripe.workbench.internal.core.project.pluggable.rules.GlobalTemplateRule.trigger(GlobalTemplateRule.java:183)
at
org.eclipse.tigerstripe.workbench.internal.core.plugin.pluggable.PluginRuleExecutor.trigger(PluginRuleExecutor.java:80)
at
org.eclipse.tigerstripe.workbench.internal.core.plugin.pluggable.PluggablePlugin.trigger(PluggablePlugin.java:158)
at
org.eclipse.tigerstripe.workbench.internal.core.plugin.PluginHousing.trigger(PluginHousing.java:35)
at
org.eclipse.tigerstripe.workbench.internal.core.plugin.PluginConfig.trigger(PluginConfig.java:259)
at
org.eclipse.tigerstripe.workbench.internal.core.generation.M1Generator.internalPluginLoop(M1Generator.java:671)
at
org.eclipse.tigerstripe.workbench.internal.core.generation.M1Generator.internalRun(M1Generator.java:613)
at
org.eclipse.tigerstripe.workbench.internal.core.generation.M1Generator.run(M1Generator.java:349)
at
org.eclipse.tigerstripe.workbench.internal.api.impl.TigerstripeProjectHandle.generate(TigerstripeProjectHandle.java:514)
at
org.eclipse.tigerstripe.workbench.ui.internal.wizards.generate.NewTigerstripeRunWizard.finishPage(NewTigerstripeRunWizard.java:95)
at
org.eclipse.tigerstripe.workbench.ui.internal.wizards.NewTSElementWizard$2.run(NewTSElementWizard.java:154)
at
org.eclipse.jdt.internal.core.BatchOperation.executeOperation(BatchOperation.java:39)
at
org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:728)
at
org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975)
at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:4777)
at
org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:106)
at
org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
org.apache.velocity.exception.MethodInvocationException: Invocation of
method 'getPackagesFromArtifacts' in class
org.eclipse.tigerstripe.generators.xml.helpers.ModelHelpers threw
exception java.lang.ClassCastException: $Proxy12 cannot be cast to
org.eclipse.tigerstripe.workbench.internal.core.model.AbstractArtifact @
templates/dependencyAnalyzer.vm[4,43]
at
org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:286)
at
org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:203)
at
org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:419)
at
org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:73)
at
org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.java:125)
at
org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:318)
at org.apache.velocity.Template.merge(Template.java:254)
at
org.eclipse.tigerstripe.workbench.internal.core.project.pluggable.rules.GlobalTemplateRule.trigger(GlobalTemplateRule.java:162)
at
org.eclipse.tigerstripe.workbench.internal.core.plugin.pluggable.PluginRuleExecutor.trigger(PluginRuleExecutor.java:80)
at
org.eclipse.tigerstripe.workbench.internal.core.plugin.pluggable.PluggablePlugin.trigger(PluggablePlugin.java:158)
at
org.eclipse.tigerstripe.workbench.internal.core.plugin.PluginHousing.trigger(PluginHousing.java:35)
at
org.eclipse.tigerstripe.workbench.internal.core.plugin.PluginConfig.trigger(PluginConfig.java:259)
at
org.eclipse.tigerstripe.workbench.internal.core.generation.M1Generator.internalPluginLoop(M1Generator.java:671)
at
org.eclipse.tigerstripe.workbench.internal.core.generation.M1Generator.internalRun(M1Generator.java:613)
at
org.eclipse.tigerstripe.workbench.internal.core.generation.M1Generator.run(M1Generator.java:349)
at
org.eclipse.tigerstripe.workbench.internal.api.impl.TigerstripeProjectHandle.generate(TigerstripeProjectHandle.java:514)
at
org.eclipse.tigerstripe.workbench.ui.internal.wizards.generate.NewTigerstripeRunWizard.finishPage(NewTigerstripeRunWizard.java:95)
at
org.eclipse.tigerstripe.workbench.ui.internal.wizards.NewTSElementWizard$2.run(NewTSElementWizard.java:154)
at
org.eclipse.jdt.internal.core.BatchOperation.executeOperation(BatchOperation.java:39)
at
org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:728)
at
org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975)
at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:4777)
at
org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:106)
at
org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Caused by: java.lang.ClassCastException: $Proxy12 cannot be cast to
org.eclipse.tigerstripe.workbench.internal.core.model.AbstractArtifact
at
org.eclipse.tigerstripe.generators.xml.helpers.ModelHelpers.getPackagesFromArtifacts(ModelHelpers.java:235)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:295)
at
org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:245)
... 23 more
To reproduce
1. In Eclipse select New>tigerstripe Project and create a new project
2. in tigerstripe.xml enable Soap Generator
3. generate model in work space
If there is an entity in the model, this problem disappears.
It looks like having no artifacts in an empty model causes the soap
generator to fail. You may want to check that the dependencyAnalyser can
cope with empty models as this will be the default state for new
projects created by the project creator.
Cheers
Craig
|