Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 313162 - Reference to non-existent JavaVMType causes NPE
Summary: Reference to non-existent JavaVMType causes NPE
Status: CLOSED DUPLICATE of bug 312870
Alias: None
Product: TMF
Classification: Modeling
Component: Xtext (show other bugs)
Version: 1.0.0   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: RC1   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-05-17 11:13 EDT by Johannes Tysiak CLA
Modified: 2010-05-17 11:17 EDT (History)
1 user (show)

See Also:
sebastian.zarnekow: helios+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Johannes Tysiak CLA 2010-05-17 11:13:42 EDT
Build Identifier: Xtext 1.0.0.v201005041135

Using the support for JavaVMTypes in Xtext 1.0, there is a problem when the referenced JavaVMType does not exist. Instead of handling this problem gracefully, the user is merely presented a NPE:

java.lang.NullPointerException
	at org.eclipse.xtext.ui.MarkerTypes.forCheckType(MarkerTypes.java:25)
	at org.eclipse.xtext.builder.builderState.MarkerUpdaterImpl.addMarkers(MarkerUpdaterImpl.java:91)
	at org.eclipse.xtext.builder.builderState.MarkerUpdaterImpl.updateMarker(MarkerUpdaterImpl.java:63)
	at org.eclipse.xtext.builder.builderState.PersistableResourceDescriptionsImpl.doValidate(PersistableResourceDescriptionsImpl.java:124)
	at org.eclipse.xtext.builder.builderState.PersistableResourceDescriptionsImpl.update(PersistableResourceDescriptionsImpl.java:113)
	at org.eclipse.xtext.builder.impl.XtextBuilder.doBuild(XtextBuilder.java:126)
	at org.eclipse.xtext.builder.impl.XtextBuilder.clean(XtextBuilder.java:158)
	at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:631)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:172)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:203)
	at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:255)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:258)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:220)
	at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:362)
	at org.eclipse.core.internal.resources.Project$1.run(Project.java:545)
	at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975)
	at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:524)
	at org.eclipse.core.internal.resources.Project.build(Project.java:115)
	at org.eclipse.ui.internal.ide.dialogs.CleanDialog.doClean(CleanDialog.java:312)
	at org.eclipse.ui.internal.ide.dialogs.CleanDialog$1.runInWorkspace(CleanDialog.java:154)
	at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

Reproducible: Always

Steps to Reproduce:
1. Define a grammar using JavaVMTypes
2. Run the generated editor
3. Reference a non-existent JavaVMType (e.g. jovo.long.Abject)
4. Perform a clean on the surrounding project
Comment 1 Sebastian Zarnekow CLA 2010-05-17 11:16:52 EDT

*** This bug has been marked as a duplicate of bug 312870 ***