Uploaded image for project: 'Tools (JBoss Tools)'
  1. Tools (JBoss Tools)
  2. JBIDE-14923

NPE in MetaClassTemplateHelper

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 4.1.0.CR1
    • 4.1.0.Beta2
    • common
    • 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().

            scabanovich Viacheslav Kabanovich (Inactive)
            scabanovich Viacheslav Kabanovich (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: