-
Bug
-
Resolution: Done
-
Major
-
4.1.0.Beta2
-
None
1. Open an *.xhtml page.
2. Run from JSF Palette item JSF HTML/dataTable
3. Edit input field 'Value Bean Class'
!ENTRY org.eclipse.ui 4 0 2013-06-18 17:15:43.437 !MESSAGE Unhandled event loop exception !STACK 0 java.lang.NullPointerException at org.jboss.tools.common.model.ui.templates.configuration.MetaClassTemplateHelper.getMetaTemplate(MetaClassTemplateHelper.java:37) at org.jboss.tools.common.model.ui.templates.configuration.MetaClassTemplateHelper.getSuperClassName(MetaClassTemplateHelper.java:43) at org.jboss.tools.common.model.ui.attribute.editor.JavaAdapter.init(JavaAdapter.java:72) at org.jboss.tools.common.model.ui.attribute.editor.JavaHyperlinkLineFieldEditor.classExists(JavaHyperlinkLineFieldEditor.java:262) at org.jboss.tools.common.model.ui.attribute.editor.JavaHyperlinkCueLabelProvider.getImage(JavaHyperlinkCueLabelProvider.java:42) at org.jboss.tools.common.model.ui.attribute.AttributeContentProposalProviderFactory$3.getImage(AttributeContentProposalProviderFactory.java:156) at org.eclipse.jface.fieldassist.ControlDecoration.getDecorationRectangle(ControlDecoration.java:1157) at org.eclipse.jface.fieldassist.ControlDecoration.update(ControlDecoration.java:1037) at org.eclipse.jface.fieldassist.ControlDecoration$4.focusLost(ControlDecoration.java:615) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:143) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1392) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1416) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1397) at org.eclipse.swt.widgets.Control.sendFocusEvent(Control.java:3826) at org.eclipse.swt.widgets.Control.gtk_event_after(Control.java:3106) at org.eclipse.swt.widgets.Text.gtk_event_after(Text.java:1572) at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:2085) at org.eclipse.swt.widgets.Control.windowProc(Control.java:5430) at org.eclipse.swt.widgets.Text.windowProc(Text.java:2692) at org.eclipse.swt.widgets.Display.windowProc(Display.java:4569) at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method) at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:8707) at org.eclipse.swt.widgets.Display.eventProc(Display.java:1243) at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method) at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:2287) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3361) at org.eclipse.jface.window.Window.runEventLoop(Window.java:826) at org.eclipse.jface.window.Window.open(Window.java:802) at org.jboss.tools.common.model.ui.editors.dnd.DefaultDropCommand.execute(DefaultDropCommand.java:110) at org.jboss.tools.jst.jsp.jspeditor.JSPTextEditor$3.run(JSPTextEditor.java:700) at org.jboss.tools.jst.jsp.jspeditor.JSPTextEditor.runDropCommand(JSPTextEditor.java:719) at org.jboss.tools.jst.jsp.jspeditor.JSPMultiPageEditor.runDropCommand(JSPMultiPageEditor.java:851) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.jboss.tools.common.model.ui.views.palette.PaletteCreator.dropIntoEditor(PaletteCreator.java:186) at org.jboss.tools.common.model.ui.views.palette.PaletteCreator.insertIntoEditor(PaletteCreator.java:140) at org.jboss.tools.jst.jsp.jspeditor.PalettePageImpl.insertIntoEditor(PalettePageImpl.java:100) at org.jboss.tools.jst.web.ui.palette.PaletteViewer.insertIntoEditor(PaletteViewer.java:72) at org.jboss.tools.jst.web.ui.palette.PaletteViewer.setActiveTool(PaletteViewer.java:67) at org.eclipse.gef.internal.ui.palette.editparts.ToolEntryEditPart$2.actionPerformed(ToolEntryEditPart.java:392) at org.eclipse.draw2d.Clickable.fireActionPerformed(Clickable.java:206) at org.eclipse.draw2d.Clickable$1.actionPerformed(Clickable.java:175) at org.eclipse.draw2d.ButtonModel.fireActionPerformed(ButtonModel.java:140) at org.eclipse.draw2d.ToggleModel.fireActionPerformed(ToggleModel.java:27) at org.eclipse.draw2d.ButtonModel$DefaultFiringBehavior.released(ButtonModel.java:506) at org.eclipse.draw2d.ButtonModel.fireReleased(ButtonModel.java:179) at org.eclipse.draw2d.ButtonModel.setPressed(ButtonModel.java:466) at org.eclipse.gef.internal.ui.palette.editparts.ToolEntryEditPart$GTKToggleButtonTracker.handleButtonUp(ToolEntryEditPart.java:141) at org.eclipse.gef.tools.AbstractTool.mouseUp(AbstractTool.java:1200) at org.eclipse.gef.tools.SelectionTool.mouseUp(SelectionTool.java:574) at org.eclipse.gef.EditDomain.mouseUp(EditDomain.java:301) at org.eclipse.gef.ui.parts.DomainEventDispatcher.dispatchMouseReleased(DomainEventDispatcher.java:380) at org.eclipse.draw2d.LightweightSystem$EventHandler.mouseUp(LightweightSystem.java:548) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:220) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1392) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3742) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3363) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:138) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:610) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591) at org.eclipse.equinox.launcher.Main.run(Main.java:1450) at org.eclipse.equinox.launcher.Main.main(Main.java:1426)
In context of *.xhtml file, publicId is not defined, and is null. New Data Table wizard does not need a class template for class chooser input field 'Value Bean Class'. Either JavaAdapter.init should not call MetaClassTemplateHelper when publicId = null, or MetaClassTemplateHelper might do that check.
Issue is related with changes to JBIDE-14476, which call methods on publicId in MetaClassTemplateHelper.getMetaTemplate().