【问题标题】:birt won't save data set, "the structure is invalid" errorbirt 不会保存数据集,“结构无效”错误
【发布时间】:2014-03-11 05:10:41
【问题描述】:

我们正在尝试在重新创建数据库后更新 BIRT 报告项目。所以我输入了新的查询,但是当我移动到“参数”选项卡(或任何选项卡)时,错误:

The structure is floating, and its handler is invalid!

弹出,并在错误日志中显示以下错误:

Problems occurred when invoking code from plug-in: "org.eclipse.jface".

然后,其他任何事情都不起作用;更改未注册(选项卡中的库名称附近没有星号),我无法保存任何内容。

堆栈跟踪:

java.lang.RuntimeException: The structure is floating, and its handle is invalid!
    at org.eclipse.birt.report.model.api.MemberHandle.<init>(MemberHandle.java:59)
    at org.eclipse.birt.report.model.api.DataSetParameterHandle.getMember(DataSetParameterHandle.java:372)
    at org.eclipse.birt.report.model.api.StructureHandle.getProperty(StructureHandle.java:187)
    at org.eclipse.birt.report.model.api.DataSetParameterHandle.getPosition(DataSetParameterHandle.java:184)
    at org.eclipse.birt.report.model.adapter.oda.impl.DataSetParameterAdapter.getPositions(DataSetParameterAdapter.java:1431)
    at org.eclipse.birt.report.model.adapter.oda.impl.DataSetParameterAdapter.getDriverDefinedParameters(DataSetParameterAdapter.java:1384)
    at org.eclipse.birt.report.model.adapter.oda.impl.DataSetAdapter.updateDesignerValue(DataSetAdapter.java:982)
    at org.eclipse.birt.report.model.adapter.oda.impl.DataSetAdapter.updateDataSetHandle(DataSetAdapter.java:929)
    at org.eclipse.birt.report.model.adapter.oda.impl.DataSetAdapter.updateDataSetHandle(DataSetAdapter.java:410)
    at org.eclipse.birt.report.model.adapter.oda.impl.ModelOdaAdapter.updateDataSetHandle(ModelOdaAdapter.java:188)
    at org.eclipse.birt.report.model.adapter.oda.ModelOdaAdapter.updateDataSetHandle(ModelOdaAdapter.java:203)
    at org.eclipse.birt.report.designer.data.ui.util.DTPUtil.updateDataSetHandle(DTPUtil.java:207)
    at org.eclipse.birt.report.designer.data.ui.dataset.PropertyPageWrapper.canLeave(PropertyPageWrapper.java:132)
    at org.eclipse.birt.report.designer.data.ui.property.AbstractPropertyDialog.showPage(AbstractPropertyDialog.java:568)
    at org.eclipse.birt.report.designer.data.ui.property.AbstractPropertyDialog.showSelectionPage(AbstractPropertyDialog.java:482)
    at org.eclipse.birt.report.designer.data.ui.dataset.DataSetEditor.showSelectionPage(DataSetEditor.java:913)
    at org.eclipse.birt.report.designer.data.ui.property.AbstractPropertyDialog$2$1.run(AbstractPropertyDialog.java:438)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.birt.report.designer.data.ui.property.AbstractPropertyDialog$2.selectionChanged(AbstractPropertyDialog.java:433)
    at org.eclipse.jface.viewers.Viewer$2.run(Viewer.java:164)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
    at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
    at org.eclipse.jface.viewers.Viewer.fireSelectionChanged(Viewer.java:162)
    at org.eclipse.jface.viewers.StructuredViewer.updateSelection(StructuredViewer.java:2188)
    at org.eclipse.jface.viewers.StructuredViewer.handleSelect(StructuredViewer.java:1211)
    at org.eclipse.jface.viewers.StructuredViewer$4.widgetSelected(StructuredViewer.java:1241)
    at org.eclipse.jface.util.OpenStrategy.fireSelectionEvent(OpenStrategy.java:239)
    at org.eclipse.jface.util.OpenStrategy.access$4(OpenStrategy.java:233)
    at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:403)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4170)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
    at org.eclipse.jface.window.Window.runEventLoop(Window.java:826)
    at org.eclipse.jface.window.Window.open(Window.java:802)
    at org.eclipse.birt.report.designer.ui.dialogs.BaseDialog.open(BaseDialog.java:111)
    at org.eclipse.birt.report.designer.data.ui.providers.EditableDataSetNodeProvider.performEdit(EditableDataSetNodeProvider.java:102)
    at org.eclipse.birt.report.designer.internal.ui.views.DefaultNodeProvider.performRequest(DefaultNodeProvider.java:472)
    at org.eclipse.birt.report.designer.internal.ui.views.actions.EditAction.doAction(EditAction.java:85)
    at org.eclipse.birt.report.designer.internal.ui.views.actions.AbstractElementAction.run(AbstractElementAction.java:70)
    at org.eclipse.birt.report.designer.internal.ui.views.RenameListener.doubleClick(RenameListener.java:214)
    at org.eclipse.jface.viewers.StructuredViewer$1.run(StructuredViewer.java:845)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
    at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
    at org.eclipse.jface.viewers.StructuredViewer.fireDoubleClick(StructuredViewer.java:843)
    at org.eclipse.jface.viewers.AbstractTreeViewer.handleDoubleSelect(AbstractTreeViewer.java:1477)
    at org.eclipse.jface.viewers.StructuredViewer$4.widgetDefaultSelected(StructuredViewer.java:1246)
    at org.eclipse.jface.util.OpenStrategy.fireDefaultSelectionEvent(OpenStrategy.java:249)
    at org.eclipse.jface.util.OpenStrategy.access$0(OpenStrategy.java:246)
    at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:307)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4170)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
    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(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:636)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1450)

我不知道要搜索什么;我遇到的所有结果都来自不同的错误。从“-clean”开始是行不通的,重新创建 BIRT 报告项目也行不通……任何朝着正确方向轻推都会有足够的帮助。

问候, 切斯

【问题讨论】:

  • 因为 BIRT 报告实际上是后台的 XML,所以拖放界面并不总是完全符合您的预期。您是否能够通过使用新数据库作为源从头开始构建报告来重现此问题?
  • 如果我从零开始,则根本不会出现错误。旧表格可能已损坏,我不知道。这是我第一次接触 BIRT,我仍在尝试感受它。
  • 很高兴听到您再次启动并运行。

标签: java eclipse birt


【解决方案1】:

我遇到了同样的错误,但执行以下步骤帮助了我。(我正在处理一张桌子)

  1. 删除数据集
  2. 选择表格,在属性编辑器选项卡下,点击绑定选项卡,勾选数据集并选择无。
  3. 您应该会收到一个提示,询问您是否要清除所有现有的数据字段信息,单击“是”。

现在将清除所有引用已删除数据集的数据绑定,瞧……继续您的工作。让我知道这是否也适合您。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-11
    • 1970-01-01
    • 2015-10-03
    • 1970-01-01
    • 1970-01-01
    • 2021-05-11
    • 2015-10-23
    • 1970-01-01
    相关资源
    最近更新 更多