I'm pretty sure I've got it set up correctly (as you suggested) but I'm getting errors that getStore_storeRef() and getWarehouse_warehouseRef() are not implemented in LocationBeanCacheEntry... when I generate my deploy code. Websphere _has_ generated those abstract method signatures on the bean, but seems it can't/won't generate the implementations when it's generating deploy code.
I also get problems when I try to put in the CMR between the Warehouse and Store beans - deploy code generation falls over with this error :
Error during generation of deployment code: cols.size()==2, attrs.size()==0
>com.ibm.etools.ejbdeploy.EJBDeploymentException (Error during generation of deployment code: cols.size()==2, attrs.size()==0.)
com.ibm.etools.ejbdeploy.plugin.InternalErrorGenerationException: cols.size()==2, attrs.size()==0
at com.ibm.etools.ejbdeploy.gen20.jdbc.CMPAttributeMapHelper.createMapForRel(CMPAttributeMapHelper.java:253)
at com.ibm.etools.ejbdeploy.gen20.jdbc.CMPAttributeMapHelper.populateLists(CMPAttributeMapHelper.java(Compiled Code))
at com.ibm.etools.ejbdeploy.gen20.jdbc.CMPAttributeMapHelper.initAttributeMapperList(CMPAttributeMapHelper.java:378)
at com.ibm.etools.ejbdeploy.gen20.jdbc.QueryCacheHelper.<init>(QueryCacheHelper.java:30)
at com.ibm.etools.ejbdeploy.gen20.jdbc.QueryCacheCache.initQueries(QueryCacheCache.java:69)
at com.ibm.etools.ejbdeploy.gen20.jdbc.QueryCacheCache.init(QueryCacheCache.java:154)
at com.ibm.etools.ejbdeploy.plugin.EJBDeployOperation.runCMP(EJBDeployOperation.java:1501)
at com.ibm.etools.ejbdeploy.plugin.EJBDeployOperation.run(EJBDeployOperation.java:1364)
at com.ibm.etools.j2ee.common.ui.RunnableWithProgressWrapper.run(RunnableWithProgressWrapper.java:58)
at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:299)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:249)
at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java:720)
at com.ibm.etools.ejbdeploy.ui.plugin.DeployRMICBeansOperation.generateDeployCode(DeployRMICBeansOperation.java:245)
at com.ibm.etools.ejbdeploy.ui.plugin.DeployRMICBeansOperation.run(DeployRMICBeansOperation.java:555)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java(Compiled Code))
at com.ibm.etools.ejbdeploy.ui.plugin.DeployRMICPage.performFinish(DeployRMICPage.java:446)
at com.ibm.etools.ejbdeploy.ui.plugin.DeployRMICWizard.performFinish(DeployRMICWizard.java:83)
at org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDialog.java:577)
at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:312)
at org.eclipse.jface.dialogs.Dialog$1.widgetSelected(Dialog.java:407)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java(Compiled Code))
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java(Compiled Code))
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code))
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code))
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled Code))
at org.eclipse.jface.window.Window.runEventLoop(Window.java(Compiled Code))
at org.eclipse.jface.window.Window.open(Window.java:542)
at com.ibm.etools.ejbdeploy.ui.plugin.EJBDeployMenuAction.run(EJBDeployMenuAction.java:165)
at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:210)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:407)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent(ActionContributionItem.java(Compiled Code))
at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent(ActionContributionItem.java(Compiled Code))
at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent(ActionContributionItem.java(Compiled Code))
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java(Compiled Code))
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code))
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code))
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled Code))
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java(Compiled Code))
at org.eclipse.ui.internal.Workbench.run(Workbench.java:1326)
at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:831)
at org.eclipse.core.boot.BootLoader.run(BootLoader.java:462)
at java.lang.reflect.Method.invoke(Native Method)
at org.eclipse.core.launcher.Main.basicRun(Main.java:247)
at org.eclipse.core.launcher.Main.run(Main.java:703)
at org.eclipse.core.launcher.Main.main(Main.java:539)
Ugh, nasty! I noticed that when I put in the CMR between my Warehouse and Store, stuff gets added to the LocationBean to pass in the foreign key for Warehouse. So I created a CMR between Location and Warehouse (even though I don't really want one), mapped it etc etc and still got the above error.
Eek, help!
cheers
Tim