[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.technology.dali] Re: Generate Entities from Tables not working

Thanks for your informative reply Brian:

Currently, Dali has a number of database-specific adapters that allow us to
know
what to expect from the various databases. These adapters are keyed by the vendor name returned by the DTP model. Currently, we have 3 nearly identical adapters for DB2 with the following names:
DB2 UDB
DB2 UDB iSeries
DB2 UDB zSeries

DB2 UDB iSeries -- that is me!!!

If the DTP model does not match any of these names, we use a "default"
adapter....

That may be the problem, the DTP model my iSeries (i5 as it is now called, ver 5, release 4 of the OS) may not match what Dali expects for DB2 UDB iSeries and falls through to the default.

If you would like to help us out, you could debug the Dali code and
determine
what Dali has screwed up for your particular configuration. :-)

I'd be happy to help out! I have extened the eclipselink DB2Platform class for the iSeries and contributed it. Tell me what to do. I can also test against an IBM iSeries V5R4 for you.


I set up a separate Eclipse with the latest for these test, see previous post.

Also, hopefully, we will fix, or allow workarounds to, some of these sorts
of
problems when we add UI support for catalogs[1].

Is there anyway to tell Dali "hey use this adapter" instead of letting it guess? Perhaps a property in persistence.xml?


I have to specify the database to eclipselink when I am not using Dali(eclipselink.target-database) so coding a property isn't a hardship.

Regards
Bill Blalock

PS When opening persistence.xml with the database connection open I'll get errors. No error when the connection is closed.

This is the stack trace in the detail view which is opened instead of the persistence.xml editor. I've included them incase they are related (first set of messages are from DTPDatabaseWrappers you mentioned).

java.lang.UnsupportedOperationException
at org.eclipse.jpt.db.internal.DTPDatabaseWrapper$Vendor.getDefaultCatalog(DTPDatabaseWrapper.java:475)
at org.eclipse.jpt.db.internal.DTPDatabaseWrapper.buildDefaultCatalog(DTPDatabaseWrapper.java:257)
at org.eclipse.jpt.db.internal.DTPDatabaseWrapper.getDefaultCatalog(DTPDatabaseWrapper.java:251)
at org.eclipse.jpt.db.internal.DTPDatabaseWrapper.getDefaultCatalog(DTPDatabaseWrapper.java:1)
at org.eclipse.jpt.core.internal.GenericJpaProject.getDatabaseDefaultDbCatalog(GenericJpaProject.java:283)
at org.eclipse.jpt.core.internal.GenericJpaProject.getDatabaseDefaultCatalog(GenericJpaProject.java:277)
at org.eclipse.jpt.core.internal.GenericJpaProject.getDefaultCatalog(GenericJpaProject.java:273)
at org.eclipse.jpt.core.internal.context.persistence.AbstractPersistenceUnit.buildDefaultCatalog(AbstractPersistenceUnit.java:1056)
at org.eclipse.jpt.core.internal.context.persistence.AbstractPersistenceUnit.initializePersistenceUnitDefaults(AbstractPersistenceUnit.java:776)
at org.eclipse.jpt.core.internal.context.persistence.AbstractPersistenceUnit.initialize(AbstractPersistenceUnit.java:735)
at org.eclipse.jpt.eclipselink.core.internal.context.persistence.EclipseLinkPersistenceUnit.<init>(EclipseLinkPersistenceUnit.java:78)
at org.eclipse.jpt.eclipselink.core.internal.EclipseLinkJpaFactory.buildPersistenceUnit(EclipseLinkJpaFactory.java:129)
at org.eclipse.jpt.core.internal.context.persistence.GenericPersistence.createPersistenceUnit(GenericPersistence.java:155)
at org.eclipse.jpt.core.internal.context.persistence.GenericPersistence.initializePersistenceUnits(GenericPersistence.java:128)
at org.eclipse.jpt.core.internal.context.persistence.GenericPersistence.initialize(GenericPersistence.java:122)
at org.eclipse.jpt.core.internal.context.persistence.GenericPersistence.<init>(GenericPersistence.java:43)
at org.eclipse.jpt.core.internal.platform.GenericJpaFactory.buildPersistence(GenericJpaFactory.java:303)
at org.eclipse.jpt.core.internal.context.persistence.GenericPersistenceXml.buildPersistence(GenericPersistenceXml.java:161)
at org.eclipse.jpt.core.internal.context.persistence.GenericPersistenceXml.initialize(GenericPersistenceXml.java:120)
at org.eclipse.jpt.core.internal.context.persistence.GenericPersistenceXml.<init>(GenericPersistenceXml.java:44)
at org.eclipse.jpt.core.internal.platform.GenericJpaFactory.buildPersistenceXml(GenericJpaFactory.java:299)
at org.eclipse.jpt.core.internal.context.GenericRootContextNode.buildPersistenceXml(GenericRootContextNode.java:178)
at org.eclipse.jpt.core.internal.context.GenericRootContextNode.<init>(GenericRootContextNode.java:60)
at org.eclipse.jpt.core.internal.platform.GenericJpaFactory.buildRootContextNode(GenericJpaFactory.java:282)
at org.eclipse.jpt.core.internal.GenericJpaProject.buildRootContextNode(GenericJpaProject.java:200)
at org.eclipse.jpt.core.internal.GenericJpaProject.<init>(GenericJpaProject.java:159)
at org.eclipse.jpt.core.internal.platform.GenericJpaFactory.buildJpaProject(GenericJpaFactory.java:259)
at org.eclipse.jpt.core.internal.GenericJpaModel$DefaultJpaProjectHolder.buildJpaProject(GenericJpaModel.java:417)
at org.eclipse.jpt.core.internal.GenericJpaModel$DefaultJpaProjectHolder.jpaProject(GenericJpaModel.java:405)
at org.eclipse.jpt.core.internal.GenericJpaModel.getJpaProject(GenericJpaModel.java:75)
at org.eclipse.jpt.core.internal.JpaModelManager.getJpaProject(JpaModelManager.java:178)
at org.eclipse.jpt.core.JptCorePlugin.getJpaProject(JptCorePlugin.java:156)
at org.eclipse.jpt.ui.internal.editors.PersistenceEditor.jpaProject(PersistenceEditor.java:303)
at org.eclipse.jpt.ui.internal.editors.PersistenceEditor.addPersistenceUnitPages(PersistenceEditor.java:119)
at org.eclipse.jpt.ui.internal.editors.PersistenceEditor.addPages(PersistenceEditor.java:109)
at org.eclipse.ui.forms.editor.FormEditor.createPages(FormEditor.java:146)
at org.eclipse.ui.part.MultiPageEditorPart.createPartControl(MultiPageEditorPart.java:310)
at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:661)
at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:428)
at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:594)
at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:306)
at org.eclipse.ui.internal.presentations.PresentablePart.setVisible(PresentablePart.java:180)
at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.select(PresentablePartFolder.java:270)
at org.eclipse.ui.internal.presentations.util.LeftToRightTabOrder.select(LeftToRightTabOrder.java:65)
at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.selectPart(TabbedStackPresentation.java:473)
at org.eclipse.ui.internal.PartStack.refreshPresentationSelection(PartStack.java:1256)
at org.eclipse.ui.internal.PartStack.setSelection(PartStack.java:1209)
at org.eclipse.ui.internal.PartStack.showPart(PartStack.java:1608)
at org.eclipse.ui.internal.PartStack.add(PartStack.java:499)
at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:103)
at org.eclipse.ui.internal.PartStack.add(PartStack.java:485)
at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:112)
at org.eclipse.ui.internal.EditorSashContainer.addEditor(EditorSashContainer.java:63)
at org.eclipse.ui.internal.EditorAreaHelper.addToLayout(EditorAreaHelper.java:217)
at org.eclipse.ui.internal.EditorAreaHelper.addEditor(EditorAreaHelper.java:207)
at org.eclipse.ui.internal.EditorManager.createEditorTab(EditorManager.java:779)
at org.eclipse.ui.internal.EditorManager.openEditorFromDescriptor(EditorManager.java:678)
at org.eclipse.ui.internal.EditorManager.openEditor(EditorManager.java:639)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2817)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2729)
at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2721)
at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2673)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2668)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2652)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2643)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:646)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:605)
at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:318)
at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:160)
at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:228)
at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:207)
at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:274)
at org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:250)
at org.eclipse.jdt.internal.ui.navigator.OpenAndExpand.run(OpenAndExpand.java:50)
at org.eclipse.ui.actions.RetargetAction.run(RetargetAction.java:221)
at org.eclipse.ui.internal.navigator.CommonNavigatorManager$3.open(CommonNavigatorManager.java:184)
at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:820)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:880)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:818)
at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1079)
at org.eclipse.ui.navigator.CommonViewer.handleOpen(CommonViewer.java:372)
at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1183)
at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:263)
at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:257)
at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:297)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3823)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3422)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2384)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2348)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2200)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:495)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:490)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193)
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:386)
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:549)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
at org.eclipse.equinox.launcher.Main.run(Main.java:1236)