Project: Birt
Bug 144179 Use the stored procedure "counterInt1(?)" will cause an exception
Reported: 2006-05-29 04:03:11 | Status: closed fixed

Description: use the store procedure "counterInt1(?)" will cause an expection Step to reproduce: 1.new a report 2.new a datasource : net.sourceforge.jtds.jdbc.Driver (v1.1) jdbc:jtds:sqlserver://spmdb:1433/gui sa/sa 3.new a data set with the dataset type SQL Stored Procedure Query 4.input {call dbo.counterInT1(?)} in the query 5.click finish Actual result: Cause an exception org.eclipse.birt.report.designer.core.runtime.GUIException: Diagnosis of org.eclipse.datatools.connectivity.oda.design.impl.DataSetDesignImpl@bc9f58{#///@response/@dataAccessDesign/@dataSetDesign} The required feature 'resultSetColumns' of 'org.eclipse.datatools.connectivity.oda.design.impl.ResultSetDefinitionImpl@1816fb6{#///@response/@dataAccessDesign/@dataSetDesign/@resultSets/@resultSetDefinitions.0}' must be set at org.eclipse.birt.report.designer.core.runtime.GUIException.createGUIException(GUIException.java:76) at org.eclipse.birt.report.designer.internal.ui.util.ExceptionHandler.handle(ExceptionHandler.java:123) at org.eclipse.birt.report.designer.internal.ui.util.ExceptionHandler.handle(ExceptionHandler.java:105) at org.eclipse.birt.report.designer.data.ui.dataset.DataSetBasePage.createSelectedDataSet(DataSetBasePage.java:632) at org.eclipse.birt.report.designer.data.ui.dataset.DefaultDataSetWizard.performFinish(DefaultDataSetWizard.java:77) at org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDialog.java:684) at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:355) at org.eclipse.jface.dialogs.Dialog$3.widgetSelected(Dialog.java:660) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:928) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3348) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2968) at org.eclipse.jface.window.Window.runEventLoop(Window.java:820) at org.eclipse.jface.window.Window.open(Window.java:796) at org.eclipse.birt.report.designer.ui.actions.NewDataSetAction.run(NewDataSetAction.java:123) at org.eclipse.jface.action.Action.runWithEvent(Action.java:499) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:539) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:488) at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:400) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:928) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3348) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2968) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1914) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1878) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) 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.core.launcher.Main.invokeFramework(Main.java:336) at org.eclipse.core.launcher.Main.basicRun(Main.java:280) at org.eclipse.core.launcher.Main.run(Main.java:977) at org.eclipse.core.launcher.Main.main(Main.java:952) Caused by: java.lang.IllegalStateException: Diagnosis of org.eclipse.datatools.connectivity.oda.design.impl.DataSetDesignImpl@bc9f58{#///@response/@dataAccessDesign/@dataSetDesign} The required feature 'resultSetColumns' of 'org.eclipse.datatools.connectivity.oda.design.impl.ResultSetDefinitionImpl@1816fb6{#///@response/@dataAccessDesign/@dataSetDesign/@resultSets/@resultSetDefinitions.0}' must be set at org.eclipse.datatools.connectivity.oda.design.util.DesignUtil.validateObject(DesignUtil.java:82) at org.eclipse.birt.report.model.adapter.oda.ModelOdaAdapter.createDataSetHandle(ModelOdaAdapter.java:124) at org.eclipse.birt.report.designer.data.ui.util.DTPUtil.createOdaDataSetHandle(DTPUtil.java:169) at org.eclipse.birt.report.designer.data.ui.dataset.DataSetBasePage.createDataSetODAV3(DataSetBasePage.java:653) at org.eclipse.birt.report.designer.data.ui.dataset.DataSetBasePage.createSelectedDataSet(DataSetBasePage.java:616) ... 38 more

Files changed in fix:
data/org.eclipse.birt.report.data.oda.jdbc.ui/src/org/eclipse/birt/report/data/oda/jdbc/ui/editors/SQLDataSetEditorPage.java data/org.eclipse.birt.report.data.oda.jdbc/src/org/eclipse/birt/report/data/oda/jdbc/CallStatement.java