Tuesday, November 30, 2010

JBO-25013: TooManyObjectsException

oracle.jbo.TooManyObjectsException: JBO-25013: Too many objects match the primary key oracle.jbo.Key[Key null ].

Ok so for you it may be trying to insert a duplicate record this should explain your problem (also check trigger they could be the cause.)

NOTE: You can also try to create a new duplicate EO if you have a page with two VO's using the same EO. This could sort your problems.

For me I needed to add a launch listener on my LOV and clear the cache of my vo.

LOV
<af:inputListOfValues id="NameId"
  popupTitle="#{bindings.Name.hints.label}"
  value="#{bindings.RolName1.inputValue}"
  label="#{bindings.RolName1.hints.label}"
  model="#{bindings.RolName1.listOfValuesModel}"
  required="#{bindings.RolName1.hints.mandatory}"
  columns="#{bindings.RolName1.hints.displayWidth}"
  shortDesc="#{bindings.RolName1.hints.tooltip}"
  launchPopupListener="#{backingBeanScope.backingBean.launchPopup}">

CODE

public void launchLOVPopup(LaunchPopupEvent launchPopupEvent){
clearVOCache("YourAMDataControl", "ViewNameVO");
}

public void clearVOCache(String amName, String voName){
ApplicationModule appModule = getApplicationModule(amName);
ViewObject vo = appModule.findViewObject(voName);
vo.clearCache();
}

No comments:

Post a Comment