Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 364206

Summary: "REFRESH" ON "GENERATE ENTITIES" WIZARD RESULTS NPE WHEN DB IS NOT CONNECTED
Product: [WebTools] Dali JPA Tools Reporter: Ram Venkataswamy <ram.venkataswamy>
Component: GeneralAssignee: Tran Le <tranle1>
Status: VERIFIED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: jolene.moffitt, karenfbutzke, neil.hauge
Version: unspecified   
Target Milestone: 3.2 M5   
Hardware: PC   
OS: Windows 7   
Whiteboard:

Description Ram Venkataswamy CLA 2011-11-18 17:34:53 EST
Build Identifier:  M20110909-1335

java.lang.NullPointerException
at
org.eclipse.jpt.jpa.ui.internal.wizards.gen.TablesSelectorWizardPage.refreshTa
bles(TablesSelectorWizardPage.java:278)

Reproducible: Always

Steps to Reproduce:
In "Generate Custom Entities" wizard, if the db connection is not connected
and user clicks "Refresh" btn, the following NPE is logged. I think the
refresh btn should be disabled when the connection is off.

java.lang.NullPointerException
at
org.eclipse.jpt.jpa.ui.internal.wizards.gen.TablesSelectorWizardPage.refreshTa
bles(TablesSelectorWizardPage.java:278)
at
org.eclipse.jpt.jpa.ui.internal.wizards.gen.TablesSelectorWizardPage.access$12
(TablesSelectorWizardPage.java:277)
at
org.eclipse.jpt.jpa.ui.internal.wizards.gen.TablesSelectorWizardPage$8.widgetS
elected(TablesSelectorWizardPage.java:395)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:240)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
at org.eclipse.jface.window.Window.open(Window.java:801)
at
org.eclipse.ui.internal.navigator.wizards.WizardShortcutAction.run(WizardShort
cutAction.java:98)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at
org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionCo
ntributionItem.java:584)
at
org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionIte
m.java:501)
at
org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributi
onItem.java:411)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at
org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.ja
va:123)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:19
6)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(Ec
lipseAppLauncher.java:110)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppL
auncher.java:79)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
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.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Comment 1 Neil Hauge CLA 2011-12-20 14:49:27 EST
Fixed in head.
Comment 2 Jolene Moffitt CLA 2012-01-04 14:30:39 EST
Verified in Build I-3.4.0-20120104005037

Verified when you click on the refresh button no errors appear if the button is enabled.  Also verified that if you are connected to a DB that is not connected to the DB at this time the buttons are disabled.  See the link to view test steps for verification.  http://wiki.eclipse.org/Dali_3.2_M5

However if you have more then one DB connection set-up and some of them are connected to their DB's and some are not if you go from one that is connected to one that is not connected the buttons stay enabled.  This is now Bug 367884