UnitOfWork / Update / EXCEPTION [TOPLINK-6004]

Hello!
I have an ItemObject which contains ItemLines (ValueHolder, Master-Detail).
I can update the (standard)Item-Objekt attributes, but how can i set the Itemlines-Object? Should i register the Itemlines-ValueHolder in the UnitOfWork? If this is a ValueHolder-Interface, should i read the collection from the database?
I get the following exception:
EXCEPTION [TOPLINK-6004] (TopLink - 9.0.3.2 (Build 429)): oracle.toplink.exceptions.QueryException
EXCEPTION DESCRIPTION: The object [linzag.imds.wdb.bo.model.bean.KnowledgeBranch@50], of class [class linzag.imds.wdb.bo.model.bean.KnowledgeBranch], with identity hashcode (System.identityHashCode()) [80],is not from this UnitOfWork object space, but the parent session's. The object was never registered in this UnitOfWork,but read from the parent session and related to an object registered in the UnitOfWork. Ensure that you are correctly registering your objects. If you are still having problems, you can use the UnitOfWork.validateObjectSpace() method to help debug where the error occurred. For more information, see the manual or FAQ.
regards
Harald.

Harald,
The simplest solution is to read in and register the ItemObject with a UnitOfWork (TX). Then the traversal of the indirect (ValueHolder) relationship will result in the collection of ItemLine objects automatically being registered.
At this point you can add, modify, or remove an ItemLine and the UnitOfWork.commit() will capture the change.
NOTE 1: If you want removal of an ItemLine from the collection to result in its deletion from the database make sure the 1:M relationship is marked as privately owned.
NOTE 2: For collection relationships such as this you do not need to use a ValueHolder for indirection. TopLink also support transparent indirection of collection relationships.
Doug

Similar Messages

  • EXCEPTION [TOPLINK-6004]

    Hello,
    we are using toplink as the persistence framework for a backoffice web application.
    We're sporadically getting this error.
    I have tried to reproduce the error and was "successful" in two kinds of situations:
    1. Configure the application server with a heapsize being too low for the application's realistic needs. In such a scenario the error was dependably reproducable.
    2. Start a business process, make some changes to uow-registered-objects, leave the process inactive for a time, maybe 20 to 30 minutes, then commit the work you've done before and the error will happen.
    In case of "normal" use of the business process nothing is wrong!
    It's a pity that we are not in the position to claim "normal usage".
    We're guessing if there perhaps are some toplink-internal weak references causing this behavior??
    Thanks for your help,
    Wolfgang

    Duplicate post.
    EXCEPTION [TOPLINK-6004]

  • While scheduling I am getting the Exception [TOPLINK-4002] Error

    Dear All,
    While scheduling I am getting the following Error
    Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException Internal Exception: java.sql.SQLException: No more data to read from socketError Code: 17410 Call:UPDATE SEQUENCE SET SEQ_COUNT = SEQ_COUNT + 1 WHERE SEQ_NAME = 'SUBSCRIPTION_ID_SEQ' Query:DataModifyQuery()
    Error Detail
    I am Using BI Publisher 10.1.3.3.1

    Yes, Please I need your support
    I have this issue related to this subject.
    But I have two databases Oracle 10g release 2 and the toplink have thi url jdbc
    jdbc:oracle:thin:@
    (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.33.12.38)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.33.12.39)(PORT = 1521))
    (LOAD_BALANCE = yes)
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = MITDB)
    (FAILOVER_MODE =(TYPE = SELECT)(METHOD = BASIC)(RETRIES = 180)(DELAY = 5))
    for connecting two databases, now when i try to submit button this message was thrown, i need to apply RAC
    [TopLink Warning]: 2008.03.24 06:56:40.101--ClientSession(27665811)--Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: No more data to read from socketError Code: 17410
    Call:UPDATE SEQUENCE SET SEQ_COUNT = SEQ_COUNT + 1 WHERE SEQ_NAME = 'IND_REG_REQ_SEQ'
    Query:DataModifyQuery()
    [TopLink Warning]: 2008.03.24 06:56:40.101--ClientSession(27665811)--Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: OALL8 is in an inconsistent state.Error Code: 0
    Call:SELECT SEQ_COUNT FROM SEQUENCE WHERE SEQ_NAME = 'IND_REG_REQ_SEQ'
    Query:ValueReadQuery()
    [TopLink Warning]: 2008.03.24 06:56:40.101--ClientSession(27665811)--Exception [TOPLINK-4011] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException
    Exception Description: Error preallocating sequence numbers. The sequence table information is not complete.
    [TopLink Warning]: 2008.03.24 06:56:40.101--ClientSession(27665811)--Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: Io exception: Software caused connection abort: socket write errorError Code: 17002
    Call:UPDATE SEQUENCE SET SEQ_COUNT = SEQ_COUNT + 1 WHERE SEQ_NAME = 'MITREQUEST_SEQ'
    Query:DataModifyQuery()
    [TopLink Warning]: 2008.03.24 06:56:40.101--ClientSession(27665811)--Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: Closed ConnectionError Code: 17008
    Call:SELECT SEQ_COUNT FROM SEQUENCE WHERE SEQ_NAME = 'MITREQUEST_SEQ'
    Query:ValueReadQuery()
    [TopLink Warning]: 2008.03.24 06:56:40.101--ClientSession(27665811)--Exception [TOPLINK-4011] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException
    Exception Description: Error preallocating sequence numbers. The sequence table information is not complete.
    [TopLink Warning]: 2008.03.24 06:56:40.101--ClientSession(27665811)--Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: Closed ConnectionError Code: 17008
    Message was edited by:
    Mohammed Amr.

  • EXCEPTION [TOPLINK-7056] The wrong object was registered into the UnitOfWor

    Hello,
    I am using Toplink 9.0.3.4. I have a one to many relationship defined. One DTOStep can have several DTOStepTexte. The XML descriptions for the relationship are:
    DTOStep:
                        <database-mapping>
                             <attribute-name>texteList</attribute-name>
                             <read-only>false</read-only>
                             <reference-class>com.bnpparibas.bfi.ttk.dto.DTOStepTexte</reference-class>
                             <is-private-owned>true</is-private-owned>
                             <uses-batch-reading>true</uses-batch-reading>
                             <indirection-policy>
                                  <mapping-indirection-policy>
                                       <type>oracle.toplink.internal.indirection.NoIndirectionPolicy</type>
                                  </mapping-indirection-policy>
                             </indirection-policy>
                             <container-policy>
                                  <mapping-container-policy>
                                       <container-class>java.util.ArrayList</container-class>
                                       <type>oracle.toplink.internal.queryframework.ListContainerPolicy</type>
                                  </mapping-container-policy>
                             </container-policy>
                             <ascending-order-by-query-key>noSeq</ascending-order-by-query-key>
                             <source-key-fields>
                                  <field>BATCH_SP2.ID_BATCH</field>
                             </source-key-fields>
                             <target-foreign-key-fields>
                                  <field>BATCH_SP2_TEXTE.ID_BATCH</field>
                             </target-foreign-key-fields>
                             <type>oracle.toplink.mappings.OneToManyMapping</type>
                        </database-mapping>
    DTOStepTexte:
                        <database-mapping>
                             <attribute-name>step</attribute-name>
                             <read-only>false</read-only>
                             <reference-class>com.bnpparibas.bfi.ttk.dto.DTOStep</reference-class>
                             <is-private-owned>true</is-private-owned>
                             <uses-batch-reading>true</uses-batch-reading>
                             <indirection-policy>
                                  <mapping-indirection-policy>
                                       <type>oracle.toplink.internal.indirection.NoIndirectionPolicy</type>
                                  </mapping-indirection-policy>
                             </indirection-policy>
                             <uses-joining>true</uses-joining>
                             <foreign-key-fields>
                                  <field>BATCH_SP2_TEXTE.ID_BATCH</field>
                             </foreign-key-fields>
                             <source-to-target-key-field-associations>
                                  <association>
                                       <association-key>BATCH_SP2_TEXTE.ID_BATCH</association-key>
                                       <association-value>BATCH_SP2.ID_BATCH</association-value>
                                  </association>
                             </source-to-target-key-field-associations>
                             <type>oracle.toplink.mappings.OneToOneMapping</type>
                        </database-mapping>
    I do the following:
    - A DTOStep containing 4 DTOStepTexte is read from the Oracle database in a session bean and sent to a swing client.
    - The DTOStep is modified on the client.
    - The modified DTOStep is sent back to the session bean where the following code is executed:
    public DTOStep modifyStep(DTOStep step) throws TTKDataNotFoundException
    Session session = null;
    try
         // Récupération de la session.
         session = getSession();
         // Récupération de l'unité de travail.
         UnitOfWork uow = session.getActiveUnitOfWork();
         uow.performFullValidation();
         // Vérification que le step existe. Lecture sur clé primaire.
         if (!session.doesObjectExist(step))
         throw new TTKDataNotFoundException();
         // Registration du step à modifier en incorporant les modifs utilisateur.
         m_logger.debug("step = " + FmkCommonUtilities.toStringFromGetters(step));
         DTOStep stepClone = (DTOStep) uow.mergeCloneWithReferences(step);
         m_logger.debug("stepClone = " + FmkCommonUtilities.toStringFromGetters(stepClone));
         // Mise à jour des champs techniques.
         Date date = new Date(System.currentTimeMillis());
         stepClone.setCUtiMaj(getCUti());
         stepClone.setDMaj(date);
         // Renvoi du step tel que dans la base.
         // Une copie en est faite puisque le clone ne doit pas être
         // utilisé en dehors de la transaction.
         DTOUtilities.setFromGetters(stepClone, step);
         return step;
    catch (TTKDataNotFoundException e)
    context.setRollbackOnly();
    throw e;
    catch (EJBException e)
    context.setRollbackOnly();
    throw e;
    catch (Throwable t)
    context.setRollbackOnly();
    m_logger.error("Error in " + FmkCommonUtilities.getCurrentMethodName(), t);
    throw new EJBException(t.toString());
    finally
    // On libère la session.
    if (session != null)
    session.release();
    I have the folowing behaviour:
    - if the list of DTOStepTexte is not modified, everything is ok.
    - if a new DTOStepTexte is added, everything is ok.
    - if a DTOStepTexte is removed, I have the following exception on the mergeCloneWithReferences() call:
    EXCEPTION [TOPLINK-7056] (TopLink - 9.0.3.4 (Build 432)): oracle.toplink.exceptions.ValidationException
    EXCEPTION DESCRIPTION: The wrong object was registered into the UnitOfWork. The object [com.bnpparibas.bfi.ttk.dto.DTOStep@1a772d] should be the object from the parent cache [com.bnpparibas.bfi.ttk.dto.DTOStep@2cfd62].
         at oracle.toplink.exceptions.ValidationException.wrongObjectRegistered(Unknown Source)
         at oracle.toplink.publicinterface.UnitOfWork.checkExistence(Unknown Source)
         at oracle.toplink.publicinterface.UnitOfWork.internalRegisterObject(Unknown Source)
         at oracle.toplink.internal.sessions.MergeManager.getTargetVersionOfSourceObject(Unknown Source)
         at oracle.toplink.mappings.ObjectReferenceMapping.mergeIntoObject(Unknown Source)
         at oracle.toplink.internal.descriptors.ObjectBuilder.mergeIntoObject(Unknown Source)
         at oracle.toplink.internal.sessions.MergeManager.mergeChangesOfCloneIntoWorkingCopy(Unknown Source)
         at oracle.toplink.internal.sessions.MergeManager.mergeChanges(Unknown Source)
         at oracle.toplink.mappings.CollectionMapping.mergeIntoObject(Unknown Source)
         at oracle.toplink.internal.descriptors.ObjectBuilder.mergeIntoObject(Unknown Source)
         at oracle.toplink.internal.sessions.MergeManager.mergeChangesOfCloneIntoWorkingCopy(Unknown Source)
         at oracle.toplink.internal.sessions.MergeManager.mergeChanges(Unknown Source)
         at oracle.toplink.publicinterface.UnitOfWork.mergeCloneWithReferences(Unknown Source)
         at com.bnpparibas.bfi.ttk.server.ejb.TestToplinkServiceBean.modifyStep(TestToplinkServiceBean.java:795)
         at TestToplinkService_StatelessSessionBeanWrapper2.modifyStep(TestToplinkService_StatelessSessionBeanWrapper2.java:2032)
         at java.lang.reflect.Method.invoke(Native Method)
         at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:119)
         at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:48)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
         at java.lang.Thread.run(Thread.java:479)
    Can someone please tell me what is wrong in the way I use toplink ?
    Thank you in advance for your answer.
    Best regards.
    Pierre Laroche

    What does the method DTOUtilities.setFromGetters(stepClone, step); do? If you are copying from step into stepClone you must ensure that all of the references from step are registered first. You should not need to perform this copy anyway as the mergeCloneWithReferences would have copied the data from step.
    --Gordon                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Database adapter update exception

    I have written BPEL process that polls view for data and sends the data to another database. Till this point it is working good. Then I created partner link to update status of column of base table(XYZ_TABLE) using operation UPDATE has total 90 columns (not view) as UNDER_PROCESS. I did mappings to primary coloum and status of XYZ_TABLE. When i run the process it is throwing below error. Please help resolve this error.
    Exception Description: java.sql.BatchUpdateException: ORA-01401: inserted value
    too large for column
    Process1_1.0.jar/update_status_code.wsdl [ update_status_code_ptt::update(QtmCmger
    tRfqExtnCollection) ] - Could not invoke operation 'update' against the 'Databas
    e Adapter' due to:
    ORABPEL-11616
    DBWriteInteractionSpec Execute Failed Exception.
    unknown failed. Descriptor name: [unknown].
    Caused by Exception [TOPLINK-4002] (OracleAS TopLink - 10g (9.0.4.5) (Build 0409
    30)): oracle.toplink.exceptions.DatabaseException
    Exception Description: java.sql.BatchUpdateException: ORA-01401: inserted value
    too large for column
    Internal Exception: java.sql.BatchUpdateException: ORA-01401: inserted value too
    large for column
    Error Code: 1401.
    Message was edited by:
    user514348

    Hi there,
    if you have 90 columns it is very likely that one of these is being passed a value that is too large.
    Unfortunately the inserted value too large for column exception never tells you which column it is, so it is not fun.
    But you can turn on logging to see the exact sql, and the bind values for each column. That should give you a clue.
    To turn on logging go to your bpel console, manage bpel domain -> logging, and set either or both of these two for all dbadapter logging.
    "...activation" DEBUG (inbound polling receive)
    "...ws" DEBUG (outbound insert/select/update invoke)
    Thanks
    Steve

  • Toplink Exception: caused by EXCEPTION [TOPLINK-125]

    Hi,
    Sorry i can't provide much info at the moment, but this has just been passed on from a colleague at work.
    The following error has occurred now that we have temporarily set all descriptors to use noIdentityMap().
    It does not happen when caching is switched on.
    Jul 01, 2003 06:32:36 PM com.aon.ame.quotation.ejb.QuotationBean updateSectionQuotation
    INFO: Toplink Exception: caused by EXCEPTION [TOPLINK-125] (3.6.4 (build 245)): TOPLink.Public.Exceptions.DescriptorException
    EXCEPTION DESCRIPTION: The mapping for the attribute [underwritingCompany] uses indirection, and so must be initialized to a new ValueHolder. Currently the value is: [null].
    MAPPING: TOPLink.Public.Mappings.OneToOneMapping[underwritingCompany]
    DESCRIPTOR: Descriptor(com.aon.ame.entities.UnderwritingBranch --> [DatabaseTable(AME2DATA.UNDERWRITING_BRANCH)]):
    EXCEPTION DESCRIPTION: The mapping for the attribute [underwritingCompany] uses indirection, and so must be initialized to a new ValueHolder. Currently the value is: [null].
    MAPPING: TOPLink.Public.Mappings.OneToOneMapping[underwritingCompany]
    DESCRIPTOR: Descriptor(com.aon.ame.entities.UnderwritingBranch --> [DatabaseTable(AME2DATA.UNDERWRITING_BRANCH)])
    LOCAL EXCEPTION STACK:
    EXCEPTION [TOPLINK-125] (3.6.4 (build 245)): TOPLink.Public.Exceptions.DescriptorException
    EXCEPTION DESCRIPTION: The mapping for the attribute [underwritingCompany] uses indirection, and so must be initialized to a new ValueHolder. Currently the value is: [null].
    MAPPING: TOPLink.Public.Mappings.OneToOneMapping[underwritingCompany]
    DESCRIPTOR: Descriptor(com.aon.ame.entities.UnderwritingBranch --> [DatabaseTable(AME2DATA.UNDERWRITING_BRANCH)])
         at java.lang.Throwable.fillInStackTrace(Native Method)
         at java.lang.Throwable.fillInStackTrace(Compiled Code)
         at java.lang.Throwable.<init>(Compiled Code)
         at java.lang.Exception.<init>(Compiled Code)
         at java.lang.RuntimeException.<init>(Compiled Code)
         at TOPLink.Public.Exceptions.TOPLinkException.<init>(Compiled Code)
         at TOPLink.Public.Exceptions.ValidationException.<init>(Compiled Code)
         at TOPLink.Public.Exceptions.DescriptorException.<init>(DescriptorException.java:176)
         at TOPLink.Public.Exceptions.DescriptorException.<init>(DescriptorException.java:183)
         at TOPLink.Public.Exceptions.DescriptorException.valueHolderInstantiationMismatch(DescriptorException.java:1363)
         at TOPLink.Private.Indirection.BasicIndirectionPolicy.validateAttributeOfInstantiatedObject(Compiled Code)
         at TOPLink.Public.Mappings.ForeignReferenceMapping.getAttributeValueFromObject(Compiled Code)
         at TOPLink.Public.Mappings.ForeignReferenceMapping.buildClone(Compiled Code)
         at TOPLink.Private.Descriptors.ObjectBuilder.populateAttributesForClone(Compiled Code)
         at TOPLink.Public.PublicInterface.UnitOfWork.cloneAndRegisterObject(Compiled Code)
         at TOPLink.Public.PublicInterface.UnitOfWork.checkExistence(Compiled Code)
         at TOPLink.Public.PublicInterface.UnitOfWork.internalRegisterObject(Compiled Code)
         at TOPLink.Public.PublicInterface.UnitOfWork.registerObject(Compiled Code)
         at com.aon.ame.quotation.ejb.QuotationBean.updateSectionQuotation(Compiled Code)
         at com.aon.ame.quotation.ejb.EJSRemoteQuotation.updateSectionQuotation(EJSRemoteQuotation.java:2418)
         at com.aon.ame.quotation.ejb._Quotation_BaseStub.updateSectionQuotation(_Quotation_BaseStub.java:4146)
         at com.aon.ame.quotation.ejb._Quotation_Stub.updateSectionQuotation(Compiled Code)
         at com.aon.ame.quotation.struts.action.ViewSpecialEndorsementsAction.doUpdateBrokerSpecialEndorsement(Compiled Code)
         at com.aon.ame.quotation.struts.action.ViewSpecialEndorsementsAction.doUpdateWording(ViewSpecialEndorsementsAction.java:551)
         at com.aon.ame.quotation.struts.action.ViewSpecialEndorsementsAction.amePerform(ViewSpecialEndorsementsAction.java:127)
         at com.aon.ame.struts.action.AmeBaseAction.aonPerform(AmeBaseAction.java:48)
         at com.aon.struts.action.BaseAction.perform(Compiled Code)
         at org.apache.struts.action.ActionServlet.processActionPerform(Compiled Code)
         at org.apache.struts.action.ActionServlet.process(Compiled Code)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:510)
         at javax.servlet.http.HttpServlet.service(Compiled Code)
         at javax.servlet.http.HttpServlet.service(Compiled Code)
         at com.ibm.servlet.engine.webapp.StrictServletInstance.doService(Compiled Code)
         at com.ibm.servlet.engine.webapp.StrictLifecycleServlet._service(Compiled Code)
         at com.ibm.servlet.engine.webapp.IdleServletState.service(Compiled Code)
         at com.ibm.servlet.engine.webapp.StrictLifecycleServlet.service(Compiled Code)
         at com.ibm.servlet.engine.webapp.ServletInstance.service(Compiled Code)
         at com.ibm.servlet.engine.webapp.ValidServletReferenceState.dispatch(Compiled Code)
         at com.ibm.servlet.engine.webapp.ServletInstanceReference.dispatch(Compiled Code)
         at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.handleWebAppDispatch(Compiled Code)
         at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.dispatch(Compiled Code)
         at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.forward(Compiled Code)
         at com.ibm.servlet.engine.srt.WebAppInvoker.doForward(Compiled Code)
         at com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook(Compiled Code)
         at com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation(Compiled Code)
         at com.ibm.servlet.engine.invocation.CacheableInvocationContext.invoke(Compiled Code)
         at com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI(Compiled Code)
         at com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service(Compiled Code)
         at com.ibm.servlet.engine.oselistener.SQEventListenerImp$ServiceRunnable.run(Compiled Code)
         at com.ibm.servlet.engine.oselistener.SQEventListenerImp.notifySQEvent(Compiled Code)
         at com.ibm.servlet.engine.oselistener.serverqueue.SQEventSource.notifyEvent(Compiled Code)
         at com.ibm.servlet.engine.oselistener.serverqueue.SQWrapperEventSource$SelectRunnable.notifyService(Compiled Code)
         at com.ibm.servlet.engine.oselistener.serverqueue.SQWrapperEventSource$SelectRunnable.run(Compiled Code)
         at com.ibm.servlet.engine.oselistener.outofproc.OutOfProcThread$CtlRunnable.run(Compiled Code)
         at java.lang.Thread.run(Compiled Code)
    Jul 01, 2003 06:32:36 PM com.aon.struts.action.BaseAction perform
    SEVERE: com.aon.ame.quotation.struts.action.ViewSpecialEndorsementsAction.aonPerform() threw an exception: RemoteException occurred in server thread; nested exception is:
         com.ibm.ejs.container.UncheckedException: ; nested exception is:
         EXCEPTION [TOPLINK-125] (3.6.4 (build 245)): TOPLink.Public.Exceptions.DescriptorException
    EXCEPTION DESCRIPTION: The mapping for the attribute [underwritingCompany] uses indirection, and so must be initialized to a new ValueHolder. Currently the value is: [null].
    Can anyone shed any light on why this might have happened?
    Many thanks.

    I don't see how caching is affected by this, but the exception is complaining that you have a relationship that uses indirection and have not instantiated the value holders.
    I.e.,
    Customer has 1-1 to Address, and you're using ValueHolderInterface for the type. Either in the constructor or in the declaration of the attribute, you need to init the value holder. You should do the same for 1-M's also (unless you're using transparent indirection) For example:
    public class Customer {
    String name;
    String title;
    ValueHolderInterface address = new ValueHolder();
    ValueHolderInterface orders = new ValueHolder(new Vector());

  • Copy entity between EntityManagers - Exception TOPLINK-7251

    I am trying to copy rows from one database to another using Toplink. The tables have a composite primary key. Sample.java copies over three thousand rows successfully before an exception.
    h3. Configuration
            <persistence-unit name="STLMOSQL">
              <provider>oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider</provider>
              <class>jpa.Ineligiblereasonxref</class>
              <class>jpa.IneligiblereasonxrefPK</class>
         </persistence-unit>
         <persistence-unit name="DataWareHouse">
              <provider>oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider</provider>
              <class>jpa.Ineligiblereasonxref</class>
              <class>jpa.IneligiblereasonxrefPK</class>
         </persistence-unit>
              </properties>
         </persistence-unit>h3. Sample.java
       public static void main(String[] args) {
          EntityManagerFactory emf1 = Persistence.createEntityManagerFactory("em1");
          EntityManager em1 = emf1.createEntityManager();
          EntityManagerFactory emf2 = Persistence.createEntityManagerFactory("em2");
          EntityManager em2 = emf2.createEntityManager();
          try {
             Query q = em1.createQuery("Select i from Ineligiblereasonxref i") ;
             List<Ineligiblereasonxref> xrefs = (List<Ineligiblereasonxref>) q.getResultList();
             em1.clear();
             for(Ineligiblereasonxref xref :  xrefs){
                  em2.getTransaction().begin();
                  em2.merge(xref);
                  em2.getTransaction().commit();
          }finally {
              em2.close();
              emf2.close();
              em1.close();
              emf1.close();
       }h3. Ineligiblereasonxref.java
    @Entity
    public class Ineligiblereasonxref implements Serializable {
         @EmbeddedId
         private IneligiblereasonxrefPK pk;
         private String ineligiblereasoncode;
            ... deleted ...
    }h3. IneligiblereasonxrefPK.java
    @Embeddable
    public class IneligiblereasonxrefPK implements Serializable {
         private String sourceineligiblereasoncode;
         private long datasourceid;
         private long sourcetableid;
            ... deleted ...
    }h3. Exception
    Exception [TOPLINK-7251] (Oracle TopLink Essentials - 2.0.1 (Build b09d-fcs (12/06/2007))): oracle.toplink.essentials.exceptions.ValidationException
    Exception Description: The attribute [sourceineligiblereasoncode] of class [jpa.IneligiblereasonxrefPK] is mapped to a primary key column in the database. Updates are not allowed.
         at oracle.toplink.essentials.exceptions.ValidationException.primaryKeyUpdateDisallowed(ValidationException.java:2222)
         at oracle.toplink.essentials.mappings.foundation.AbstractDirectMapping.writeFromObjectIntoRowWithChangeRecord(AbstractDirectMapping.java:750)
         at oracle.toplink.essentials.internal.descriptors.ObjectBuilder.buildRowWithChangeSet(ObjectBuilder.java:837)Edited by: timmaryson on May 11, 2009 1:52 PM

    Thanks for the reply Chris. I actually had tried this, but it didn't help. I did find the problem though. Maybe someone else may run into this in the future, so I will explain.
    I am copying rows between databases with different character set collations. The first database is case sensitive. The second database is case insensitive.
    The first database has one row with the key '1,394,CM' and and another row with the key '1,394,cm'. The second database treats these as the same.
    merge() flags this as an error when it notices that the combination of the new and old objects yields a new key.
    I changed the collation to be case sensitive on MS SQL Server. [http://msdn.microsoft.com/en-us/library/aa258233(SQL.80).aspx]
    CREATE TABLE  INELIGIBLEREASONXREF (
        SOURCEINELIGIBLEREASONCODE varchar(10) COLLATE SQL_Latin1_General_CP1_CS_AS NOT NULL,
    )CP1 - Default code page
    CS - Case Sensitive.
    AS - Accent Sensitive
    I am interested to know if Toplink's behavior is "correct". Some users may wish to configure this behavior.
    I did not find any reference to collation nor case sensitivity in "JSR 220: Enterprise JavaBeansTM,Version 3.0
    Java Persistence API" nor in TopLink. JDBC reports the column's case sensitivity. So the potential is there to extend Top Link.
    Thanks again for the reply,
    Tim
    Edited by: timmaryson on May 11, 2009 12:29 PM
    Edited by: timmaryson on May 11, 2009 1:52 PM
    Edited by: timmaryson on May 11, 2009 2:07 PM

  • Exception [TOPLINK-48] Multiple writable mappings exist for field

    Hi All
    I am quite new to JPA and Toplink and I am trying to write simple JPA application using toplink essentials as the persistence provider however, when I comppile the code, get errors below saying that Multiple writable mappings exist for a given field i.e. http://J2EEUSER.BANKS.BRANCH_ADDR_POSTCODE. The thing is, I havent tried to map this field i.e. J2EEUSER.BANKS.BRANCH_ADDR_POSTCODE to multiple maps so I'm a bit confused as to why I'm getting this error. I have attached all the the associated code and error messages. I was hoping that some one will be able to help. I am using Eclipse Galileo and OC4j Standalone 10.1.3.4
    The error are
    Runtime Exceptions:
    ; nested exception is:
    javax.persistence.PersistenceException: Exception TOPLINK-0 (Oracle TopLink Essentials - 2.0.1 (Build b09d-fcs (12/06/2007))): oracle.toplink.essentials.exceptions.IntegrityException
    Descriptor Exceptions:
    Exception TOPLINK-48 (Oracle TopLink Essentials - 2.0.1 (Build b09d-fcs (12/06/2007))): oracle.toplink.essentials.exceptions.DescriptorException
    Exception Description: Multiple writable mappings exist for the field http://J2EEUSER.BANKS.BRANCH_ADDR_POSTCODE. Only one may be defined as writable, all others must be specified read-only.
    Mapping: oracle.toplink.essentials.mappings.DirectToFieldMappinghttp://branch_Addr_Road_Name-->J2EEUSER.BANKS.BRANCH_ADDR_POSTCODE
    Descriptor: RelationalDescriptor(com.gworx.Bank --> http://DatabaseTable(J2EEUSER.BANKS))
    Exception TOPLINK-48 (Oracle TopLink Essentials - 2.0.1 (Build b09d-fcs (12/06/2007))): oracle.toplink.essentials.exceptions.DescriptorException
    Exception Description: Multiple writable mappings exist for the field http://J2EEUSER.BANKS.BRANCH_ADDR_POSTCODE. Only one may be defined as writable, all others must be specified read-only.
    Mapping: oracle.toplink.essentials.mappings.DirectToFieldMappinghttp://bankName-->J2EEUSER.BANKS.BRANCH_ADDR_POSTCODE
    Descriptor: RelationalDescriptor(com.gworx.Bank --> http://DatabaseTable(J2EEUSER.BANKS))
    Exception TOPLINK-48 (Oracle TopLink Essentials - 2.0.1 (Build b09d-fcs (12/06/2007))): oracle.toplink.essentials.exceptions.DescriptorException
    Exception Description: Multiple writable mappings exist for the field http://J2EEUSER.BANKS.BRANCH_ADDR_POSTCODE. Only one may be defined as writable, all others must be specified read-only.
    Mapping: oracle.toplink.essentials.mappings.DirectToFieldMappinghttp://branch_Addr_Locality-->J2EEUSER.BANKS.BRANCH_ADDR_POSTCODE
    Descriptor: RelationalDescriptor(com.gworx.Bank --> http://DatabaseTable(J2EEUSER.BANKS))
    The entity class is
    package com.gworx;
    import java.io.Serializable;
    import javax.persistence.*;
    import javax.persistence.CascadeType;
    @Entity
    @IdClass(BankPK.class)
    @Table(name = "BANKS", schema = "J2EEUSER")
    public class Bank implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @Column(name = "BRANCH_SORTCODE", nullable = false, precision = 6, insertable=false, updatable=false)
    long sortcode;
    @Basic()
    @Column(name = "BANK_NAME", nullable = false, insertable=false, updatable=false)
    String bankName;
    @Basic()
    @Column(name = "BRANCH_NAME", nullable = false, insertable=false, updatable=false)
    String branchName;
    @Basic()
    @Column(name = "BRANCH_ADDR_HOUSE_NAME", nullable = false, insertable=false, updatable=false)
    String branch_Addr_House_Name;
    @Basic()
    @Column(name = "BRANCH_ADDR_ROAD_NAME",nullable = false, insertable=false, updatable=false)
    String branch_Addr_Road_Name;
    @Basic()
    @Column(name = "BRANCH_ADDR_LOCALITY", nullable = false, insertable=false, updatable=false)
    String branch_Addr_Locality;
    @Basic()
    @Column(name = "BRANCH_ADDR_CITY",nullable = false, insertable=false, updatable=false)
    String branch_Addr_City;
    @OneToOne(cascade=CascadeType.ALL)
    @Basic()
    @Column(name = "BRANCH_ADDR_POSTCODE", nullable = false)
    String branch_Addr_Postcode;
    public Bank(){}
    public Bank(
    String bankName,
    String branchName,
    long sortcode,
    String branch_Addr_House_Name,
    String branch_Addr_Road_Name,
    String branch_Addr_Locality,
    String branch_Addr_City,
    String branch_Addr_Postcode)
    this.bankName=bankName;
    this.sortcode=sortcode;
    this.branchName = branchName;
    this.branch_Addr_House_Name=branch_Addr_House_Name;
    this.branch_Addr_Road_Name=branch_Addr_Road_Name;
    this.branch_Addr_Locality=branch_Addr_Locality;
    this.branch_Addr_City=branch_Addr_City;
    this.branch_Addr_Postcode=branch_Addr_Postcode;
    public void setSortcode(long sortcode){
    this.sortcode =sortcode;
    public long getSortCode(){
    return this.sortcode;
    The PK class is
    public class BankPK implements Serializable {
    public long sortcode;
    public BankPK(long sortcode){
    this.sortcode = sortcode;
    public boolean equals(Object obj){
    if(obj==null || !(obj instanceof BankPK)){
    return false;
    else if (((BankPK)obj).sortcode ==sortcode)
    return true;
    else
    return false;
    public int hashCode(){
    StringBuffer buff = new StringBuffer();
    buff.append(sortcode);
    int hashCode =buff.hashCode();
    return hashCode;
    My stateless session bean that I use to create to create the entity is
    package com.gworx;
    import javax.ejb.Local;
    import javax.ejb.Stateless;
    import javax.persistence.*;
    import javax.ejb.Remote;
    import com.gworx.BankBeanRemote;
    @Stateless
    public class BankBean implements BankBeanRemote {
    @PersistenceContext
    EntityManager entMgr;
    public Account account;
    long sortcode, cust_id;
    //Bank Details
    String bankName,branchName,branch_Addr_House_Name,
    branch_Addr_Road_Name,branch_Addr_Locality,
    branch_Addr_City, branch_Addr_Postcode;
    public BankBean() {
    // TODO Auto-generated constructor stub
    // entMgr=emf.createEntityManager();
    public void make_A_Bank(
    String bankName,
    String branchName,
    long sortcode,
    String branch_Addr_House_Name,
    String branch_Addr_Road_Name,
    String branch_Addr_Locality,
    String branch_Addr_City,
    String branch_Addr_Postcode
    this.sortcode=sortcode;
    this.bankName =bankName;
    this.branchName = branchName;
    this.branch_Addr_House_Name=branch_Addr_House_Name;
    this.branch_Addr_Road_Name=branch_Addr_Road_Name;
    this.branch_Addr_Locality=branch_Addr_Locality;
    this.branch_Addr_City=branch_Addr_City;
    this.branch_Addr_Postcode=branch_Addr_Postcode;
    Bank bank = new Bank( bankName,branchName,sortcode,branch_Addr_House_Name,
    branch_Addr_Road_Name,branch_Addr_Locality,
    branch_Addr_City, branch_Addr_Postcode);
    entMgr.persist(bank);
    }

    Hi quophyie,
    try removing the @OneToOne annotation, after all your postcode is just a string, there's nothing to cascade.
    And it would help a lot if you formatted your code.
    Zsom

  • Exception [TOPLINK-4002]

    Hi,I have no idea,help.thanks
    javax.ejb.EJBException: nested exception is: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
         java.rmi.RemoteException: null; nested exception is:
         Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0 (Build b40-rc (03/20/2007))): oracle.toplink.essentials.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: Error in allocating a connection. Cause: Connection could not be allocated because: java.net.ConnectException: Error Code: 0
    java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
         java.rmi.RemoteException: null; nested exception is:
         Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0 (Build b40-rc (03/20/2007))): oracle.toplink.essentials.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: Error in allocating a connection. Cause: Connection could not be allocated because: java.net.ConnectException:Connection refused: connect。
    Error Code: 0
         at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:191)
         at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:176)
         at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:123)
         at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:196)
         at org.acrowise.RCP.__SessionEJB_Remote_DynamicStub.getEmail(__SessionEJB_Remote_DynamicStub.java)
         at org.acrowise.RCP._SessionEJB_Wrapper.getEmail(org.acrowise.RCP._SessionEJB_Wrapper.java)
         at org.acrowise.client.testClient.main(testClient.java:21)
    Caused by: java.rmi.RemoteException: null; nested exception is:
         Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0 (Build b40-rc (03/20/2007))): oracle.toplink.essentials.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: Error in allocating a connection. Cause: Connection could not be allocated because: java.net.ConnectException: Connection refused: connect。
    Error Code: 0
         at com.sun.enterprise.iiop.POAProtocolMgr.mapException(POAProtocolMgr.java:237)
         at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1337)
         at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1267)
         at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:197)
         at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:104)
         at $Proxy82.getEmail(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:125)
         at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:658)
         at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:198)
         at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1821)
         at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1681)
         at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1063)
         at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:179)
         at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:781)
         at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:538)
         at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2542)
         at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:502)
    Caused by: Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0 (Build b40-rc (03/20/2007))): oracle.toplink.essentials.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: Error in allocating a connection. Cause: Connection could not be allocated because: java.net.ConnectException: Connection refused: connect。
    Error Code: 0
         at oracle.toplink.essentials.exceptions.DatabaseException.sqlException(DatabaseException.java:290)
         at oracle.toplink.essentials.jndi.JNDIConnector.connect(JNDIConnector.java:135)
         at oracle.toplink.essentials.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:170)
         at oracle.toplink.essentials.internal.sessions.DatabaseSessionImpl.loginAndDetectDatasource(DatabaseSessionImpl.java:537)
         at oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:206)
         at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:212)
         at oracle.toplink.essentials.internal.ejb.cmp3.base.EntityManagerFactoryImpl.getServerSession(EntityManagerFactoryImpl.java:78)
         at oracle.toplink.essentials.internal.ejb.cmp3.base.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:111)
         at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:84)
         at com.sun.enterprise.util.EntityManagerWrapper._getDelegate(EntityManagerWrapper.java:335)
         at com.sun.enterprise.util.EntityManagerWrapper.createNamedQuery(EntityManagerWrapper.java:733)
         at org.acrowise.RCP.SessionEJBBean.getEmail(SessionEJBBean.java:98)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1055)
         at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:163)
         at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2846)
         at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:3930)
         at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:190)
         ... 17 more
    Caused by: java.sql.SQLException: Error in allocating a connection. Cause: Connection could not be allocated because: java.net.ConnectException: Connection refused: connect。
         at com.sun.gjc.spi.base.DataSource.getConnection(DataSource.java:102)
         at oracle.toplink.essentials.jndi.JNDIConnector.connect(JNDIConnector.java:130)
         ... 36 more
    javax.ejb.EJBException: nested exception is: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
         java.rmi.RemoteException: null; nested exception is:
         Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0 (Build b40-rc (03/20/2007))): oracle.toplink.essentials.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: Error in allocating a connection. Cause: Connection could not be allocated because: java.net.ConnectException Connection refused: connect。
    Error Code: 0
         at org.acrowise.RCP._SessionEJB_Wrapper.getEmail(org.acrowise.RCP._SessionEJB_Wrapper.java)
         at org.acrowise.client.testClient.main(testClient.java:21)

    TopLink Essentials is attempting to connect to a data source within your container and failing. Does the data source name provided in your persistence.xml match what is configured in the container?
    Doug

  • Exception [TOPLINK-6029] after upgrading from version 9.0.4.5 to 10.1.3.0.0

    In our project, we have made an upgrade to TopLink version 10.1.3.0.0. After replacing as much as possible deprecated Classes/methods, we get TopLink Exceptions when accessing attributes which are mapped via indirection. When TopLink tries to retrieve the reference records from the database, a [TOPLINK-6029] exception occurs. We do not execute a query with "readObject" but we only acces the attribute which is mapped via indirection.
    Exception-Stack:
    Exception [TOPLINK-6029] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.QueryException
    Exception-Beschreibung: Eine Referenzklasse muss angegeben werden.
    Abfrage: ReadObjectQuery()
         at oracle.toplink.exceptions.QueryException.referenceClassMissing(QueryException.java:858)
         at oracle.toplink.queryframework.ReadObjectQuery.checkDescriptor(ReadObjectQuery.java:198)
         at oracle.toplink.queryframework.ObjectLevelReadQuery.checkPrePrepare(ObjectLevelReadQuery.java:562)
         at oracle.toplink.queryframework.ObjectLevelReadQuery.isLockQuery(ObjectLevelReadQuery.java:1407)
         at oracle.toplink.internal.remote.RemoteValueHolder.isPessimisticLockingValueHolder(RemoteValueHolder.java:192)
         at oracle.toplink.internal.indirection.UnitOfWorkValueHolder.instantiateImpl(UnitOfWorkValueHolder.java:133)
         at oracle.toplink.internal.indirection.UnitOfWorkValueHolder.instantiate(UnitOfWorkValueHolder.java:217)
         at oracle.toplink.internal.indirection.DatabaseValueHolder.getValue(DatabaseValueHolder.java:61)
         at oracle.toplink.indirection.IndirectList.buildDelegate(IndirectList.java:184)
         at oracle.toplink.indirection.IndirectList.getDelegate(IndirectList.java:307)
         at oracle.toplink.indirection.IndirectList.toArray(IndirectList.java:646)
         at java.util.Collections.sort(Collections.java:158)
    With TopLink versio 9.0.4.5 everything works correctly.
    What could be the cause of this problem and what can we do to correct it.
    Regards,
    Hans.

    Hello James,
    Thanks for the quick answer!
    I have tested our program with the new TopLink version without making any change in the code, so definitely there a change in the behaviour in both TopLink versions. I have added the code where the descriptor and the onetomany mapping is created. I think the descriptor is ok, but the problem could have to do with the fact that in our program the business object is already registered in a unit of work.
    When I debug the situation in Eclipse and expand the IndirectList first on the original and afterwards on the clone, no exception occurs. When I directly expand the IndirectList in the clone the excpetion comes.
    // Descriptor creation
    private static Descriptor buildRentFunctionDescriptor()
    Descriptor desc = DescriptorLib.makeListDescriptor(RentFunction.class, RFU_TAB, RFU_TAB_KEY, RFU_PREFIX);
    DescriptorLib.addDirectToFieldMapping(desc, PropM.RentFun.KEY, RFU_TAB_KEY);
    DescriptorLib.addDirectToFieldMapping(desc, PropM.RentFun.NAME, RFU_TAB_NAME);
    DescriptorLib.addDirectToFieldMapping(desc, PropM.RentFun.ORDER, RFU_TAB_ORDER);
    DescriptorLib.addDirectToFieldMapping(desc, PropM.RentFun.RENT, RFU_TAB_RENT);
    DescriptorLib.addDirectToFieldMapping(desc, PropM.RentFun.ATYPE, RFU_TAB_ATYPE);
    DescriptorLib.addOneToManyMapping(desc, PropM.RentFun.HRENT, HistRent.class, HRE_TAB_LINK, true, true);
    DescriptorLib.addOneToOneMapping(desc, PropM.RentFun.PER, Period.class, RFU_TAB_PER, false, false);
    DescriptorLib.addOneToOneMapping(desc, PropM.RentFun.LEV, LocationLevel.class, RFU_TAB_LEV, false, false);
    DescriptorLib.addOneToOneMapping(desc, PropM.RentFun.ACC, Account.class, RFU_TAB_ACC, false, false);
    return desc;
    //Mapping creation
    public static OneToManyMapping addOneToManyMapping(Descriptor descriptor,
    String attributeName,
    Class referenceClass,
    String targetForeignKey,
    boolean useIndirection,
    boolean enableCascadingDelete)
    OneToManyMapping mapping = new OneToManyMapping();
    mapping.setAttributeName(attributeName);
    mapping.setReferenceClass(referenceClass);
    mapping.setTargetForeignKeyFieldName(targetForeignKey);
    if (useIndirection)
    mapping.useTransparentCollection();
    mapping.useCollectionClass(IndirectList.class);
    else
    mapping.dontUseIndirection();
    if (enableCascadingDelete)
    mapping.privateOwnedRelationship();
    descriptor.addMapping(mapping);
    return mapping;
    Maybe you could give some tips about how to deal with registering the business object in the unit of work in combination with attributes that use indirection.
    Regards,
    Hans
    Message was edited by:
    lammers1

  • Exception [TOPLINK-46] (OracleAS TopLink - 10g (9.0.4) (Build 031126))

    Hi,
    I am using TopLink for simple Department-Employee relation, i have my project xml configured, But i am facing the problem with following exception
    Descriptor Exceptions:
    Exception [TOPLINK-46] (OracleAS TopLink - 10g (9.0.4) (Build 031126)): oracle.toplink.exceptions.DescriptorException
    Exception Description: There should be one non-read-only mapping defined for the primary key field [emp.empno].
    Descriptor: Descriptor(com.oracle.mssql.emp.toplink.EmpTopLinkBean --> [DatabaseTable(emp)])
    Runtime Exceptions:
    What could be the reason?
    Thanks
    Madhu

    My best guess would be that you have a 1:1 mapping from Employee to Department. This mapping represents part of the primary key.
    Make sure that your 1:1 mapping is not configured as read-only. Another issue is that you may have set the relationship as target foreign key. This has the same effect as read-only and is not applicable in the 1:1 returning from a 1:M.
    Doug

  • Exception [TOPLINK-4002] : A lock could not be obtained within the time req

    Hi,
    i am using Toplink bundled with Netbeans 5.5.1.
    I have 2 projects : one with common objects and one with business objects. When a business session bean calls a common session bean in order to create and persist a common object used in business part, we have the following errors :
    Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0 (Build b41-beta2 (03/30/2007))): oracle.toplink.essentials.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: A lock could not be obtained within the time requested
    Error Code: -1
    Call: SELECT ID FROM IMAGESOWNER WHERE (ID = ?)
    bind => [2]
    Query: DoesExistQuery()
    at oracle.toplink.essentials.exceptions.DatabaseException.sqlException(DatabaseException.java:304)
    at oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:551)
    at oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.executeCall(DatabaseAccessor.java:437)
    at oracle.toplink.essentials.threetier.ServerSession.executeCall(ServerSession.java:465)
    at oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:213)
    at oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:199)
    at oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.selectRowForDoesExist(DatasourceCallQueryMechanism.java:642)
    at oracle.toplink.essentials.queryframework.DoesExistQuery.executeDatabaseQuery(DoesExistQuery.java:243)
    at oracle.toplink.essentials.queryframework.DatabaseQuery.execute(DatabaseQuery.java:609)
    at oracle.toplink.essentials.queryframework.DatabaseQuery.executeInUnitOfWork(DatabaseQuery.java:536)
    at oracle.toplink.essentials.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java:2219)
    at oracle.toplink.essentials.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:937)
    at oracle.toplink.essentials.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:894)
    at oracle.toplink.essentials.internal.sessions.UnitOfWorkImpl.checkForUnregisteredExistingObject(UnitOfWorkImpl.java:516)
    at oracle.toplink.essentials.internal.ejb.cmp3.base.RepeatableWriteUnitOfWork$1.iterate(RepeatableWriteUnitOfWork.java:123)
    at oracle.toplink.essentials.internal.descriptors.DescriptorIterator.internalIterateReferenceObject(DescriptorIterator.java:174)
    at oracle.toplink.essentials.internal.descriptors.DescriptorIterator.iterateReferenceObjectForMapping(DescriptorIterator.java:281)
    at oracle.toplink.essentials.mappings.ObjectReferenceMapping.iterateOnRealAttributeValue(ObjectReferenceMapping.java:254)
    at oracle.toplink.essentials.internal.indirection.IndirectionPolicy.iterateOnAttributeValue(IndirectionPolicy.java:207)
    at oracle.toplink.essentials.mappings.ForeignReferenceMapping.iterate(ForeignReferenceMapping.java:571)
    at oracle.toplink.essentials.internal.descriptors.ObjectBuilder.iterate(ObjectBuilder.java:2061)
    at oracle.toplink.essentials.internal.descriptors.DescriptorIterator.iterateReferenceObjects(DescriptorIterator.java:296)
    at oracle.toplink.essentials.internal.descriptors.DescriptorIterator.startIterationOn(DescriptorIterator.java:469)
    at oracle.toplink.essentials.internal.ejb.cmp3.base.RepeatableWriteUnitOfWork.discoverUnregisteredNewObjects(RepeatableWriteUnitOfWork.java:145)
    at oracle.toplink.essentials.internal.sessions.UnitOfWorkImpl.discoverAllUnregisteredNewObjects(UnitOfWorkImpl.java:1278)
    at oracle.toplink.essentials.internal.sessions.UnitOfWorkImpl.assignSequenceNumbers(UnitOfWorkImpl.java:368)
    at oracle.toplink.essentials.internal.sessions.UnitOfWorkImpl.collectAndPrepareObjectsForCommit(UnitOfWorkImpl.java:707)
    at oracle.toplink.essentials.internal.sessions.UnitOfWorkImpl.commitToDatabaseWithChangeSet(UnitOfWorkImpl.java:1098)
    at oracle.toplink.essentials.internal.sessions.UnitOfWorkImpl.issueSQLbeforeCompletion(UnitOfWorkImpl.java:2429)
    at oracle.toplink.essentials.internal.ejb.cmp3.base.RepeatableWriteUnitOfWork.issueSQLbeforeCompletion(RepeatableWriteUnitOfWork.java:186)
    at oracle.toplink.essentials.transaction.AbstractSynchronizationListener.beforeCompletion(AbstractSynchronizationListener.java:116)
    at oracle.toplink.essentials.transaction.JTASynchronizationListener.beforeCompletion(JTASynchronizationListener.java:76)
    at com.sun.enterprise.distributedtx.J2EETransaction.commit(J2EETransaction.java:406)
    at com.sun.enterprise.distributedtx.J2EETransactionManagerOpt.commit(J2EETransactionManagerOpt.java:358)
    at com.sun.ejb.containers.BaseContainer.completeNewTx(BaseContainer.java:3736)
    at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3515)
    at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1305)
    at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1267)
    at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:197)
    at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:104)
    at $Proxy190.createAMember(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:204)
    at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:123)
    at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:196)
    at ppcobjectssessionbeans.__PpcMemberSessionRemote_Remote_DynamicStub.createAMember(__PpcMemberSessionRemote_Remote_DynamicStub.java)
    at ppcobjectssessionbeans._PpcMemberSessionRemote_Wrapper.createAMember(ppcobjectssessionbeans._PpcMemberSessionRemote_Wrapper.java)
    at polyplastoclub.admin.addMember_action(admin.java:630)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.sun.el.parser.AstValue.invoke(AstValue.java:174)
    at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:284)
    at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:77)
    at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:91)
    at com.sun.rave.web.ui.appbase.faces.ActionListenerImpl.processAction(ActionListenerImpl.java:57)
    at javax.faces.component.UICommand.broadcast(UICommand.java:383)
    at com.sun.webui.jsf.component.WebuiCommand.broadcast(WebuiCommand.java:160)
    at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:447)
    at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:752)
    at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
    at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
    at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
    at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:398)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
    at com.sun.webui.jsf.util.UploadFilter.doFilter(UploadFilter.java:240)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
    at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:258)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:189)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:611)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:564)
    at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:81)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:193)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:611)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:564)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:558)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1067)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:611)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:564)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:558)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1067)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:255)
    at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:618)
    at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:549)
    at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:790)
    at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:326)
    at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:248)
    at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:199)
    at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
    at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:93)
    Caused by: java.sql.SQLException: A lock could not be obtained within the time requested
    at org.apache.derby.client.am.SQLExceptionFactory.getSQLException(Unknown Source)
    at org.apache.derby.client.am.SqlException.getSQLException(Unknown Source)
    at org.apache.derby.client.am.ResultSet.next(Unknown Source)
    at oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:502)
    ... 97 more
    Caused by: org.apache.derby.client.am.SqlException: A lock could not be obtained within the time requested
    at org.apache.derby.client.am.ResultSet.completeSqlca(Unknown Source)
    at org.apache.derby.client.net.NetResultSetReply.parseFetchError(Unknown Source)
    at org.apache.derby.client.net.NetResultSetReply.parseCNTQRYreply(Unknown Source)
    at org.apache.derby.client.net.NetResultSetReply.readFetch(Unknown Source)
    at org.apache.derby.client.net.ResultSetReply.readFetch(Unknown Source)
    at org.apache.derby.client.net.NetResultSet.readFetch_(Unknown Source)
    at org.apache.derby.client.am.ResultSet.flowFetch(Unknown Source)
    at org.apache.derby.client.net.NetCursor.getMoreData_(Unknown Source)
    at org.apache.derby.client.am.Cursor.stepNext(Unknown Source)
    at org.apache.derby.client.am.Cursor.next(Unknown Source)
    at org.apache.derby.client.am.ResultSet.nextX(Unknown Source)
    ... 99 more
    If i persist the common object in business part, i have no problem : is it a toplink limit or there is something to do ?
    Best regards
    H. Deslandes

    Hi,
    I am getting same error code but with different error details.
    Whenever my BPEL process is idle for a long time and then if I execute the BPEL process, it gives me an error from db adapter as shown here:
    <remoteFault xmlns="http://schemas.oracle.com/bpel/extension">
    -<part name="code">
    <code>17002
    </code>
    </part>
    -<part name="summary">
    <summary>
    file:/oracle/product/Oracle_SOA_10.1.3/bpel/domains/default/tmp/.bpel_IHCloseTaskResponse_1.0_aaa6a3e5c7a3340eff9954dbeaf1e374.tmp/InsertIHCloseDB.wsdl [ InsertIHCloseDB_ptt::write(IhCloseMainCollection) ] - WSIF JCA Execute of operation 'write' failed due to: DBWriteInteractionSpec Execute Failed Exception.
    write failed. Descriptor name: [InsertIHCloseDB.IhCloseMain]. [Caused by: Io exception: Broken pipe]
    ; nested exception is:
         ORABPEL-11616
    DBWriteInteractionSpec Execute Failed Exception.
    write failed. Descriptor name: [InsertIHCloseDB.IhCloseMain]. [Caused by: Io exception: Broken pipe]
    Caused by Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.3.0) (Build 070608)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: Io exception: Broken pipeError Code: 17002
    Call:SELECT TIH_REFERENCE_NUMBER FROM IH_CLOSE_MAIN WHERE (TIH_REFERENCE_NUMBER = ?)
         bind => [IH1107100305]
    Query:DoesExistQuery().
    </summary>
    </part>
    -<part name="detail">
    <detail>
    Internal Exception: java.sql.SQLException: Io exception: Broken pipeError Code: 17002
    Call:SELECT TIH_REFERENCE_NUMBER FROM IH_CLOSE_MAIN WHERE (TIH_REFERENCE_NUMBER = ?)
         bind => [IH1107100305]
    Query:DoesExistQuery()
    </detail>
    </part>
    </remoteFault>
    Can any body help me to sort out this problem, please?
    Many thanks in advance.

  • Getting exception TOPLINK-2004

    We are trying insert a single record to a table and getting following error:
    We are at very crucial stage of testing , Pl help us to resolve the issue.
    Thanks in advance for your help
    <2006-12-21 21:58:42,547> <DEBUG> <default.collaxa.cube.ws> <Database Adapter::Outbound> <oracle.tip.adapter.db.TopLinkLogger log> INSERT INTO CAH1.INTERFACE_CONTROL (SQ_RECORD_ID, INTERFACE_NAME, INTERFACE_STATUS) VALUES (?, ?, ?)
    bind => [null, JOBCODE, RECEIVED]
    <2006-12-21 21:58:42,557> <DEBUG> <default.collaxa.cube.ws> <AdapterFramework::Outbound> file:/data/app/oracle/soa/10.1.3.1/OracleAS_1/bpel/domains/default/tmp/.bpel_JobcodeMain_1.0_ecd4926cbc8cc8c94cea022b5a9d0120.tmp/INTF_CLR_DBA.wsdl [ INTF_CLR_DBA_ptt::insert(InterfaceControlCollection) ] - Committing JCA LocalTransaction
    <2006-12-21 21:58:42,559> <DEBUG> <default.collaxa.cube.ws> <Database Adapter::Outbound> <oracle.tip.adapter.db.TopLinkLogger log> commit transaction
    <2006-12-21 21:58:42,583> <ERROR> <default.collaxa.cube.ws> <AdapterFramework::Outbound> file:/data/app/oracle/soa/10.1.3.1/OracleAS_1/bpel/domains/default/tmp/.bpel_JobcodeMain_1.0_ecd4926cbc8cc8c94cea022b5a9d0120.tmp/INTF_CLR_DBA.wsdl [ INTF_CLR_DBA_ptt::insert(InterfaceControlCollection) ] - Could not invoke operation 'insert' against the 'Database Adapter' due to:
    ORABPEL-11616
    DBWriteInteractionSpec Execute Failed Exception.
    unknown failed. Descriptor name: [unknown].
    Caused by Exception [TOPLINK-2004] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 061004)): oracle.toplink.exceptions.ConcurrencyException
    Exception Description: A signal was attempted before wait() on ConcurrencyManager. This normally means that an attempt was made to
    commit or rollback a transaction before it was started, or to rollback a transaction twice..
    at oracle.tip.adapter.db.exceptions.DBResourceException.createEISException(DBResourceException.java:369)
    at oracle.tip.adapter.db.exceptions.DBResourceException.outboundWriteException(DBResourceException.java:410)
    at oracle.tip.adapter.db.transaction.DBTransaction.commit(DBTransaction.java:230)
    at oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA.executeRequestResponseOperation(WSIFOperation_JCA.java:509)
    at oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA.executeInputOnlyOperation(WSIFOperation_JCA.java:726)
    at com.collaxa.cube.ws.WSIFInvocationHandler.invoke(WSIFInvocationHandler.java:425)
    at com.collaxa.cube.ws.WSInvocationManager.invoke2(WSInvocationManager.java:416)
    at com.collaxa.cube.ws.WSInvocationManager.invoke(WSInvocationManager.java:222)
    at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__invoke(BPELInvokeWMP.java:736)
    at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__executeStatements(BPELInvokeWMP.java:371)
    at com.collaxa.cube.engine.ext.wmp.BPELActivityWMP.perform(BPELActivityWMP.java:195)
    at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:3271)
    at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1697)
    at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:75)
    at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:184)
    at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:269)
    at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5244)
    at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:1083)
    at com.collaxa.cube.engine.delivery.DeliveryService.handleInvoke(DeliveryService.java:530)
    at com.collaxa.cube.engine.ejb.impl.CubeDeliveryBean.handleInvoke(CubeDeliveryBean.java:333)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:396)
    at com.evermind.server.ThreadState.runAs(ThreadState.java:622)
    at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
    at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
    at CubeDeliveryBean_LocalProxy_4bin6i8.handleInvoke(Unknown Source)
    at com.collaxa.cube.engine.dispatch.message.invoke.InvokeInstanceMessageHandler.handle(InvokeInstanceMessageHandler.java:37)
    at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:138)
    at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70)
    at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86)
    at sun.reflect.GeneratedMethodAccessor52.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.SetContextActionInterceptor.invoke(SetContextActionInterceptor.java:44)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
    at oracle.j2ee.connector.messageinflow.MessageEndpointImpl.OC4J_invokeMethod(MessageEndpointImpl.java:297)
    at WorkerBean_EndPointProxy_4bin6i8.onMessage(Unknown Source)
    at oracle.j2ee.ra.jms.generic.WorkConsumer.run(WorkConsumer.java:266)
    at oracle.j2ee.connector.work.WorkWrapper.runTargetWork(WorkWrapper.java:242)
    at oracle.j2ee.connector.work.WorkWrapper.doWork(WorkWrapper.java:215)
    at oracle.j2ee.connector.work.WorkWrapper.run(WorkWrapper.java:190)
    at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:814)
    at java.lang.Thread.run(Thread.java:595)

    BTW, are you sure you aren't calling any of the individual sessions (apart from the session broker)?
    Do you have a simple reproducable test case?

  • EXCEPTION [TOPLINK-108]

    Hi,
    Did anyone run into this exception? I am getting
    EXCEPTION [TOPLINK-108] (TopLink (WLS CMP) - 9.0.3 (Build 423)): oracle.top
    link.exceptions.DescriptorException
    EXCEPTION DESCRIPTION: Cannot find value in class indicator mapping in pare
    nt descriptor [Descriptor(com.hbo.slmk.sams.element.SmMktgElement --> [Data
    baseTable(SM_MKTG_ELEMENT)])].
    DESCRIPTOR: Descriptor(com.hbo.slmk.sams.element.SmWebsite --> [DatabaseTab
    le(SM_MKTG_ELEMENT), DatabaseTable(SM_WEBSITE)])
    when deploying to WebLogic Server 7.0 SP1. The troubleshooting guide says:
    Error code: 108
    VALUE_NOT_FOUND_IN_CLASS_INDICATOR_MAPPING
    Cause: The indicator value is not found in the class indicator mapping in the parent descriptor for the class.
    Action: Check addClassIndicator(Class childClass, Object typeValue) on the inheritance policy.
    But the inheritance policy in project java source looks ok.
    public Descriptor buildSmMktgElementDescriptor() {
         Descriptor descriptor = new Descriptor();
         descriptor.setJavaClass(com.hbo.slmk.sams.element.SmMktgElement.class);
         descriptor.addTableName("SM_MKTG_ELEMENT");
         descriptor.addPrimaryKeyFieldName("SM_MKTG_ELEMENT.MKTG_ELEMENT_TKEY");
         // Inheritance properties.
         descriptor.getInheritancePolicy().addClassIndicator(com.hbo.slmk.sams.element.SmWebsite.class, "SmWebsite");
    Would appreciate any suggestions to identify what is causing the exception.
    Thanks,
    Suhrob     

    I included just a section of the code. Here is the inheritance policy in its entirety. I am getting error 108 for each of the subclasses.
    Thanks,
    Suhrob
    public Descriptor buildSmMktgElementDescriptor() {
         Descriptor descriptor = new Descriptor();
         descriptor.setJavaClass(com.hbo.slmk.sams.element.SmMktgElement.class);
         descriptor.addTableName("SM_MKTG_ELEMENT");
         descriptor.addPrimaryKeyFieldName("SM_MKTG_ELEMENT.MKTG_ELEMENT_TKEY");
         // Inheritance properties.
         descriptor.getInheritancePolicy().setClassIndicatorFieldName("SM_MKTG_ELEMENT.ELEMENT_CLASS_NAME");
         descriptor.getInheritancePolicy().addClassIndicator(com.hbo.slmk.sams.element.SmListElement.class, "SmListElement");
         descriptor.getInheritancePolicy().addClassIndicator(com.hbo.slmk.sams.element.SmDateElement.class, "SmDateElement");
         descriptor.getInheritancePolicy().addClassIndicator(com.hbo.slmk.sams.element.SmOrganization.class, "SmOrganization");
         descriptor.getInheritancePolicy().addClassIndicator(com.hbo.slmk.sams.element.SmIndicia.class, "SmIndicia");
         descriptor.getInheritancePolicy().addClassIndicator(com.hbo.slmk.sams.element.SmTextElement.class, "SmTextElement");
         descriptor.getInheritancePolicy().addClassIndicator(com.hbo.slmk.sams.element.SmWebsite.class, "SmWebsite");
         descriptor.getInheritancePolicy().addClassIndicator(com.hbo.slmk.sams.element.SmSalesPhoneListElement.class, "SmSalesPhoneListElement");
         descriptor.getInheritancePolicy().addClassIndicator(com.hbo.slmk.sams.element.SmContact.class, "SmContact");
         descriptor.getInheritancePolicy().addClassIndicator(com.hbo.slmk.sams.element.SmAddress.class, "SmAddress");
         // Descriptor properties.
         descriptor.useSoftCacheWeakIdentityMap();
         descriptor.setIdentityMapSize(100);
         descriptor.useRemoteSoftCacheWeakIdentityMap();
         descriptor.setRemoteIdentityMapSize(100);
         descriptor.setAlias("SmMktgElement");
         

  • TS1702 I have downloaded app updates except my Tom Tom navigation. I'm getting the error on my i phone 'Cannot connect to the i tunes store. Wi fi is working fine.

    I have downloaded app updates except my Tom Tom navigation. I'm getting the error on my i phone 'Cannot connect to the i tunes store. Wi fi is working fine.
    Any ideas?

    Same here on my lpad2. Can access the web just fine from browsers but cannot install new apps or updates in appl store.  Seeing a few others reporting same issue tonight so likely an apple server issue and staff will notice it in network monitors and fix it...sometime this weekend.
    Rob

Maybe you are looking for

  • Unable to view A/R Invoice form and Main menu

    Dear Experts, I am using 2007 A pl 30. I did allocate the manager for the Professional User, SAP Addons, SDK Tools. When i try to open the A/R invoice form, it is not showing on screen but then it is available in the window drop down menu. Also, the

  • 1/n Fractional octave VI

    Using the 1/n Fractional Octave Vi. The user manual says the averaging is continuous for exponentional averaging. It seems to be continuous no matter what the setting is, linear, peak, etc. Trying to get it to stop averaging so I can write the data t

  • Automounting mp3 player in kde

    Hi - I really like kde feature where usb devices appear on the desktop, where they can be easily mounted. This is important for my wife cos she is techno-phobe! when I plug my mp3 player (ibead400) everything work fine, it goes to /dev/sda1 and I can

  • Edge does not display online

    Hi, I have a little problem with Edge. I created an animation and when I preview this from my hard disc everything works fine. But when I upload files to my host, animation disappears. I found this thread and I tried those tips but still nothing. htt

  • PS Elements 6 suddenly stopped opening Editor

    Doesn't give a code or reason, just says a problem opening Editor. Do I need to reinstall the software or is there a shortcut to fix it?