2014-02-06 6 views
0

Я получаю следующую ошибку от Toplink при запуске приложения. Я пытаюсь добавить две новые таблицы в наше приложение.Для поля порядкового номера должно быть определено сопоставление только для чтения

ИСКЛЮЧЕНИЕ [TOPLINK-41] (TopLink - 9.0.3.7 (Build 440)): oracle.toplink.exceptions.DescriptorException ИСКЛЮЧЕНИЕ ОПИСАНИЕ: не-только для чтения карт должны быть определены для поля порядкового номера. DESCRIPTOR: Descriptor (icis.cr.common.db.entities.ClerkReviewTask -> [DatabaseTable (CREV_TASK)])

Я сравнил отображения на тот, который работает и ничего не заметил. Я сравнил новый класс в Workbench TopLink и не вижу недостающего отображения. Кажется, что моя последовательность правильно отображена. У кого-нибудь есть предложения с этим?

Дескриптор имеет следующий за TASK_ID поле:

<primaryKeyFieldHandles> 
     <FieldHandle> 
      <table>CREV_TASK</table> 
      <fieldName>TASK_ID</fieldName> 
     </FieldHandle> 
    </primaryKeyFieldHandles> 

    <sequenceNumberName>SEQ_CREV_TASK_ID</sequenceNumberName> 

     <sequenceNumberFieldHandle> 
      <FieldHandle> 
       <table>CREV_TASK</table> 
       <fieldName>TASK_ID</fieldName> 
      </FieldHandle> 
    </sequenceNumberFieldHandle> 

      <Mapping> 
       <descriptor>icis.cr.common.db.entities.ClerkReviewTask.ClassDescriptor</descriptor> 
       <usesMethodAccessing>false</usesMethodAccessing> 
       <inherited>false</inherited> 
       <readOnly>false</readOnly> 
       <getMethodHandle> 
        <MethodHandle emptyAggregate="true"> 
        </MethodHandle> 
       </getMethodHandle> 
       <setMethodHandle> 
        <MethodHandle emptyAggregate="true"> 
        </MethodHandle> 
       </setMethodHandle> 
       <instanceVariableName>id</instanceVariableName> 
       <defaultFieldNames> 
        <defaultFieldName>direct field=</defaultFieldName> 
       </defaultFieldNames> 
       <fieldHandle> 
        <FieldHandle> 
         <table>CREV_TASK</table> 
         <fieldName>TASK_ID</fieldName> 
        </FieldHandle> 
       </fieldHandle> 
       <classIndicator>BldrDirectToFieldMapping</classIndicator> 
     </Mapping> 

ответ

0

я был в состоянии исправить это, щелкнув правой кнопкой мыши мой проект в TopLink Mapping Workbench и выбрав Export Project to Java Source. Мой файл устарел и вызвал эту ошибку и следующее:

ИСКЛЮЧЕНИЯ [TOPLINK-110] (TopLink - 9.0.3.7 (Build 440)): oracle.toplink.exceptions.DescriptorException

ИСКЛЮЧЕНИЕ ОПИСАНИЕ: Дескриптор отсутствует для класса [icis.cr.common.db.entities.ClerkReviewCaseTask].

КАРТИРОВАНИЕ: oracle.toplink.mappings.OneToManyMapping [caseTasks]

ДЕСКРИПТОР: Дескриптор (icis.cr.common.db.entities.ClerkReviewTask -> [DatabaseTable (CREV_TASK)])