Kodo.jdbc.meta.MappingInfoNotFoundException:

Hi,
I am getting following error when iam executing my application.
kodo.jdbc.meta.MappingInfoNotFoundException: The "column"
attribute/extension for field
"com.ejgallo.winemanager.domain.impl.equipment.SiteBoImpl._bottling" names
a column whose type (VARCHAR) is not compatible with the type of the field
(BIT).
[5/4/04 13:15:19:274 GMT+05:30] 6c594c92 SystemErr R      at
kodo.jdbc.meta.Mappings.invalidMapping(Mappings.java:94)
[5/4/04 13:15:19:274 GMT+05:30] 6c594c92 SystemErr R      at
kodo.jdbc.meta.ColumnFieldMapping.fromMappingInfo(ColumnFieldMapping.java:116)
[5/4/04 13:15:19:274 GMT+05:30] 6c594c92 SystemErr R      at
kodo.jdbc.meta.ValueFieldMapping.fromMappingInfo(ValueFieldMapping.java:55)
In equipment.jdo mapping is like this
<class name="SiteBoImpl" identity-type="datastore">
               <extension vendor-name="kodo" key="table" value="EJGALLO.WMGMT01_SITE"
/>
               <extension vendor-name="kodo" key="pk-column" value="SYS_I" />
               <extension vendor-name="kodo" key="jdbc-sequence-name"
value="EJGALLO.SITE_SYS_SEQ_N"/>
               <extension vendor-name="kodo" key="class-column" value="none" />
               <extension vendor-name="kodo" key="lock-column" value="none" />
               <field name="_active"/>
               <field name="_bottling"/>
               <field name="_brandy"/>
               <field name="_breweryType"/>
               <field name="_changeDate"/>
               <field name="_crush"/>
               <field name="_description"/>
               <field name="_galloOperation"/>
               <field name="_galloOwned"/>
               <field name="_jdeAddressBookNum"/>
               <field name="_limsTestPrefixCode"/>
               <field name="_name"/>
               <field name="_posting"/>
               <field name="_production"/>
               <field name="_reorg"/>
               <field name="_test"/>
               <field name="_transfer"/>
               <field name="_userId"/>
          </class>
And field mapping in equipment.mapping is
<class name="SiteBoImpl">
     <jdbc-class-map type="base" pk-column="SYS_I"
table="EJGALLO.WMGMT01_SITE"/>
<field name="_changeDate">
<jdbc-field-map type="value" column="CHG_S"/>
</field>
<field name="_description">
<jdbc-field-map type="value" column="SITE_D"/>
</field>
<field name="_name">
<jdbc-field-map type="value" column="SITE_N"/>
</field>
     <field name="_active">
                    <jdbc-field-map type="value" column="STAT_X"/>
               </field>
               <field name="_bottling">
                    <jdbc-field-map type="value" column="BTL_CAT_X"/>
               </field>
               <field name="_brandy">
                    <jdbc-field-map type="value" column="BRANDY_CAT_X"/>
               </field>
               <field name="_breweryType">
                    <jdbc-field-map type="value" column="BREWERY_TYP_I"/>
               </field>
               <field name="_crush">
                    <jdbc-field-map type="value" column="CRUSH_CAT_X"/>
               </field>
               <field name="_galloOperation">
                    <jdbc-field-map type="value" column="GALLO_OPER_CAT_X"/>
               </field>
               <field name="_galloOwned">
                    <jdbc-field-map type="value" column="GALLO_OWN_CAT_X"/>
               </field>
               <field name="_jdeAddressBookNum">
                    <jdbc-field-map type="value" column="JDE_ADDR_BOOK_I"/>
               </field>
               <field name="_limsTestPrefixCode">
                    <jdbc-field-map type="value" column="LIMS_TEST_PRE_I"/>
               </field>
               <field name="_posting">
                    <jdbc-field-map type="value" column="POST_CAT_X"/>
               </field>
               <field name="_production">
                    <jdbc-field-map type="value" column="PROD_CAT_X"/>
               </field>
               <field name="_reorg">
                    <jdbc-field-map type="value" column="REORG_CAT_X"/>
               </field>
               <field name="_test">
                    <jdbc-field-map type="value" column="TEST_CAT_X"/>
               </field>
               <field name="_transfer">
                    <jdbc-field-map type="value" column="XFER_CAT_X"/>
               </field>
               <field name="_userId">
                    <jdbc-field-map type="value" column="USR_I"/>
               </field>
</class>
So can anybody help me on this why i a getting this error.

Booleans cannot by default be stored as varchars. You have to implemnt
your own ColumnFieldMapping which does the transformation for you (since
Kodo does not know if it should be Y/N, T/F, or something else altogether)
Atul wrote:
Hi,
I am getting following error when iam executing my application.
kodo.jdbc.meta.MappingInfoNotFoundException: The "column"
attribute/extension for field
"com.ejgallo.winemanager.domain.impl.equipment.SiteBoImpl._bottling" names
a column whose type (VARCHAR) is not compatible with the type of the field
(BIT).
[5/4/04 13:15:19:274 GMT+05:30] 6c594c92 SystemErr R      at
kodo.jdbc.meta.Mappings.invalidMapping(Mappings.java:94)
[5/4/04 13:15:19:274 GMT+05:30] 6c594c92 SystemErr R      at
kodo.jdbc.meta.ColumnFieldMapping.fromMappingInfo(ColumnFieldMapping.java:116)
[5/4/04 13:15:19:274 GMT+05:30] 6c594c92 SystemErr R      at
kodo.jdbc.meta.ValueFieldMapping.fromMappingInfo(ValueFieldMapping.java:55)
In equipment.jdo mapping is like this
<class name="SiteBoImpl" identity-type="datastore">
               <extension vendor-name="kodo" key="table" value="EJGALLO.WMGMT01_SITE"
/>
               <extension vendor-name="kodo" key="pk-column" value="SYS_I" />
               <extension vendor-name="kodo" key="jdbc-sequence-name"
value="EJGALLO.SITE_SYS_SEQ_N"/>
               <extension vendor-name="kodo" key="class-column" value="none" />
               <extension vendor-name="kodo" key="lock-column" value="none" />
               <field name="_active"/>
               <field name="_bottling"/>
               <field name="_brandy"/>
               <field name="_breweryType"/>
               <field name="_changeDate"/>
               <field name="_crush"/>
               <field name="_description"/>
               <field name="_galloOperation"/>
               <field name="_galloOwned"/>
               <field name="_jdeAddressBookNum"/>
               <field name="_limsTestPrefixCode"/>
               <field name="_name"/>
               <field name="_posting"/>
               <field name="_production"/>
               <field name="_reorg"/>
               <field name="_test"/>
               <field name="_transfer"/>
               <field name="_userId"/>
          </class>
And field mapping in equipment.mapping is
<class name="SiteBoImpl">
     <jdbc-class-map type="base" pk-column="SYS_I"
table="EJGALLO.WMGMT01_SITE"/>
<field name="_changeDate">
<jdbc-field-map type="value" column="CHG_S"/>
</field>
<field name="_description">
<jdbc-field-map type="value" column="SITE_D"/>
</field>
<field name="_name">
<jdbc-field-map type="value" column="SITE_N"/>
</field>
     <field name="_active">
                    <jdbc-field-map type="value" column="STAT_X"/>
               </field>
               <field name="_bottling">
                    <jdbc-field-map type="value" column="BTL_CAT_X"/>
               </field>
               <field name="_brandy">
                    <jdbc-field-map type="value" column="BRANDY_CAT_X"/>
               </field>
               <field name="_breweryType">
                    <jdbc-field-map type="value" column="BREWERY_TYP_I"/>
               </field>
               <field name="_crush">
                    <jdbc-field-map type="value" column="CRUSH_CAT_X"/>
               </field>
               <field name="_galloOperation">
                    <jdbc-field-map type="value" column="GALLO_OPER_CAT_X"/>
               </field>
               <field name="_galloOwned">
                    <jdbc-field-map type="value" column="GALLO_OWN_CAT_X"/>
               </field>
               <field name="_jdeAddressBookNum">
                    <jdbc-field-map type="value" column="JDE_ADDR_BOOK_I"/>
               </field>
               <field name="_limsTestPrefixCode">
                    <jdbc-field-map type="value" column="LIMS_TEST_PRE_I"/>
               </field>
               <field name="_posting">
                    <jdbc-field-map type="value" column="POST_CAT_X"/>
               </field>
               <field name="_production">
                    <jdbc-field-map type="value" column="PROD_CAT_X"/>
               </field>
               <field name="_reorg">
                    <jdbc-field-map type="value" column="REORG_CAT_X"/>
               </field>
               <field name="_test">
                    <jdbc-field-map type="value" column="TEST_CAT_X"/>
               </field>
               <field name="_transfer">
                    <jdbc-field-map type="value" column="XFER_CAT_X"/>
               </field>
               <field name="_userId">
                    <jdbc-field-map type="value" column="USR_I"/>
               </field>
</class>
So can anybody help me on this why i a getting this error.
Steve Kim
[email protected]
SolarMetric Inc.
http://www.solarmetric.com

Similar Messages

  • WARN  kodo.jdbc.Schema  - Existing column "JDOID" on table

    Sorry, I've posted this before and never got back with some debug.
    I'm getting
    WARN kodo.jdbc.Schema - Existing column "JDOID" on table "<TABLE NAME
    HERE>" is incompatible with the same column in the given schema definition.
    I running
    kodo.jdbc.meta.MappingTool.main("-a","buildSchema","persistent.class(s)"...
    Here my complete trace output (Kodo 3.0.1)
    0 [23.01.04 10:04:39,712] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.alert.config.AlertConfiguration" with action
    "buildSchema".
    2253 [23.01.04 10:04:41,965] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.alert.config.MonitoredInteractionType" with
    action "buildSchema".
    2253 [23.01.04 10:04:41,965] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.alert.config.MonitoredSourceProcessType"
    with action "buildSchema".
    2253 [23.01.04 10:04:41,965] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.alert.Alert" with action "buildSchema".
    2303 [23.01.04 10:04:42,015] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.client.ClientConfiguration" with
    action "buildSchema".
    2573 [23.01.04 10:04:42,285] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.client.ClientIdentity" with action
    "buildSchema".
    2573 [23.01.04 10:04:42,285] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.client.ConfigurationOption" with
    action "buildSchema".
    2583 [23.01.04 10:04:42,295] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.client.ConfigurationValue" with
    action "buildSchema".
    2583 [23.01.04 10:04:42,295] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.client.FileTrackingConfiguration"
    with action "buildSchema".
    2583 [23.01.04 10:04:42,295] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.client.GeneralConfiguration" with
    action "buildSchema".
    2583 [23.01.04 10:04:42,295] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.client.InteractionNotification" with
    action "buildSchema".
    2593 [23.01.04 10:04:42,305] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.client.NotificationType" with action
    "buildSchema".
    2603 [23.01.04 10:04:42,315] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.client.PCIdentity" with action
    "buildSchema".
    2613 [23.01.04 10:04:42,325] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.pc.PCConfiguration" with action
    "buildSchema".
    2643 [23.01.04 10:04:42,355] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.server.ConsoleAdminUser" with action
    "buildSchema".
    2693 [23.01.04 10:04:42,405] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.server.SafeArea" with action
    "buildSchema".
    2723 [23.01.04 10:04:42,435] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.server.ServerConfiguration" with
    action "buildSchema".
    2813 [23.01.04 10:04:42,525] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.config.server.TemplateDefinition" with
    action "buildSchema".
    2813 [23.01.04 10:04:42,525] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.connection.ConnectCommand" with action
    "buildSchema".
    2863 [23.01.04 10:04:42,575] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.entitymodel.interaction.EntityInteraction"
    with action "buildSchema".
    2863 [23.01.04 10:04:42,575] [main] INFO kodo.Tool - Mapping tool running
    on type "class
    com.jario.server.entitymodel.interaction.EntityInteractionFileElement" with
    action "buildSchema".
    2863 [23.01.04 10:04:42,575] [main] INFO kodo.Tool - Mapping tool running
    on type "class
    com.jario.server.entitymodel.interaction.EntityInteractionFileProperty" with
    action "buildSchema".
    2873 [23.01.04 10:04:42,585] [main] INFO kodo.Tool - Mapping tool running
    on type "class
    com.jario.server.entitymodel.interaction.EntityInteractionProperty" with
    action "buildSchema".
    2873 [23.01.04 10:04:42,585] [main] INFO kodo.Tool - Mapping tool running
    on type "class
    com.jario.server.entitymodel.interaction.EntityInteractionSourceIdentity"
    with action "buildSchema".
    2873 [23.01.04 10:04:42,585] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.entitymodel.Entity" with action
    "buildSchema".
    2873 [23.01.04 10:04:42,585] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.entitymodel.EntityChronicle" with action
    "buildSchema".
    2883 [23.01.04 10:04:42,595] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.entitymodel.EntityLocation" with action
    "buildSchema".
    2883 [23.01.04 10:04:42,595] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.entitymodel.EntityLocationFilePath" with
    action "buildSchema".
    2903 [23.01.04 10:04:42,615] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.entitymodel.EntityNode" with action
    "buildSchema".
    2903 [23.01.04 10:04:42,615] [main] INFO kodo.Tool - Mapping tool running
    on type "class com.jario.server.entitymodel.EntityProperty" with action
    "buildSchema".
    2903 [23.01.04 10:04:42,615] [main] INFO kodo.Tool - Recording mapping and
    schema changes.
    2953 [23.01.04 10:04:42,665] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "ALERT".
    2983 [23.01.04 10:04:42,695] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "alert".
    2983 [23.01.04 10:04:42,695] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ALERTCONFIGURATION_JDOID" on table "alert".
    2983 [23.01.04 10:04:42,695] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ALERTNAME" on table "alert".
    2993 [23.01.04 10:04:42,705] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "alert".
    2993 [23.01.04 10:04:42,705] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "alert".
    2993 [23.01.04 10:04:42,705] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "alert".
    2993 [23.01.04 10:04:42,705] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "TYPESTR" on table "alert".
    2993 [23.01.04 10:04:42,705] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "TYPE_NULL" on table "alert".
    2993 [23.01.04 10:04:42,705] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "ALERTCONFIG".
    3034 [23.01.04 10:04:42,746] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "alertconfig".
    3044 [23.01.04 10:04:42,756] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ALERTGRANUALITY_NULL" on table "alertconfig".
    3044 [23.01.04 10:04:42,756] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ALERTGRANULARITYLEVEL" on table "alertconfig".
    3044 [23.01.04 10:04:42,756] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "CLIENTNOTIFICATIONGROUP_NULL" on table "alertconfig".
    3044 [23.01.04 10:04:42,756] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ENTITYNODE_JDOID" on table "alertconfig".
    3054 [23.01.04 10:04:42,766] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "alertconfig".
    3054 [23.01.04 10:04:42,766] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "alertconfig".
    3054 [23.01.04 10:04:42,766] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "alertconfig".
    3064 [23.01.04 10:04:42,776] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "TYPESTR" on table "alertconfig".
    3064 [23.01.04 10:04:42,776] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "ALERTCONFIG_EXTERNPROCTYPE".
    3074 [23.01.04 10:04:42,786] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "alertconfig_externproctype".
    3074 [23.01.04 10:04:42,786] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "EXCLUDEDSOURCEPROCESSTYP_JDOID" on table
    "alertconfig_externproctype".
    3074 [23.01.04 10:04:42,786] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "EXCLUDEDSOURCEPROCESSTYP_ORDER" on table
    "alertconfig_externproctype".
    3074 [23.01.04 10:04:42,786] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "alertconfig_externproctype".
    3074 [23.01.04 10:04:42,786] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name
    "ALERTCONFIG_MONINTERACTTYPE".
    3084 [23.01.04 10:04:42,796] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "alertconfig_moninteracttype".
    3084 [23.01.04 10:04:42,796] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "alertconfig_moninteracttype".
    3084 [23.01.04 10:04:42,796] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "MONITOREDINTERACTIONTYP_JDOID" on table
    "alertconfig_moninteracttype".
    3094 [23.01.04 10:04:42,806] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "MONITOREDINTERACTIONTYP_ORDER" on table
    "alertconfig_moninteracttype".
    3094 [23.01.04 10:04:42,806] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "CLIENTALERTCONFIG".
    3104 [23.01.04 10:04:42,816] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "clientalertconfig".
    3104 [23.01.04 10:04:42,816] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ALERTTYPE" on table "clientalertconfig".
    3104 [23.01.04 10:04:42,816] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "clientalertconfig".
    3104 [23.01.04 10:04:42,816] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "clientalertconfig".
    3104 [23.01.04 10:04:42,816] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "clientalertconfig".
    3114 [23.01.04 10:04:42,826] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name
    "CLIENTALERTCONFIG_NOTIFYSET".
    3114 [23.01.04 10:04:42,826] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "clientalertconfig_notifyset".
    3124 [23.01.04 10:04:42,836] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "INTERACTIONNOTIFYSET_JDOID" on table "clientalertconfig_notifyset".
    3124 [23.01.04 10:04:42,836] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "INTERACTIONNOTIFYSET_ORDER" on table "clientalertconfig_notifyset".
    3124 [23.01.04 10:04:42,836] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "clientalertconfig_notifyset".
    3124 [23.01.04 10:04:42,836] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "CLIENTCONFIG".
    3144 [23.01.04 10:04:42,856] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "clientconfig".
    3154 [23.01.04 10:04:42,866] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "CLIENTIDENTITY_JDOID" on table "clientconfig".
    3154 [23.01.04 10:04:42,866] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "FILETRACKINGCONFIG_JDOID" on table "clientconfig".
    3154 [23.01.04 10:04:42,866] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "GENERALCONFIGURATION_JDOID" on table "clientconfig".
    3164 [23.01.04 10:04:42,876] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "clientconfig".
    3164 [23.01.04 10:04:42,876] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "clientconfig".
    3164 [23.01.04 10:04:42,876] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "clientconfig".
    3164 [23.01.04 10:04:42,876] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name
    "CLIENTCONFIG_ALLALERTCONFIG".
    3184 [23.01.04 10:04:42,896] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "clientconfig_allalertconfig".
    3184 [23.01.04 10:04:42,896] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ALLALERTSCONFIGURATION_JDOID" on table
    "clientconfig_allalertconfig".
    3194 [23.01.04 10:04:42,906] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ALLALERTSCONFIGURATION_ORDER" on table
    "clientconfig_allalertconfig".
    3194 [23.01.04 10:04:42,906] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "clientconfig_allalertconfig".
    3194 [23.01.04 10:04:42,906] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "CLIENTFILETRACKINGCONFIG".
    3234 [23.01.04 10:04:42,946] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "clientfiletrackingconfig".
    3234 [23.01.04 10:04:42,946] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "EXCLUDEDFOLDERS_JDOID" on table "clientfiletrackingconfig".
    3234 [23.01.04 10:04:42,946] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "FILETYPES_JDOID" on table "clientfiletrackingconfig".
    3234 [23.01.04 10:04:42,946] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "clientfiletrackingconfig".
    3244 [23.01.04 10:04:42,956] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "clientfiletrackingconfig".
    3244 [23.01.04 10:04:42,956] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "clientfiletrackingconfig".
    3244 [23.01.04 10:04:42,956] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "CLIENTGENERALCONFIG".
    3264 [23.01.04 10:04:42,976] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "clientgeneralconfig".
    3264 [23.01.04 10:04:42,976] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "clientgeneralconfig".
    3264 [23.01.04 10:04:42,976] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "clientgeneralconfig".
    3264 [23.01.04 10:04:42,976] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "clientgeneralconfig".
    3274 [23.01.04 10:04:42,986] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "LANGUAGE_JDOID" on table "clientgeneralconfig".
    3274 [23.01.04 10:04:42,986] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "LOADMESSENGERONSTARTUP_JDOID" on table "clientgeneralconfig".
    3284 [23.01.04 10:04:42,996] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "LOADVIEWERONSTARTUP_JDOID" on table "clientgeneralconfig".
    3284 [23.01.04 10:04:42,996] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "CLIENTIDENTITY".
    3324 [23.01.04 10:04:43,036] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "clientidentity".
    3324 [23.01.04 10:04:43,036] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "DOMAINSTR" on table "clientidentity".
    3324 [23.01.04 10:04:43,036] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "clientidentity".
    3324 [23.01.04 10:04:43,036] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "clientidentity".
    3334 [23.01.04 10:04:43,046] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "clientidentity".
    3344 [23.01.04 10:04:43,056] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "USERNAME" on table "clientidentity".
    3354 [23.01.04 10:04:43,066] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "CONFIGOPTION".
    3384 [23.01.04 10:04:43,096] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "configoption".
    3384 [23.01.04 10:04:43,096] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "configoption".
    3394 [23.01.04 10:04:43,106] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "configoption".
    3394 [23.01.04 10:04:43,106] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "configoption".
    3394 [23.01.04 10:04:43,106] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "MANDATORY" on table "configoption".
    3394 [23.01.04 10:04:43,106] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "SELECTED" on table "configoption".
    3394 [23.01.04 10:04:43,106] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "VALUESTR" on table "configoption".
    3394 [23.01.04 10:04:43,106] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "CONFIGVALUE".
    3414 [23.01.04 10:04:43,126] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "configvalue".
    3424 [23.01.04 10:04:43,136] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "configvalue".
    3424 [23.01.04 10:04:43,136] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "configvalue".
    3424 [23.01.04 10:04:43,136] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "configvalue".
    3424 [23.01.04 10:04:43,136] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "LOCKED" on table "configvalue".
    3434 [23.01.04 10:04:43,146] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "MULTIOPTION" on table "configvalue".
    3434 [23.01.04 10:04:43,146] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "SAVEDELETEDOPTIONS" on table "configvalue".
    3434 [23.01.04 10:04:43,146] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "CONFIGVALUE_DELETEOPTIONS".
    3454 [23.01.04 10:04:43,166] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "configvalue_deleteoptions".
    3454 [23.01.04 10:04:43,166] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "DELETEDOPTIONS_JDOID" on table "configvalue_deleteoptions".
    3454 [23.01.04 10:04:43,166] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "DELETEDOPTIONS_ORDER" on table "configvalue_deleteoptions".
    3454 [23.01.04 10:04:43,166] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "configvalue_deleteoptions".
    3454 [23.01.04 10:04:43,166] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "CONFIGVALUE_OPTIONS".
    3464 [23.01.04 10:04:43,176] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "configvalue_options".
    3464 [23.01.04 10:04:43,176] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "configvalue_options".
    3464 [23.01.04 10:04:43,176] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "OPTIONS_JDOID" on table "configvalue_options".
    3464 [23.01.04 10:04:43,176] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "OPTIONS_ORDER" on table "configvalue_options".
    3474 [23.01.04 10:04:43,186] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "CONNECTIONCOMMAND".
    3474 [23.01.04 10:04:43,186] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "connectioncommand".
    3474 [23.01.04 10:04:43,186] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "connectioncommand".
    3474 [23.01.04 10:04:43,186] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "connectioncommand".
    3484 [23.01.04 10:04:43,196] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "connectioncommand".
    3484 [23.01.04 10:04:43,196] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "SENDERSPCIDENTITY_JDOID" on table "connectioncommand".
    3484 [23.01.04 10:04:43,196] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "CONSOLEADMINUSER".
    3494 [23.01.04 10:04:43,206] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "consoleadminuser".
    3494 [23.01.04 10:04:43,206] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "consoleadminuser".
    3494 [23.01.04 10:04:43,206] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "consoleadminuser".
    3494 [23.01.04 10:04:43,206] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "consoleadminuser".
    3494 [23.01.04 10:04:43,206] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "PASSWORD" on table "consoleadminuser".
    3494 [23.01.04 10:04:43,206] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "USERNAME" on table "consoleadminuser".
    3494 [23.01.04 10:04:43,206] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "ENTITY".
    3544 [23.01.04 10:04:43,256] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "entity".
    3544 [23.01.04 10:04:43,256] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ENTITYNODE_JDOID" on table "entity".
    3544 [23.01.04 10:04:43,256] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "HASHCODE" on table "entity".
    3554 [23.01.04 10:04:43,266] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "entity".
    3564 [23.01.04 10:04:43,276] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "entity".
    3564 [23.01.04 10:04:43,276] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "entity".
    3574 [23.01.04 10:04:43,286] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "ENTITYCHRONICLE".
    3584 [23.01.04 10:04:43,296] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "entitychronicle".
    3584 [23.01.04 10:04:43,296] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "entitychronicle".
    3594 [23.01.04 10:04:43,306] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "entitychronicle".
    3594 [23.01.04 10:04:43,306] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "entitychronicle".
    3594 [23.01.04 10:04:43,306] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ROOTENTITYNODE_JDOID" on table "entitychronicle".
    3594 [23.01.04 10:04:43,306] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "ENTITYINTER".
    3604 [23.01.04 10:04:43,316] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "EXACTTIMESTAMP" on table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "FILEELEMENT_JDOID" on table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "INTERACTIONTYPE_NULL" on table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "OLDFILEELEMENT_JDOID" on table "entityinter".
    3614 [23.01.04 10:04:43,326] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "SOURCEIDENTITY_JDOID" on table "entityinter".
    3614 [23.01.04 10:04:43,326] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "SOURCEPROCESSNAME" on table "entityinter".
    3614 [23.01.04 10:04:43,326] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "TIMESTAMPDATE" on table "entityinter".
    3614 [23.01.04 10:04:43,326] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "TYPESTR" on table "entityinter".
    3624 [23.01.04 10:04:43,336] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "ENTITYINTERFILEELEMENT".
    3634 [23.01.04 10:04:43,346] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "entityinterfileelement".
    3634 [23.01.04 10:04:43,346] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "FILESTORAGETYPE_NULL" on table "entityinterfileelement".
    3644 [23.01.04 10:04:43,356] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "FULLPATH" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "HASHCODE" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "REMOTELOCALPATH" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "TYPESTR" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name
    "ENTITYINTERFILEELEMENT_ENTPROP".
    3684 [23.01.04 10:04:43,396] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "entityinterfileelement_entprop".
    3684 [23.01.04 10:04:43,396] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ENTITYINTERACTIONPROPS_JDOID" on table
    "entityinterfileelement_entprop".
    3684 [23.01.04 10:04:43,396] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ENTITYINTERACTIONPROPS_ORDER" on table
    "entityinterfileelement_entprop".
    3684 [23.01.04 10:04:43,396] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "entityinterfileelement_entprop".
    3694 [23.01.04 10:04:43,406] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "ENTITYINTERFILEPROPERTY".
    3704 [23.01.04 10:04:43,416] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "entityinterfileproperty".
    3714 [23.01.04 10:04:43,426] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "entityinterfileproperty".
    3714 [23.01.04 10:04:43,426] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "entityinterfileproperty".
    3714 [23.01.04 10:04:43,426] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "entityinterfileproperty".
    3724 [23.01.04 10:04:43,436] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "KEYSTR" on table "entityinterfileproperty".
    3724 [23.01.04 10:04:43,436] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "VALUESTR" on table "entityinterfileproperty".
    3724 [23.01.04 10:04:43,436] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "ENTITYINTERPROPERTY".
    3734 [23.01.04 10:04:43,446] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "entityinterproperty".
    3734 [23.01.04 10:04:43,446] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "entityinterproperty".
    3734 [23.01.04 10:04:43,446] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "entityinterproperty".
    3734 [23.01.04 10:04:43,446] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "entityinterproperty".
    3734 [23.01.04 10:04:43,446] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "KEYSTR" on table "entityinterproperty".
    3744 [23.01.04 10:04:43,456] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "VALUESTR" on table "entityinterproperty".
    3744 [23.01.04 10:04:43,456] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "ENTITYINTERSOURCEIDENTITY".
    3754 [23.01.04 10:04:43,466] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "entityintersourceidentity".
    3765 [23.01.04 10:04:43,477] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "CLIENTIDENTITY_JDOID" on table "entityintersourceidentity".
    3765 [23.01.04 10:04:43,477] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOCLASS" on table "entityintersourceidentity".
    3765 [23.01.04 10:04:43,477] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "entityintersourceidentity".
    3765 [23.01.04 10:04:43,477] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOVERSION" on table "entityintersourceidentity".
    3765 [23.01.04 10:04:43,477] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "PCIDENTITY_JDOID" on table "entityintersourceidentity".
    3765 [23.01.04 10:04:43,477] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "ENTITYINTER_ENTPROP".
    3775 [23.01.04 10:04:43,487] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "entityinter_entprop".
    3775 [23.01.04 10:04:43,487] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ENTITYINTERACTIONPROPS_JDOID" on table "entityinter_entprop".
    3775 [23.01.04 10:04:43,487] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "ENTITYINTERACTIONPROPS_ORDER" on table "entityinter_entprop".
    3775 [23.01.04 10:04:43,487] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "JDOID" on table "entityinter_entprop".
    3805 [23.01.04 10:04:43,517] [main] INFO kodo.jdbc.Schema - Reading table
    information for schema name "null", table name "ENTITYLOCATION".
    3815 [23.01.04 10:04:43,527] [main] INFO kodo.jdbc.Schema - Reading column
    information for table "entitylocation".
    3815 [23.01.04 10:04:43,527] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "CREATORENTITYINTERACTION_JDOID" on table "entitylocation".
    3815 [23.01.04 10:04:43,527] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "DELETED" on table "entitylocation".
    3815 [23.01.04 10:04:43,527] [main] DEBUG kodo.jdbc.Schema - Found existing
    column "FILESTORAGETYPE_NULL" on tabl

    Any Ideas on the warns I'm getting via running
    'kodo.jdbc.meta.MappingTool.main'
    For every table I have:
    'WARN kodo.jdbc.Schema - Existing column "JDOID" on table "<TABLE NAME
    HERE>" is incompatible with the same column in the given schema definition.'
    Kind Regards
    Graham Cruickshanks
    (Now running Kodo 3.0.2)
    "Graham Cruickshanks" <[email protected]> wrote in message
    news:[email protected]...
    Sorry, I've posted this before and never got back with some debug.
    I'm getting
    WARN kodo.jdbc.Schema - Existing column "JDOID" on table "<TABLE NAME
    HERE>" is incompatible with the same column in the given schemadefinition.
    >
    I running
    kodo.jdbc.meta.MappingTool.main("-a","buildSchema","persistent.class(s)"...
    >
    Here my complete trace output (Kodo 3.0.1)
    0 [23.01.04 10:04:39,712] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.alert.config.AlertConfiguration" withaction
    "buildSchema".
    2253 [23.01.04 10:04:41,965] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.alert.config.MonitoredInteractionType"with
    action "buildSchema".
    2253 [23.01.04 10:04:41,965] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.alert.config.MonitoredSourceProcessType"
    with action "buildSchema".
    2253 [23.01.04 10:04:41,965] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.alert.Alert" with action "buildSchema".
    2303 [23.01.04 10:04:42,015] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.client.ClientConfiguration" with
    action "buildSchema".
    2573 [23.01.04 10:04:42,285] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.client.ClientIdentity" with action
    "buildSchema".
    2573 [23.01.04 10:04:42,285] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.client.ConfigurationOption" with
    action "buildSchema".
    2583 [23.01.04 10:04:42,295] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.client.ConfigurationValue" with
    action "buildSchema".
    2583 [23.01.04 10:04:42,295] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.client.FileTrackingConfiguration"
    with action "buildSchema".
    2583 [23.01.04 10:04:42,295] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.client.GeneralConfiguration" with
    action "buildSchema".
    2583 [23.01.04 10:04:42,295] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.client.InteractionNotification"with
    action "buildSchema".
    2593 [23.01.04 10:04:42,305] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.client.NotificationType" withaction
    "buildSchema".
    2603 [23.01.04 10:04:42,315] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.client.PCIdentity" with action
    "buildSchema".
    2613 [23.01.04 10:04:42,325] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.pc.PCConfiguration" with action
    "buildSchema".
    2643 [23.01.04 10:04:42,355] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.server.ConsoleAdminUser" withaction
    "buildSchema".
    2693 [23.01.04 10:04:42,405] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.server.SafeArea" with action
    "buildSchema".
    2723 [23.01.04 10:04:42,435] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.server.ServerConfiguration" with
    action "buildSchema".
    2813 [23.01.04 10:04:42,525] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.config.server.TemplateDefinition" with
    action "buildSchema".
    2813 [23.01.04 10:04:42,525] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.connection.ConnectCommand" with action
    "buildSchema".
    2863 [23.01.04 10:04:42,575] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.entitymodel.interaction.EntityInteraction"
    with action "buildSchema".
    2863 [23.01.04 10:04:42,575] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class
    com.jario.server.entitymodel.interaction.EntityInteractionFileElement"with
    action "buildSchema".
    2863 [23.01.04 10:04:42,575] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class
    com.jario.server.entitymodel.interaction.EntityInteractionFileProperty"with
    action "buildSchema".
    2873 [23.01.04 10:04:42,585] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class
    com.jario.server.entitymodel.interaction.EntityInteractionProperty" with
    action "buildSchema".
    2873 [23.01.04 10:04:42,585] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class
    com.jario.server.entitymodel.interaction.EntityInteractionSourceIdentity"
    with action "buildSchema".
    2873 [23.01.04 10:04:42,585] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.entitymodel.Entity" with action
    "buildSchema".
    2873 [23.01.04 10:04:42,585] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.entitymodel.EntityChronicle" with action
    "buildSchema".
    2883 [23.01.04 10:04:42,595] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.entitymodel.EntityLocation" with action
    "buildSchema".
    2883 [23.01.04 10:04:42,595] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.entitymodel.EntityLocationFilePath" with
    action "buildSchema".
    2903 [23.01.04 10:04:42,615] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.entitymodel.EntityNode" with action
    "buildSchema".
    2903 [23.01.04 10:04:42,615] [main] INFO kodo.Tool - Mapping toolrunning
    on type "class com.jario.server.entitymodel.EntityProperty" with action
    "buildSchema".
    2903 [23.01.04 10:04:42,615] [main] INFO kodo.Tool - Recording mappingand
    schema changes.
    2953 [23.01.04 10:04:42,665] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "ALERT".
    2983 [23.01.04 10:04:42,695] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "alert".
    2983 [23.01.04 10:04:42,695] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "ALERTCONFIGURATION_JDOID" on table "alert".
    2983 [23.01.04 10:04:42,695] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "ALERTNAME" on table "alert".
    2993 [23.01.04 10:04:42,705] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "alert".
    2993 [23.01.04 10:04:42,705] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "alert".
    2993 [23.01.04 10:04:42,705] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "alert".
    2993 [23.01.04 10:04:42,705] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "TYPESTR" on table "alert".
    2993 [23.01.04 10:04:42,705] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "TYPE_NULL" on table "alert".
    2993 [23.01.04 10:04:42,705] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "ALERTCONFIG".
    3034 [23.01.04 10:04:42,746] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "alertconfig".
    3044 [23.01.04 10:04:42,756] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "ALERTGRANUALITY_NULL" on table "alertconfig".
    3044 [23.01.04 10:04:42,756] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "ALERTGRANULARITYLEVEL" on table "alertconfig".
    3044 [23.01.04 10:04:42,756] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "CLIENTNOTIFICATIONGROUP_NULL" on table "alertconfig".
    3044 [23.01.04 10:04:42,756] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "ENTITYNODE_JDOID" on table "alertconfig".
    3054 [23.01.04 10:04:42,766] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "alertconfig".
    3054 [23.01.04 10:04:42,766] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "alertconfig".
    3054 [23.01.04 10:04:42,766] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "alertconfig".
    3064 [23.01.04 10:04:42,776] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "TYPESTR" on table "alertconfig".
    3064 [23.01.04 10:04:42,776] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name"ALERTCONFIG_EXTERNPROCTYPE".
    >
    3074 [23.01.04 10:04:42,786] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "alertconfig_externproctype".
    3074 [23.01.04 10:04:42,786] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "EXCLUDEDSOURCEPROCESSTYP_JDOID" on table
    "alertconfig_externproctype".
    3074 [23.01.04 10:04:42,786] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "EXCLUDEDSOURCEPROCESSTYP_ORDER" on table
    "alertconfig_externproctype".
    3074 [23.01.04 10:04:42,786] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "alertconfig_externproctype".
    3074 [23.01.04 10:04:42,786] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name
    "ALERTCONFIG_MONINTERACTTYPE".
    3084 [23.01.04 10:04:42,796] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "alertconfig_moninteracttype".
    3084 [23.01.04 10:04:42,796] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "alertconfig_moninteracttype".
    3084 [23.01.04 10:04:42,796] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "MONITOREDINTERACTIONTYP_JDOID" on table
    "alertconfig_moninteracttype".
    3094 [23.01.04 10:04:42,806] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "MONITOREDINTERACTIONTYP_ORDER" on table
    "alertconfig_moninteracttype".
    3094 [23.01.04 10:04:42,806] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "CLIENTALERTCONFIG".
    3104 [23.01.04 10:04:42,816] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "clientalertconfig".
    3104 [23.01.04 10:04:42,816] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "ALERTTYPE" on table "clientalertconfig".
    3104 [23.01.04 10:04:42,816] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "clientalertconfig".
    3104 [23.01.04 10:04:42,816] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "clientalertconfig".
    3104 [23.01.04 10:04:42,816] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "clientalertconfig".
    3114 [23.01.04 10:04:42,826] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name
    "CLIENTALERTCONFIG_NOTIFYSET".
    3114 [23.01.04 10:04:42,826] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "clientalertconfig_notifyset".
    3124 [23.01.04 10:04:42,836] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "INTERACTIONNOTIFYSET_JDOID" on table"clientalertconfig_notifyset".
    >
    3124 [23.01.04 10:04:42,836] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "INTERACTIONNOTIFYSET_ORDER" on table"clientalertconfig_notifyset".
    >
    3124 [23.01.04 10:04:42,836] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "clientalertconfig_notifyset".
    3124 [23.01.04 10:04:42,836] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "CLIENTCONFIG".
    3144 [23.01.04 10:04:42,856] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "clientconfig".
    3154 [23.01.04 10:04:42,866] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "CLIENTIDENTITY_JDOID" on table "clientconfig".
    3154 [23.01.04 10:04:42,866] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "FILETRACKINGCONFIG_JDOID" on table "clientconfig".
    3154 [23.01.04 10:04:42,866] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "GENERALCONFIGURATION_JDOID" on table "clientconfig".
    3164 [23.01.04 10:04:42,876] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "clientconfig".
    3164 [23.01.04 10:04:42,876] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "clientconfig".
    3164 [23.01.04 10:04:42,876] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "clientconfig".
    3164 [23.01.04 10:04:42,876] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name
    "CLIENTCONFIG_ALLALERTCONFIG".
    3184 [23.01.04 10:04:42,896] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "clientconfig_allalertconfig".
    3184 [23.01.04 10:04:42,896] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "ALLALERTSCONFIGURATION_JDOID" on table
    "clientconfig_allalertconfig".
    3194 [23.01.04 10:04:42,906] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "ALLALERTSCONFIGURATION_ORDER" on table
    "clientconfig_allalertconfig".
    3194 [23.01.04 10:04:42,906] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "clientconfig_allalertconfig".
    3194 [23.01.04 10:04:42,906] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "CLIENTFILETRACKINGCONFIG".
    3234 [23.01.04 10:04:42,946] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "clientfiletrackingconfig".
    3234 [23.01.04 10:04:42,946] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "EXCLUDEDFOLDERS_JDOID" on table "clientfiletrackingconfig".
    3234 [23.01.04 10:04:42,946] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "FILETYPES_JDOID" on table "clientfiletrackingconfig".
    3234 [23.01.04 10:04:42,946] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "clientfiletrackingconfig".
    3244 [23.01.04 10:04:42,956] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "clientfiletrackingconfig".
    3244 [23.01.04 10:04:42,956] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "clientfiletrackingconfig".
    3244 [23.01.04 10:04:42,956] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "CLIENTGENERALCONFIG".
    3264 [23.01.04 10:04:42,976] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "clientgeneralconfig".
    3264 [23.01.04 10:04:42,976] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "clientgeneralconfig".
    3264 [23.01.04 10:04:42,976] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "clientgeneralconfig".
    3264 [23.01.04 10:04:42,976] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "clientgeneralconfig".
    3274 [23.01.04 10:04:42,986] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "LANGUAGE_JDOID" on table "clientgeneralconfig".
    3274 [23.01.04 10:04:42,986] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "LOADMESSENGERONSTARTUP_JDOID" on table "clientgeneralconfig".
    3284 [23.01.04 10:04:42,996] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "LOADVIEWERONSTARTUP_JDOID" on table "clientgeneralconfig".
    3284 [23.01.04 10:04:42,996] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "CLIENTIDENTITY".
    3324 [23.01.04 10:04:43,036] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "clientidentity".
    3324 [23.01.04 10:04:43,036] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "DOMAINSTR" on table "clientidentity".
    3324 [23.01.04 10:04:43,036] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "clientidentity".
    3324 [23.01.04 10:04:43,036] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "clientidentity".
    3334 [23.01.04 10:04:43,046] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "clientidentity".
    3344 [23.01.04 10:04:43,056] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "USERNAME" on table "clientidentity".
    3354 [23.01.04 10:04:43,066] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "CONFIGOPTION".
    3384 [23.01.04 10:04:43,096] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "configoption".
    3384 [23.01.04 10:04:43,096] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "configoption".
    3394 [23.01.04 10:04:43,106] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "configoption".
    3394 [23.01.04 10:04:43,106] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "configoption".
    3394 [23.01.04 10:04:43,106] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "MANDATORY" on table "configoption".
    3394 [23.01.04 10:04:43,106] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "SELECTED" on table "configoption".
    3394 [23.01.04 10:04:43,106] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "VALUESTR" on table "configoption".
    3394 [23.01.04 10:04:43,106] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "CONFIGVALUE".
    3414 [23.01.04 10:04:43,126] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "configvalue".
    3424 [23.01.04 10:04:43,136] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "configvalue".
    3424 [23.01.04 10:04:43,136] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "configvalue".
    3424 [23.01.04 10:04:43,136] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "configvalue".
    3424 [23.01.04 10:04:43,136] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "LOCKED" on table "configvalue".
    3434 [23.01.04 10:04:43,146] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "MULTIOPTION" on table "configvalue".
    3434 [23.01.04 10:04:43,146] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "SAVEDELETEDOPTIONS" on table "configvalue".
    3434 [23.01.04 10:04:43,146] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name"CONFIGVALUE_DELETEOPTIONS".
    >
    3454 [23.01.04 10:04:43,166] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "configvalue_deleteoptions".
    3454 [23.01.04 10:04:43,166] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "DELETEDOPTIONS_JDOID" on table "configvalue_deleteoptions".
    3454 [23.01.04 10:04:43,166] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "DELETEDOPTIONS_ORDER" on table "configvalue_deleteoptions".
    3454 [23.01.04 10:04:43,166] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "configvalue_deleteoptions".
    3454 [23.01.04 10:04:43,166] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "CONFIGVALUE_OPTIONS".
    3464 [23.01.04 10:04:43,176] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "configvalue_options".
    3464 [23.01.04 10:04:43,176] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "configvalue_options".
    3464 [23.01.04 10:04:43,176] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "OPTIONS_JDOID" on table "configvalue_options".
    3464 [23.01.04 10:04:43,176] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "OPTIONS_ORDER" on table "configvalue_options".
    3474 [23.01.04 10:04:43,186] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "CONNECTIONCOMMAND".
    3474 [23.01.04 10:04:43,186] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "connectioncommand".
    3474 [23.01.04 10:04:43,186] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "connectioncommand".
    3474 [23.01.04 10:04:43,186] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "connectioncommand".
    3484 [23.01.04 10:04:43,196] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "connectioncommand".
    3484 [23.01.04 10:04:43,196] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "SENDERSPCIDENTITY_JDOID" on table "connectioncommand".
    3484 [23.01.04 10:04:43,196] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "CONSOLEADMINUSER".
    3494 [23.01.04 10:04:43,206] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "consoleadminuser".
    3494 [23.01.04 10:04:43,206] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "consoleadminuser".
    3494 [23.01.04 10:04:43,206] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "consoleadminuser".
    3494 [23.01.04 10:04:43,206] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "consoleadminuser".
    3494 [23.01.04 10:04:43,206] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "PASSWORD" on table "consoleadminuser".
    3494 [23.01.04 10:04:43,206] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "USERNAME" on table "consoleadminuser".
    3494 [23.01.04 10:04:43,206] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "ENTITY".
    3544 [23.01.04 10:04:43,256] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "entity".
    3544 [23.01.04 10:04:43,256] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "ENTITYNODE_JDOID" on table "entity".
    3544 [23.01.04 10:04:43,256] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "HASHCODE" on table "entity".
    3554 [23.01.04 10:04:43,266] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "entity".
    3564 [23.01.04 10:04:43,276] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "entity".
    3564 [23.01.04 10:04:43,276] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "entity".
    3574 [23.01.04 10:04:43,286] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "ENTITYCHRONICLE".
    3584 [23.01.04 10:04:43,296] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "entitychronicle".
    3584 [23.01.04 10:04:43,296] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "entitychronicle".
    3594 [23.01.04 10:04:43,306] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "entitychronicle".
    3594 [23.01.04 10:04:43,306] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "entitychronicle".
    3594 [23.01.04 10:04:43,306] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "ROOTENTITYNODE_JDOID" on table "entitychronicle".
    3594 [23.01.04 10:04:43,306] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "ENTITYINTER".
    3604 [23.01.04 10:04:43,316] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "EXACTTIMESTAMP" on table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "FILEELEMENT_JDOID" on table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "INTERACTIONTYPE_NULL" on table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "entityinter".
    3604 [23.01.04 10:04:43,316] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "OLDFILEELEMENT_JDOID" on table "entityinter".
    3614 [23.01.04 10:04:43,326] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "SOURCEIDENTITY_JDOID" on table "entityinter".
    3614 [23.01.04 10:04:43,326] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "SOURCEPROCESSNAME" on table "entityinter".
    3614 [23.01.04 10:04:43,326] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "TIMESTAMPDATE" on table "entityinter".
    3614 [23.01.04 10:04:43,326] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "TYPESTR" on table "entityinter".
    3624 [23.01.04 10:04:43,336] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "ENTITYINTERFILEELEMENT".
    3634 [23.01.04 10:04:43,346] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "entityinterfileelement".
    3634 [23.01.04 10:04:43,346] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "FILESTORAGETYPE_NULL" on table "entityinterfileelement".
    3644 [23.01.04 10:04:43,356] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "FULLPATH" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "HASHCODE" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "REMOTELOCALPATH" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "TYPESTR" on table "entityinterfileelement".
    3674 [23.01.04 10:04:43,386] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name
    "ENTITYINTERFILEELEMENT_ENTPROP".
    3684 [23.01.04 10:04:43,396] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "entityinterfileelement_entprop".
    3684 [23.01.04 10:04:43,396] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "ENTITYINTERACTIONPROPS_JDOID" on table
    "entityinterfileelement_entprop".
    3684 [23.01.04 10:04:43,396] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "ENTITYINTERACTIONPROPS_ORDER" on table
    "entityinterfileelement_entprop".
    3684 [23.01.04 10:04:43,396] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "entityinterfileelement_entprop".
    3694 [23.01.04 10:04:43,406] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "ENTITYINTERFILEPROPERTY".
    3704 [23.01.04 10:04:43,416] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "entityinterfileproperty".
    3714 [23.01.04 10:04:43,426] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "entityinterfileproperty".
    3714 [23.01.04 10:04:43,426] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "entityinterfileproperty".
    3714 [23.01.04 10:04:43,426] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "entityinterfileproperty".
    3724 [23.01.04 10:04:43,436] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "KEYSTR" on table "entityinterfileproperty".
    3724 [23.01.04 10:04:43,436] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "VALUESTR" on table "entityinterfileproperty".
    3724 [23.01.04 10:04:43,436] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name "ENTITYINTERPROPERTY".
    3734 [23.01.04 10:04:43,446] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "entityinterproperty".
    3734 [23.01.04 10:04:43,446] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "entityinterproperty".
    3734 [23.01.04 10:04:43,446] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "entityinterproperty".
    3734 [23.01.04 10:04:43,446] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOVERSION" on table "entityinterproperty".
    3734 [23.01.04 10:04:43,446] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "KEYSTR" on table "entityinterproperty".
    3744 [23.01.04 10:04:43,456] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "VALUESTR" on table "entityinterproperty".
    3744 [23.01.04 10:04:43,456] [main] INFO kodo.jdbc.Schema - Readingtable
    information for schema name "null", table name"ENTITYINTERSOURCEIDENTITY".
    >
    3754 [23.01.04 10:04:43,466] [main] INFO kodo.jdbc.Schema - Readingcolumn
    information for table "entityintersourceidentity".
    3765 [23.01.04 10:04:43,477] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "CLIENTIDENTITY_JDOID" on table "entityintersourceidentity".
    3765 [23.01.04 10:04:43,477] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOCLASS" on table "entityintersourceidentity".
    3765 [23.01.04 10:04:43,477] [main] DEBUG kodo.jdbc.Schema - Foundexisting
    column "JDOID" on table "entityintersourceidentity".
    3765 [23.01.04 10:04:43,477] [main] DE

  • Kodo.jdbc.MappingFactory Null Pointer Exception

    Hi I got a problem with the kodoworkbench.
    I'm trying to save the mapping information into the .jdo file.
    So I set
    kodo.jdbc.MappingFactory=metadata
    in my kodo.properties.
    When I try to save the mapping information I get the following exceptions:
    Seems that a string value is missing anywhere but i don't now where ?
    Thanks
    WARN -- Exception raised of type ERROR: java.lang.NullPointerException
    java.lang.NullPointerException
         at
    kodo.jdbc.meta.MetaDataMappingFactory.addExtensions(MetaDataMappingFactory.java:253)
         at
    kodo.jdbc.meta.MetaDataMappingFactory.addMappingExtensions(MetaDataMappingFactory.java:219)
         at
    kodo.jdbc.meta.MetaDataMappingFactory.storeMappings(MetaDataMappingFactory.java:162)
         at
    kodo.jdbc.ide.meta.repos.SavingMappingInfoRepository.save(SavingMappingInfoRepository.java:50)
         at
    kodo.jdbc.ide.meta.repos.IdeMappingRepository.save(IdeMappingRepository.java:259)
         at
    kodo.jdbc.ide.meta.editor.MappingInfoTracker.save(MappingInfoTracker.java:53)
         at
    kodo.jdbc.ide.meta.editor.MappingInfoTracker.save(MappingInfoTracker.java:47)
         at kodo.jdbc.ide.meta.editor.MappingEditor.save(MappingEditor.java:161)
         at kodo.jdbc.ide.meta.editor.EditingPane.save(EditingPane.java:225)
         at kodo.jdbc.ide.meta.editor.EditingPane.access$100(EditingPane.java:24)
         at
    kodo.jdbc.ide.meta.editor.EditingPane$1.actionPerformed(EditingPane.java:84)
         at
    javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
         at
    javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
         at
    javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
         at javax.swing.AbstractButton.doClick(AbstractButton.java:289)
         at javax.swing.AbstractButton.doClick(AbstractButton.java:269)
         at
    javax.swing.plaf.basic.BasicMenuItemUI$ClickAction.actionPerformed(BasicMenuItemUI.java:1073)
         at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1530)
         at javax.swing.JComponent.processKeyBinding(JComponent.java:2438)
         at
    javax.swing.JMenuBar.processBindingForKeyStrokeRecursive(JMenuBar.java:658)
         at
    javax.swing.JMenuBar.processBindingForKeyStrokeRecursive(JMenuBar.java:666)
         at
    javax.swing.JMenuBar.processBindingForKeyStrokeRecursive(JMenuBar.java:666)
         at javax.swing.JMenuBar.processKeyBinding(JMenuBar.java:642)
         at javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:253)
         at
    javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:240)
         at
    javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:2515)
         at javax.swing.JComponent.processKeyBindings(JComponent.java:2507)
         at javax.swing.JComponent.processKeyEvent(JComponent.java:2401)
         at java.awt.Component.processEvent(Component.java:4909)
         at java.awt.Container.processEvent(Container.java:1569)
         at java.awt.Component.dispatchEventImpl(Component.java:3615)
         at java.awt.Container.dispatchEventImpl(Container.java:1627)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at
    java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1713)
         at
    java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:627)
         at
    java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:831)
         at
    java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:741)
         at
    java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:592)
         at java.awt.Component.dispatchEventImpl(Component.java:3506)
         at java.awt.Container.dispatchEventImpl(Container.java:1627)
         at java.awt.Window.dispatchEventImpl(Window.java:1606)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
         at
    java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at
    java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)

    Hi,
    No, if I use the file factory I do not get the errors.
    Here is the mapping info from an exported .mapping file.
    The exception raises when I change the tablename to STUDENT and then I try
    to save it.
    I stopped working with the workbench and started editing the .mapping by
    hand, because I get several NullPointerException without helpful exception
    messages.
    Thanks
    <?xml version="1.0" encoding="UTF-8"?>
    <mapping>
    <package name="xxx.jdo.business">
    <class name="Student">
    <jdbc-class-map type="base" table="STUDENT"/>
    <jdbc-version-ind type="version-number" column="JDOVERSION"/>
    <jdbc-class-ind type="in-class-name" column="JDOCLASS"/>
    <field name="hasTaken">
    <jdbc-field-map type="blob" column="HASTAKEN"/>
    </field>
    <field name="xxx.jdo.business.Person.birthDate">
    <jdbc-field-map type="value" column="BIRTHDATE"/>
    </field>
    <field name="xxx.jdo.business.Person.city">
    <jdbc-field-map type="value" column="CITY"/>
    </field>
    <field name="xxx.jdo.business.Person.id">
    <jdbc-field-map type="value" column="ID"/>
    </field>
    <field name="xxx.jdo.business.Person.kidNames">
    <jdbc-field-map type="blob" column="KIDNAMES"/>
    </field>
    <field name="xxx.jdo.business.Person.location">
    <jdbc-field-map type="one-one"
    column.JDOID="LOCATION_JDOID"/>
    </field>
    <field name="xxx.jdo.business.Person.name">
    <jdbc-field-map type="value" column="NAME0"/>
    </field>
    <field name="xxx.jdo.business.Person.picture">
    <jdbc-field-map type="value" column="PICTURE"/>
    </field>
    <field name="xxx.jdo.business.Person.state">
    <jdbc-field-map type="value" column="STATE"/>
    </field>
    <field name="xxx.jdo.business.Person.street">
    <jdbc-field-map type="value" column="STREET"/>
    </field>
    <field name="xxx.jdo.business.Person.zipcode">
    <jdbc-field-map type="value" column="ZIPCODE"/>
    </field>
    </class>
    </package>
    </mapping>
    Marc Prud'hommeaux wrote:
    Katze-
    If you use the "file" mapping factory, do you get the same error? Also,
    can you provide any details about the mappings you are trying to create
    (e.g., what is the inheritance strategy, etc)?
    In article <[email protected]>, katze felix wrote:
    Hi I got a problem with the kodoworkbench.
    I'm trying to save the mapping information into the .jdo file.
    So I set
    kodo.jdbc.MappingFactory=metadata
    in my kodo.properties.
    When I try to save the mapping information I get the following exceptions:
    Seems that a string value is missing anywhere but i don't now where ?
    Thanks
    WARN -- Exception raised of type ERROR: java.lang.NullPointerException
    java.lang.NullPointerException
         at
    kodo.jdbc.meta.MetaDataMappingFactory.addExtensions(MetaDataMappingFactory.java:253)
    >>
         at
    kodo.jdbc.meta.MetaDataMappingFactory.addMappingExtensions(MetaDataMappingFactory.java:219)
    >>
         at
    kodo.jdbc.meta.MetaDataMappingFactory.storeMappings(MetaDataMappingFactory.java:162)
    >>
         at
    kodo.jdbc.ide.meta.repos.SavingMappingInfoRepository.save(SavingMappingInfoRepository.java:50)
    >>
         at
    kodo.jdbc.ide.meta.repos.IdeMappingRepository.save(IdeMappingRepository.java:259)
    >>
         at
    kodo.jdbc.ide.meta.editor.MappingInfoTracker.save(MappingInfoTracker.java:53)
    >>
         at
    kodo.jdbc.ide.meta.editor.MappingInfoTracker.save(MappingInfoTracker.java:47)
    >>
         at kodo.jdbc.ide.meta.editor.MappingEditor.save(MappingEditor.java:161)
         at kodo.jdbc.ide.meta.editor.EditingPane.save(EditingPane.java:225)
         at kodo.jdbc.ide.meta.editor.EditingPane.access$100(EditingPane.java:24)
         at
    kodo.jdbc.ide.meta.editor.EditingPane$1.actionPerformed(EditingPane.java:84)
    >>
         at
    javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
         at
    javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
    >>
         at
    javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
    >>
         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
         at javax.swing.AbstractButton.doClick(AbstractButton.java:289)
         at javax.swing.AbstractButton.doClick(AbstractButton.java:269)
         at
    javax.swing.plaf.basic.BasicMenuItemUI$ClickAction.actionPerformed(BasicMenuItemUI.java:1073)
    >>
         at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1530)
         at javax.swing.JComponent.processKeyBinding(JComponent.java:2438)
         at
    javax.swing.JMenuBar.processBindingForKeyStrokeRecursive(JMenuBar.java:658)
         at
    javax.swing.JMenuBar.processBindingForKeyStrokeRecursive(JMenuBar.java:666)
         at
    javax.swing.JMenuBar.processBindingForKeyStrokeRecursive(JMenuBar.java:666)
         at javax.swing.JMenuBar.processKeyBinding(JMenuBar.java:642)
         at javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:253)
         at
    javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:240)
         at
    javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:2515)
    >>
         at javax.swing.JComponent.processKeyBindings(JComponent.java:2507)
         at javax.swing.JComponent.processKeyEvent(JComponent.java:2401)
         at java.awt.Component.processEvent(Component.java:4909)
         at java.awt.Container.processEvent(Container.java:1569)
         at java.awt.Component.dispatchEventImpl(Component.java:3615)
         at java.awt.Container.dispatchEventImpl(Container.java:1627)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at
    java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1713)
    >>
         at
    java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:627)
    >>
         at
    java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:831)
    >>
         at
    java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:741)
    >>
         at
    java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:592)
    >>
         at java.awt.Component.dispatchEventImpl(Component.java:3506)
         at java.awt.Container.dispatchEventImpl(Container.java:1627)
         at java.awt.Window.dispatchEventImpl(Window.java:1606)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
         at
    java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
    >>
         at
    java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
    >>
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
    Marc Prud'hommeaux
    SolarMetric Inc.

  • Kodo.jdbc.AutoIncrementConstraints doesn't seem to do anything

    I have an app_user table and related entity with an auto-increment
    primary key (on MySQL), and a user_role table and related entity with a
    FK pointing to the user PK. Both entities are using application
    identity. The problem is that the user_role record is written out with a
    null value for the FK pointing to the app_user table.
    I've set
    kodo.jdbc.AutoIncrementConstraints: true
    both in the kodo.properties file used for enhancing, and in the
    properties use for runtime user (which are fed to JDBCConfigurationImpl
    via the fromProperties() method). However, the flag simply seems to do
    nothing whether it's set or not...
    The user is first created, then the role is added, then either calling
    makePersistent or attachCopy has exactly the same effect, the user and
    the role are written out, but the role has a null fk... Right now
    there's no not-null constraint on the fk, but I believe it would be
    triggered if ti existed.
    Can anybody confirm that this should work ok?
    package.jdo:
    <class name="User" objectid-class="com.xxx.dexter.slice.dao.id.UserId">
    <extension vendor-name="kodo" key="detachable" value="true"/>
    <field name="id" primary-key="true">
    </field>
    <field name="roles">
    <collection element-type="UserRole"/>
    <!-- delete all userroles when the user is deleted -->
    <extension vendor-name="kodo" key="element-dependent"
    value="true"/>
    <!-- specify the field that owns this two-sided relation -->
    <extension vendor-name="kodo" key="inverse-owner" value="user"/>
    </field>
    </class>
    <class name="UserRole"
    objectid-class="com.xxx.dexter.slice.dao.id.UserRoleId">
    <extension vendor-name="kodo" key="detachable" value="true"/>
    <field name="id" primary-key="true">
    </field>
    <field name="user">
    </field>
    </class>
    package.mapping:
    <class name="User">
    <jdbc-class-map type="base" table="app_user"/>
    <field name="id" primary-key="true">
    <jdbc-field-map type="value" column="user_id"/>
    </field>
    <field name="roles">
    <jdbc-field-map type="one-many" table="user_role"
    ref-column.user_id="user_id"/>
    </field>
    </class>
    <class name="UserRole">
    <jdbc-class-map type="base" table="user_role"/>
    <field name="id" primary-key="true">
    <jdbc-field-map type="value" column="id"/>
    </field>
    <field name="user">
    <jdbc-field-map type="one-one" column.user_id="user_id"/>
    </field>
    </class>
    Regards,
    Colin

    Please ignore the message below. While I was properly using the
    jdbc-auto-increment vendor extension for some other tables, it was
    somehow left out on these two. Adding it resolved the problem.
    Colin Sampaleanu wrote:
    I have an app_user table and related entity with an auto-increment
    primary key (on MySQL), and a user_role table and related entity with a
    FK pointing to the user PK. Both entities are using application
    identity. The problem is that the user_role record is written out with a
    null value for the FK pointing to the app_user table.
    I've set
    kodo.jdbc.AutoIncrementConstraints: true
    both in the kodo.properties file used for enhancing, and in the
    properties use for runtime user (which are fed to JDBCConfigurationImpl
    via the fromProperties() method). However, the flag simply seems to do
    nothing whether it's set or not...
    The user is first created, then the role is added, then either calling
    makePersistent or attachCopy has exactly the same effect, the user and
    the role are written out, but the role has a null fk... Right now
    there's no not-null constraint on the fk, but I believe it would be
    triggered if ti existed.
    Can anybody confirm that this should work ok?
    package.jdo:
    <class name="User" objectid-class="com.xxx.dexter.slice.dao.id.UserId">
    <extension vendor-name="kodo" key="detachable" value="true"/>
    <field name="id" primary-key="true">
    </field>
    <field name="roles">
    <collection element-type="UserRole"/>
    <!-- delete all userroles when the user is deleted -->
    <extension vendor-name="kodo" key="element-dependent"
    value="true"/>
    <!-- specify the field that owns this two-sided relation -->
    <extension vendor-name="kodo" key="inverse-owner" value="user"/>
    </field>
    </class>
    <class name="UserRole"
    objectid-class="com.xxx.dexter.slice.dao.id.UserRoleId">
    <extension vendor-name="kodo" key="detachable" value="true"/>
    <field name="id" primary-key="true">
    </field>
    <field name="user">
    </field>
    </class>
    package.mapping:
    <class name="User">
    <jdbc-class-map type="base" table="app_user"/>
    <field name="id" primary-key="true">
    <jdbc-field-map type="value" column="user_id"/>
    </field>
    <field name="roles">
    <jdbc-field-map type="one-many" table="user_role"
    ref-column.user_id="user_id"/>
    </field>
    </class>
    <class name="UserRole">
    <jdbc-class-map type="base" table="user_role"/>
    <field name="id" primary-key="true">
    <jdbc-field-map type="value" column="id"/>
    </field>
    <field name="user">
    <jdbc-field-map type="one-one" column.user_id="user_id"/>
    </field>
    </class>
    Regards,
    Colin

  • Kodo 3.1.5 - JBuilder X Integration Problem

    Hi,
    I am a newbie to both JBuilder X and Kodo, but I need to get a legacy application working with that environment (for maintenance purposes).
    My issue seems basic, but heck if I can figure it out. I am trying to configure Kodo to work with JBuilder. All I change in the Kodo 3.1.5 Configuration Utility is setting the "Connection Driver" to: "oracle.jdbc.driver.OracleDriver". When I try to save this, I get the following exception:
    WARN -- oracle.jdbc.driver.OracleDriver
    kodo.util.FatalDataStoreException: oracle.jdbc.driver.OracleDriver
    NestedThrowables:
    java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
         at kodo.jdbc.sql.SQLExceptions.getFatalDataStore(SQLExceptions.java:42)
         at kodo.jdbc.sql.SQLExceptions.getFatalDataStore(SQLExceptions.java:24)
         at kodo.jdbc.schema.DataSourceFactory.createDataSource(DataSourceFactory.java:96)
         at kodo.jdbc.conf.JDBCConfigurationImpl.createConnectionFactory(JDBCConfigurationImpl.java:954)
         at kodo.jdbc.conf.JDBCConfigurationImpl.getConnectionFactory(JDBCConfigurationImpl.java:869)
         at kodo.jdbc.conf.JDBCConfigurationImpl.getDataSource(JDBCConfigurationImpl.java:960)
         at kodo.jdbc.runtime.JDBCStoreManager.setPersistenceManager(JDBCStoreManager.java:68)
         at kodo.runtime.PersistenceManagerImpl.initialize(PersistenceManagerImpl.java:196)
         at kodo.runtime.PersistenceManagerFactoryImpl.getPersistenceManager(PersistenceManagerFactoryImpl.java:139)
         at kodo.runtime.PersistenceManagerFactoryImpl.getPersistenceManager(PersistenceManagerFactoryImpl.java:102)
         at kodo.runtime.PersistenceManagerFactoryImpl.getPersistenceManager(PersistenceManagerFactoryImpl.java:95)
         at kodo.jdbc.ide.configuration.ConfigurationComponent.validateConfiguration(ConfigurationComponent.java:299)
         at kodo.jdbc.integration.jbuilder.ConfigurationPage.isPageValid(ConfigurationPage.java:255)
         at com.borland.primetime.properties.g.isPageValid(Unknown Source)
         at com.borland.primetime.properties.PropertyDialog.a(Unknown Source)
         at com.borland.primetime.properties.PropertyDialog.saveAndClose(Unknown Source)
         at com.borland.primetime.properties.j.actionPerformed(Unknown Source)
         at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
         at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
         at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
         at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
         at java.awt.Component.processMouseEvent(Component.java:5100)
         at java.awt.Component.processEvent(Component.java:4897)
         at java.awt.Container.processEvent(Container.java:1569)
         at java.awt.Component.dispatchEventImpl(Component.java:3615)
         at java.awt.Container.dispatchEventImpl(Container.java:1627)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
         at java.awt.Container.dispatchEventImpl(Container.java:1613)
         at java.awt.Window.dispatchEventImpl(Window.java:1606)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:141)
         at java.awt.Dialog$1.run(Dialog.java:540)
         at java.awt.Dialog.show(Dialog.java:561)
         at com.borland.primetime.ui.DefaultDialog.show(Unknown Source)
         at java.awt.Component.show(Component.java:1133)
         at java.awt.Component.setVisible(Component.java:1088)
         at com.borland.primetime.properties.PropertyManager.showPropertyDialog(Unknown Source)
         at kodo.jdbc.integration.jbuilder.Actions$ConfigureKodoAction.perform(Actions.java:130)
         at kodo.jdbc.integration.jbuilder.Actions$ConfigureKodoAction.perform(Actions.java:124)
         at kodo.jdbc.integration.jbuilder.SafeBrowserAction.actionPerformed(SafeBrowserAction.java:70)
         at com.borland.primetime.ide.BrowserAction.actionPerformed(Unknown Source)
         at com.borland.primetime.actions.ActionButton.a(Unknown Source)
         at com.borland.primetime.actions.ActionButton.fire(Unknown Source)
         at com.borland.primetime.actions.ActionButton.processMouseEvent(Unknown Source)
         at java.awt.Component.processEvent(Component.java:4897)
         at java.awt.Container.processEvent(Container.java:1569)
         at java.awt.Component.dispatchEventImpl(Component.java:3615)
         at java.awt.Container.dispatchEventImpl(Container.java:1627)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
         at java.awt.Container.dispatchEventImpl(Container.java:1613)
         at java.awt.Window.dispatchEventImpl(Window.java:1606)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
    Caused by: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
         at java.net.URLClassLoader$1.run(URLClassLoader.java:199)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
         at java.lang.Class.forName0(Native Method)
         at java.lang.Class.forName(Class.java:219)
         at kodo.jdbc.schema.DataSourceFactory.createDataSource(DataSourceFactory.java:55)
         ... 65 more
    NestedThrowablesStackTrace:
    java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
         at java.net.URLClassLoader$1.run(URLClassLoader.java:199)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
         at java.lang.Class.forName0(Native Method)
         at java.lang.Class.forName(Class.java:219)
         at kodo.jdbc.schema.DataSourceFactory.createDataSource(DataSourceFactory.java:55)
         at kodo.jdbc.conf.JDBCConfigurationImpl.createConnectionFactory(JDBCConfigurationImpl.java:954)
         at kodo.jdbc.conf.JDBCConfigurationImpl.getConnectionFactory(JDBCConfigurationImpl.java:869)
         at kodo.jdbc.conf.JDBCConfigurationImpl.getDataSource(JDBCConfigurationImpl.java:960)
         at kodo.jdbc.runtime.JDBCStoreManager.setPersistenceManager(JDBCStoreManager.java:68)
         at kodo.runtime.PersistenceManagerImpl.initialize(PersistenceManagerImpl.java:196)
         at kodo.runtime.PersistenceManagerFactoryImpl.getPersistenceManager(PersistenceManagerFactoryImpl.java:139)
         at kodo.runtime.PersistenceManagerFactoryImpl.getPersistenceManager(PersistenceManagerFactoryImpl.java:102)
         at kodo.runtime.PersistenceManagerFactoryImpl.getPersistenceManager(PersistenceManagerFactoryImpl.java:95)
         at kodo.jdbc.ide.configuration.ConfigurationComponent.validateConfiguration(ConfigurationComponent.java:299)
         at kodo.jdbc.integration.jbuilder.ConfigurationPage.isPageValid(ConfigurationPage.java:255)
         at com.borland.primetime.properties.g.isPageValid(Unknown Source)
         at com.borland.primetime.properties.PropertyDialog.a(Unknown Source)
         at com.borland.primetime.properties.PropertyDialog.saveAndClose(Unknown Source)
         at com.borland.primetime.properties.j.actionPerformed(Unknown Source)
         at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
         at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
         at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
         at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
         at java.awt.Component.processMouseEvent(Component.java:5100)
         at java.awt.Component.processEvent(Component.java:4897)
         at java.awt.Container.processEvent(Container.java:1569)
         at java.awt.Component.dispatchEventImpl(Component.java:3615)
         at java.awt.Container.dispatchEventImpl(Container.java:1627)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
         at java.awt.Container.dispatchEventImpl(Container.java:1613)
         at java.awt.Window.dispatchEventImpl(Window.java:1606)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:141)
         at java.awt.Dialog$1.run(Dialog.java:540)
         at java.awt.Dialog.show(Dialog.java:561)
         at com.borland.primetime.ui.DefaultDialog.show(Unknown Source)
         at java.awt.Component.show(Component.java:1133)
         at java.awt.Component.setVisible(Component.java:1088)
         at com.borland.primetime.properties.PropertyManager.showPropertyDialog(Unknown Source)
         at kodo.jdbc.integration.jbuilder.Actions$ConfigureKodoAction.perform(Actions.java:130)
         at kodo.jdbc.integration.jbuilder.Actions$ConfigureKodoAction.perform(Actions.java:124)
         at kodo.jdbc.integration.jbuilder.SafeBrowserAction.actionPerformed(SafeBrowserAction.java:70)
         at com.borland.primetime.ide.BrowserAction.actionPerformed(Unknown Source)
         at com.borland.primetime.actions.ActionButton.a(Unknown Source)
         at com.borland.primetime.actions.ActionButton.fire(Unknown Source)
         at com.borland.primetime.actions.ActionButton.processMouseEvent(Unknown Source)
         at java.awt.Component.processEvent(Component.java:4897)
         at java.awt.Container.processEvent(Container.java:1569)
         at java.awt.Component.dispatchEventImpl(Component.java:3615)
         at java.awt.Container.dispatchEventImpl(Container.java:1627)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
         at java.awt.Container.dispatchEventImpl(Container.java:1613)
         at java.awt.Window.dispatchEventImpl(Window.java:1606)
         at java.awt.Component.dispatchEvent(Component.java:3477)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
    So, it appears that it cannot find the Oracle class (oracle.jdbc.driver.OracleDriver). The ojdbc14.jar is in both my "required libraries" and my "classpath" for the JBuilder Project.
    Anyone know what I am doing wrong here?
    Thanks, in advance.
    Edited by houckman at 06/11/2007 8:25 AM

    Stephen Kim wrote:
    Did you set the StoreCharsAsNumbers=false in your DBDictionary setting?
    kodo.jdbc.DBDictionary: StoreCharsAsNumbers=false
    Jaime De La Jara F. wrote:
    Yes, but it seems we did something wrong, fortunely, after defining the
    correct CLASSPATH, we've got the mapping files with the right db
    structure, however there are some details to correct since when we execute
    the application, kodo complains about an int field not being compatible
    with a
    char column in the db, but the field is defined as char. Here is the error
    message :
    Caused by: kodo.jdbc.meta.MappingInfoNotFoundException: The "column"
    attribute/extension for field "cl.eclac.sca.modelo.Vertice.letter" names a
    column "LETTERX" in table "VERTICEX" whose type (CHAR) is not compatible
    with the type of the field (INTEGER).
    We are using Sybase adaptive Server 12.5. Any hint about this problem
    would
    be appreciated.
    No, we didn't try that option, however since the error was restricyed to
    only one class, we converted the field to a String and everything worked
    just fine. Thanks for the hint, we'll try it.

  • MappingInfoNotFoundException with one-many mapping to horizontal PC subclass

    Hi,
    I have a nasty niggling problem with a one-many mapping where the many
    side is a horizontally-mapped persistent subclass:
    kodo.util.FatalUserException: kodo.jdbc.meta.MappingInfoNotFoundException:
    The reference mappings for one-to-many field "Invoice.openTrades" are not
    in the table of the field's related persistent element
    type.[Invoice.openTrades [kodo.jdbc.meta.OneToManyFieldMapping]]
         at
    kodo.runtime.PersistenceManagerImpl.attach(PersistenceManagerImpl.java:4363)...
    NestedThrowablesStackTrace:
    kodo.jdbc.meta.MappingInfoNotFoundException: The reference mappings for
    one-to-many field "Invoice.openTrades" are not in the table of the field's
    related persistent element type.[Invoice.openTrades
    [kodo.jdbc.meta.OneToManyFieldMapping]]
         at kodo.jdbc.meta.Mappings.invalidMapping(Mappings.java:134)
         at kodo.jdbc.meta.Mappings.invalidMapping(Mappings.java:120)
         at
    kodo.jdbc.meta.OneToManyFieldMapping.fromMappingInfo(OneToManyFieldMapping.java:94)
         at
    kodo.jdbc.meta.RuntimeMappingProvider.getFieldMapping(RuntimeMappingProvider.java:198)
         at
    kodo.jdbc.meta.MappingRepository.getFieldMapping(MappingRepository.java:470)
         at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapping.java:991)
         at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapping.java:971)
         at
    kodo.jdbc.meta.AbstractClassMapping.getMappings(AbstractClassMapping.java:934)
         at
    kodo.jdbc.meta.AbstractClassMapping.getDeclaredFieldMappings(AbstractClassMapping.java:654)
         at
    kodo.jdbc.meta.AbstractClassMapping.resolve(AbstractClassMapping.java:796)
         at kodo.jdbc.meta.MappingRepository.resolve(MappingRepository.java:431)
         at kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:349)
         at kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:177)
         at
    kodo.jdbc.meta.MappingRepository.getMetaData(MappingRepository.java:165)
         at
    kodo.runtime.PersistenceManagerImpl.makePersistent(PersistenceManagerImpl.java:2423)
         at
    kodo.runtime.PersistenceManagerImpl.makePersistent(PersistenceManagerImpl.java:2375)
         at kodo.runtime.AttachManager.makePersistent(AttachManager.java:410)
         at kodo.runtime.AttachManager.attach(AttachManager.java:279)
         at kodo.runtime.AttachManager.attach(AttachManager.java:56)
         at
    kodo.runtime.PersistenceManagerImpl.attach(PersistenceManagerImpl.java:4349)
    I have another one-many mapping on the "one" class which is fine and is
    almost identical to the invalid mapping - it joins on the same
    columns/foreign key. The only real difference is that my invalid "many"
    side is a horizontally mapped subclass (parent class mapped to different
    table). When I took that class out of its hierarchy and mapped it as base,
    it works. I don't know why Kodo is saying the mapping for the join is not
    found, as the "many" side has an invoice field mapped as one-one. The
    superclass does not have a relation to invoice mapped. A slight
    complication is that Invoice itself has a persistent superclass persisted
    in the same table, but nothing refers to that so I don't think it is
    relevant.
    Class diagram is roughly like this:
    BaseTrade
    |
    Invoice 1-* Trade
    BaseReceipt
    |
    Invoice 1-* Receipt
    Invoice mapped to Invoice table; Trade mapped to Trade table but its
    superclass mapped to diff BaseTrade table; Receipt and its superclass
    BaseReceipt mapped to Receipt table.
    I saw an earlier posting on the same exception that mentioned "collection
    element-type" - mine is specified as "Trade", ie the subclass.
    Is there any reason why this should not work?
    I can provide you with .jdo and .mapping files if necessary.
    Many thanks,
    Alex

    Alex-
    Can you post your mapping? I just ran a test with a one-many relation to
    a subclass of a horizontally mapped class, and it worked fine.
    FYI, the example mapping I was using was:
    <?xml version="1.0" encoding="UTF-8"?>
    <mapping>
    <package name="horizmany">
    <class name="HorizManyOwner">
    <jdbc-class-map type="base" pk-column="JDOID"
    table="BUG1174OWNER"/>
    <jdbc-version-ind type="version-number"
    column="JDOVERSION"/>
    <jdbc-class-ind type="in-class-name" column="JDOCLASS"/>
    <field name="relation">
    <jdbc-field-map type="one-many"
    ref-column.JDOID="OWNER_JDOID" table="BUG1174RELATIONSUB"/>
    </field>
    </class>
    <class name="HorizManyRelationSub">
    <jdbc-class-map type="base" pk-column="JDOID"
    table="BUG1174RELATIONSUB"/>
    <jdbc-version-ind type="version-number"
    column="JDOVERSION"/>
    <jdbc-class-ind type="in-class-name" column="JDOCLASS"/>
    <field name="horizmany.HorizManyRelationSuper.superString">
    <jdbc-field-map type="value" column="SUPERSTRING"/>
    </field>
    <field name="owner">
    <jdbc-field-map type="one-one"
    column.JDOID="OWNER_JDOID"/>
    </field>
    <field name="subString">
    <jdbc-field-map type="value" column="SUBSTRING0"/>
    </field>
    </class>
    <class name="HorizManyRelationSuper">
    <jdbc-class-map type="horizontal"/>
    </class>
    </package>
    </mapping>
    In article <[email protected]>, Alex Robbins wrote:
    Hi,
    I have a nasty niggling problem with a one-many mapping where the many
    side is a horizontally-mapped persistent subclass:
    kodo.util.FatalUserException: kodo.jdbc.meta.MappingInfoNotFoundException:
    The reference mappings for one-to-many field "Invoice.openTrades" are not
    in the table of the field's related persistent element
    type.[Invoice.openTrades [kodo.jdbc.meta.OneToManyFieldMapping]]
         at
    kodo.runtime.PersistenceManagerImpl.attach(PersistenceManagerImpl.java:4363)...
    NestedThrowablesStackTrace:
    kodo.jdbc.meta.MappingInfoNotFoundException: The reference mappings for
    one-to-many field "Invoice.openTrades" are not in the table of the field's
    related persistent element type.[Invoice.openTrades
    [kodo.jdbc.meta.OneToManyFieldMapping]]
         at kodo.jdbc.meta.Mappings.invalidMapping(Mappings.java:134)
         at kodo.jdbc.meta.Mappings.invalidMapping(Mappings.java:120)
         at
    kodo.jdbc.meta.OneToManyFieldMapping.fromMappingInfo(OneToManyFieldMapping.java:94)
         at
    kodo.jdbc.meta.RuntimeMappingProvider.getFieldMapping(RuntimeMappingProvider.java:198)
         at
    kodo.jdbc.meta.MappingRepository.getFieldMapping(MappingRepository.java:470)
         at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapping.java:991)
         at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapping.java:971)
         at
    kodo.jdbc.meta.AbstractClassMapping.getMappings(AbstractClassMapping.java:934)
         at
    kodo.jdbc.meta.AbstractClassMapping.getDeclaredFieldMappings(AbstractClassMapping.java:654)
         at
    kodo.jdbc.meta.AbstractClassMapping.resolve(AbstractClassMapping.java:796)
         at kodo.jdbc.meta.MappingRepository.resolve(MappingRepository.java:431)
         at kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:349)
         at kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:177)
         at
    kodo.jdbc.meta.MappingRepository.getMetaData(MappingRepository.java:165)
         at
    kodo.runtime.PersistenceManagerImpl.makePersistent(PersistenceManagerImpl.java:2423)
         at
    kodo.runtime.PersistenceManagerImpl.makePersistent(PersistenceManagerImpl.java:2375)
         at kodo.runtime.AttachManager.makePersistent(AttachManager.java:410)
         at kodo.runtime.AttachManager.attach(AttachManager.java:279)
         at kodo.runtime.AttachManager.attach(AttachManager.java:56)
         at
    kodo.runtime.PersistenceManagerImpl.attach(PersistenceManagerImpl.java:4349)
    I have another one-many mapping on the "one" class which is fine and is
    almost identical to the invalid mapping - it joins on the same
    columns/foreign key. The only real difference is that my invalid "many"
    side is a horizontally mapped subclass (parent class mapped to different
    table). When I took that class out of its hierarchy and mapped it as base,
    it works. I don't know why Kodo is saying the mapping for the join is not
    found, as the "many" side has an invoice field mapped as one-one. The
    superclass does not have a relation to invoice mapped. A slight
    complication is that Invoice itself has a persistent superclass persisted
    in the same table, but nothing refers to that so I don't think it is
    relevant.
    Class diagram is roughly like this:
    BaseTrade
    |
    Invoice 1-* Trade
    BaseReceipt
    |
    Invoice 1-* Receipt
    Invoice mapped to Invoice table; Trade mapped to Trade table but its
    superclass mapped to diff BaseTrade table; Receipt and its superclass
    BaseReceipt mapped to Receipt table.
    I saw an earlier posting on the same exception that mentioned "collection
    element-type" - mine is specified as "Trade", ie the subclass.
    Is there any reason why this should not work?
    I can provide you with .jdo and .mapping files if necessary.
    Many thanks,
    Alex
    Marc Prud'hommeaux
    SolarMetric Inc.

  • Horizontal mapping + MappingInfoNotFoundException

    Hi,
    i got a problem with the mappingtool.
    I'am using horizontal mapping.
    The abstract superclass Person has an primary key field called id.
    Here is the jdo-metadata from package.jdo:
    <class name="Person" identity-type="application"
    objectid-class="PersonId">
    <field name="location" embedded="true"/>
    <field name="id" primary-key="true"/>
    <field name="kidNames">
    <collection element-type="java.lang.String"/>
    </field>
    </class>
    Here is the mapping data from package.mapping:
    <class name="Person">
    <jdbc-class-map type="horizontal"/>
    </class>
    I looked at the manual, section 7.6.4.
    Thank you
    Zach
    688 INFO [main] kodo.Tool - Mapping tool running on type "class
    xxx.persistence.jdo.business.Course" with action "validate".
    kodo.jdbc.meta.MappingInfoNotFoundException: No mapping information was
    found fo
    r "xxx.business.Person.id".
    at
    kodo.jdbc.meta.RuntimeMappingProvider.getFieldMapping(RuntimeMappingP
    rovider.java:149)
    at
    kodo.jdbc.meta.MappingRepository.getFieldMapping(MappingRepository.ja
    va:429)
    at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapp
    ing.java:911)
    at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapp
    ing.java:888)
    at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapp
    ing.java:666)
    at
    kodo.jdbc.meta.RuntimeMappingProvider.initialize(RuntimeMappingProvid
    er.java:89)
    at
    kodo.jdbc.meta.MappingRepository.getMappingInternal(MappingRepository
    java:364)
    at
    kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:30
    7)
    at
    kodo.jdbc.meta.AbstractFieldMapping.getTypeMapping(AbstractFieldMappi
    ng.java:661)
    at
    kodo.jdbc.meta.OneToOneFieldMapping.fromMappingInfo(OneToOneFieldMapp
    ing.java:123)
    at
    kodo.jdbc.meta.RuntimeMappingProvider.getFieldMapping(RuntimeMappingP
    rovider.java:160)
    at
    kodo.jdbc.meta.MappingRepository.getFieldMapping(MappingRepository.ja
    va:429)
    at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapp
    ing.java:911)
    at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapp
    ing.java:891)
    at
    kodo.jdbc.meta.AbstractClassMapping.getMappings(AbstractClassMapping.
    java:854)
    at
    kodo.jdbc.meta.AbstractClassMapping.getDeclaredFieldMappings(AbstractClassMapping.java:617)
    at
    kodo.jdbc.meta.AbstractClassMapping.resolve(AbstractClassMapping.java
    :758)
    at
    kodo.jdbc.meta.BaseClassMapping.resolve(BaseClassMapping.java:323)
    at
    kodo.jdbc.meta.MappingRepository.resolve(MappingRepository.java:390)
    at
    kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:30
    8)
    at
    kodo.jdbc.meta.AbstractFieldMapping.getTypeMapping(AbstractFieldMappi
    ng.java:661)
    at
    kodo.jdbc.meta.OneToOneFieldMapping.fromMappingInfo(OneToOneFieldMapp
    ing.java:123)
    at
    kodo.jdbc.meta.RuntimeMappingProvider.getFieldMapping(RuntimeMappingP
    rovider.java:160)
    at
    kodo.jdbc.meta.MappingRepository.getFieldMapping(MappingRepository.ja
    va:429)
    at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapp
    ing.java:911)
    at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapp
    ing.java:891)
    at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapp
    ing.java:666)
    at
    kodo.jdbc.meta.RuntimeMappingProvider.initialize(RuntimeMappingProvid
    er.java:89)
    at
    kodo.jdbc.meta.MappingRepository.getMappingInternal(MappingRepository
    java:364)
    at
    kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:30
    7)
    at
    kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:16
    2)
    at kodo.jdbc.meta.MappingTool.validate(MappingTool.java:621)
    at kodo.jdbc.meta.MappingTool.run(MappingTool.java:939)
    at kodo.jdbc.meta.MappingTool.run(MappingTool.java:850)
    at kodo.jdbc.meta.MappingTool.main(MappingTool.java:783)
    Exception in thread "main"

    Does Person have any concrete subclasses that map the id field to their
    own table? Do other classes have relations to Person?

  • Kodo 3.1.5 Released!

    All,
    Kodo 3.1.5 is now available! Get your copy while supplies last!
    Available only direct from SolarMetric at
    http://www.solarmetric.com/jdo/Evaluate/
    There are a number of bug fixes in this patch release. You can find the
    release notes at:
    http://www.solarmetric.com/jdo/Documentation/latest/docs/relnotes.html
    Enjoy,
    -Greg
    Greg Campbell
    SolarMetric Inc.

    Stephen Kim wrote:
    Did you set the StoreCharsAsNumbers=false in your DBDictionary setting?
    kodo.jdbc.DBDictionary: StoreCharsAsNumbers=false
    Jaime De La Jara F. wrote:
    Yes, but it seems we did something wrong, fortunely, after defining the
    correct CLASSPATH, we've got the mapping files with the right db
    structure, however there are some details to correct since when we execute
    the application, kodo complains about an int field not being compatible
    with a
    char column in the db, but the field is defined as char. Here is the error
    message :
    Caused by: kodo.jdbc.meta.MappingInfoNotFoundException: The "column"
    attribute/extension for field "cl.eclac.sca.modelo.Vertice.letter" names a
    column "LETTERX" in table "VERTICEX" whose type (CHAR) is not compatible
    with the type of the field (INTEGER).
    We are using Sybase adaptive Server 12.5. Any hint about this problem
    would
    be appreciated.
    No, we didn't try that option, however since the error was restricyed to
    only one class, we converted the field to a String and everything worked
    just fine. Thanks for the hint, we'll try it.

  • (Kodo 3.3.4) Generics & Xdoclet problem

    My development environment is java version "1.5.0_07" on XP Professional, with eclipse 3.2.
    I am using annotations via Xdoclet's @jdo to generate mapping metadata for my model objecs. This particular mapping that follows fails with a
    <pre>
    kodo.jdbc.meta.MappingInfoNotFoundException: No mapping information was
    found for "org.foobar.domain.Person.mCollectionOfStuff".
    </pre>
    The Xdoclet tags are as follows:
    <pre>
    * @jdo.field
    * collection-type="collection"
    * element-type="org.foobar.domain.IData"
    * embedded-element="false"
    * @jdo.field-vendor-extension vendor-name="kodo"
    * key="jdbc-field-map"
    * value="one-many"
    * @jdo.field-vendor-extension vendor-name="kodo"
    * key="jdbc-field-map/ref-column.ID"
    * value="DATAID"
    * @jdo.field-vendor-extension vendor-name="kodo"
    * key="jdbc-field-map/table"
    * value="PERSON_DATA"
    private List<IData> mCollectionOfStuff;
    </pre>
    When I remove the Generics friendly declaration to the following, it works:-
    <pre>
    private List mCollectionOfStuff;
    </pre>
    Does this mean that KODO 3.3.4 does not support Generics ?

    Laurent,
    I'm very sure my build environment is fine. I can compile, deploy & run without the use of generics for the Collection member. However, I will get a compile-time error when I declared the collection using generics.
    Thanks
    Gavin

  • MappingInfoNotFoundException for embedded class

    The following stack trace appears in my log file when attemping to create
    a new User object. User has an embedded Password object. Interestingly
    enough, the record, including the embedded password, makes it into the
    database. This leads me to believe that this may be a bug.
    1587736 DEBUG [tcpConnection-8080-0] jdbc.SQL - <t 24192593, conn 5035392>
    [0 ms] executing prepstmnt 31544052 INSERT INTO users (email, first_name,
    id, jdoclass, last_name, op_lock, password) VALUES (?, ?, ?, ?, ?, ?, ?)
    [params=(String) c, (String) a, (String) 1-USERKEY:5, (String)
    kodopt.model.User, (String) b, (int) 0, (String) d] [reused=0]
    1587749 INFO [tcpConnection-8080-0] kodo.MetaData - Parsing metadata
    resource
    "file:/var/resin-2.1.9/webapps/kodopt/WEB-INF/classes/kodopt/model.mapping".
    1587762 WARN [tcpConnection-8080-0] kodo.MetaData - No mapping
    information was found for "class kodopt.model.Password".
    1587763 WARN [tcpConnection-8080-0] kodo.Runtime - An exception was
    thrown while executing a transaction listener callback method. It was
    intercepted. The event framework consumes any exceptions that a
    TransactionListener may throw.
    kodo.jdbc.meta.MappingInfoNotFoundException: Could not obtain a valid
    mapping for "class kodopt.model.Password". This could indicate that
    mapping information could not be found, or that it was invalid. Check the
    log for possible details.
    at
    kodo.jdbc.meta.MappingRepository.getMappingInternal(MappingRepository.java:352)
    at
    kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:297)
    at
    kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:162)
    at
    kodo.jdbc.meta.MappingRepository.getMetaData(MappingRepository.java:150)
    at kodo.event.RemoteCommitEvent.<init>(RemoteCommitEvent.java:98)
    at
    kodo.runtime.PersistenceManagerFactoryImpl$1.afterCommit(PersistenceManagerFactoryImpl.java:679)
    at
    kodo.event.TransactionEventManager.fireEvent(TransactionEventManager.java:65)
    at
    serp.util.AbstractEventManager.fireEvent(AbstractEventManager.java:78)
    at
    kodo.runtime.PersistenceManagerImpl.endTransaction(PersistenceManagerImpl.java:823)
    at
    kodo.runtime.PersistenceManagerImpl.afterCompletion(PersistenceManagerImpl.java:660)
    at
    kodo.runtime.LocalManagedRuntime.commit(LocalManagedRuntime.java:85)
    at
    kodo.runtime.PersistenceManagerImpl.commit(PersistenceManagerImpl.java:408)
    at kodopt.UserManagerServlet.doGet(UserManagerServlet.java:749)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:126)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
    at
    com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
    at com.caucho.server.http.Invocation.service(Invocation.java:315)
    at
    com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
    at
    com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:246)
    at
    com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:164)
    at com.caucho.server.TcpConnection.run(TcpConnection.java:139)
    at java.lang.Thread.run(Thread.java:536)
    The User object has a member of type Password called password. The
    Password class has a String called password.
    Here are the pertinent excerpts from my JDO file:
    <class name="Password">
    <extension vendor-name="kodo" key="jdbc-use-class-map" value="none" />
    </class>
    <class objectid-class="UserKey" name="User">
    <field name="password" embedded="true" />
    </class>
    And from my mapping XML file:
    <class name="User">
    <field name="password">
    <jdbc-field-map type="embedded" null-ind-column="password"
    synthetic="false">
    <field name="password">
    <jdbc-field-map type="value" column="password" />
    </field>
    </jdbc-field-map>
    </field>
    </class>

    Brian Gebala wrote:
    Correction: Section 7.8.6 of the Developer's Guide. Example 7.27.
    Abe White wrote:
    Thanks for the report. Did you ever run the mappingtool's refresh action
    on the Password type? Even though you correctly added
    jdbc-use-class-map="none" to your metadata, the mapping tool still needs
    to be run on the class and a .mapping file generated (the mapping file
    will just record a class-map type of "none"). We'll try to smooth this
    out in the future.
    I have not run the mappingtool, however I don't have a schema file. I
    created the tables, the JDO file, and the XML mapping file by hand. Do I
    really need to run this tool? Does it modify Password.class? I am going
    off the example in section 7.27 in the Developer's Guide. Is the example
    in this section correct and complete?

  • MappingInfoNotFoundException on CustomMapping

    Hi,
    i created a custom Field mapping:
    <field name="active">
    <extension vendor-name="kodo"
    key="jdbc-field-map-name"
    value="de.logentis.kodo.YesNoMapping">
    </extension>
    <extension vendor-name="kodo"
    key="jdbc-field-map/column"
    value="active">
    </extension>
    </field>
    Of course the YesNoMapping is also existant in my webapp tree. The
    YesNoMapping is nearly a 100% copy of the supplied IsMaleMapping from
    Kodo. But i get this error log:
    [ERROR] - ClientManagerAction.doExecute(41) |
    org.springframework.orm.jdo.JdoUsa
    geException: No mapping information was found for
    "de.logentis.versysng.domain.C
    lient.active".; nested exception is
    kodo.jdbc.meta.MappingInfoNotFoundException:
    No mapping information was found for
    "de.logentis.versysng.domain.Client.active
    I tripple checked the class and packagenames but everything is in place.
    Is there something i forgot?
    Thanks
    marc

    Marc-
    When you report things like "no mapping found" and "i got mapping
    mismatch", we really need the complete error message and stack trace to
    be able to help you: without those, we'll only be guessing as to the
    source of the problem.
    Your particular mapping looks correct, except that I don't think that
    you want the "type" extension: that is only means to declare a concrete
    type for a field whose declared type is an interface of superclass ...
    it doesn't apply to your situation at all.
    If you still have problems with this mapping, please post the following
    information:
    1. The complete error message you receive
    2. The complete generated .jdo and .mapping files after you run
    xdoclet on the source file
    In article <[email protected]>, Marc Logemann wrote:
    Stephen Kim wrote:
    Note for simple type conversions, you can use our external-values
    extension:
    http://solarmetric.com/Software/Documentation/3.2.4/docs/ref_guide_mapping_fieldmapping.html#ref_guide_mapping_fieldmapping_externvalues
    sorry, again me. This "simple" transformation thing drives me nuts. In
    this time i would have implemented a distributed transaction strategy ;-)
    I checked the docs, applied the example and voila, error:
    Here is my xdoclet mapping:
    * @jdo.field
    * @jdo.class-vendor-extension vendor-name="kodo" key="type" value="char"
    * @jdo.class-vendor-extension vendor-name="kodo" key="external-values"
    value="true=Y, false=N"
    * @jdo.field-vendor-extension vendor-name="kodo"
    key="jdbc-field-map/column" value="active"
    private boolean active;
    This boolean should be stored to a CHAR field in my database. If i run
    this, i get "no mapping found". If i put also a "jdbc-field-map" ->
    value (which is not documented for the example) i got mapping mismatch.
    I checked the samples directory, but there is no external-values example
    in there, only the full blown externalisations.
    Either i am completely crazy, or you cant copy and paste the example
    from the docs (ok its not direclty copy/pasted, but to 80%).
    Again, sorry to bother you with that, but i need that boolean->char
    conversion thing running :-) Perhaps this is even a DBDictionary issue,
    because it seems to be a general mapping i want to achieve.
    Marc Prud'hommeaux
    SolarMetric Inc.

  • MappingInfoNotFoundException

    I need some guidance on this. Not sure if I am missing something. I have
    successfully reversed mapped the classes from the Oracle tables for my
    schema and was trying to execute a query like this...
    Query query = listPM.newQuery (Menu.class, "menukey > 1000");
    Collection menus = (Collection) query.execute ();
    But I am getting a MappingInfoNotFoundException.
    469 INFO [main] kodo.MetaData - Parsing metadata resource
    "file:/C:/usr/eclipse/gtaworkspace/TestEclipse/bin/com/bellsouth/snt/gtacnm/jdo/package.jdo".
    kodo.jdbc.meta.MappingInfoNotFoundException: No mapping information was
    found for "class com.bellsouth.snt.gtacnm.jdo.Menu".
         at
    kodo.jdbc.meta.RuntimeMappingProvider.getMapping(RuntimeMappingProvider.java:44)
         at
    kodo.jdbc.meta.MappingRepository.getMappingInternal(MappingRepository.java:385)
         at kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:340)
         at
    kodo.jdbc.meta.MappingRepository.getMappings(MappingRepository.java:294)
         at
    kodo.jdbc.meta.MappingRepository.getMetaDatas(MappingRepository.java:271)
         at kodo.query.AbstractQuery.createExecutor(AbstractQuery.java:614)
         at kodo.query.AbstractQuery.compileForDataStore(AbstractQuery.java:578)
         at kodo.query.AbstractQuery.executeWithArray(AbstractQuery.java:830)
         at kodo.query.AbstractQuery.execute(AbstractQuery.java:793)
         at com.bellsouth.snt.gtacnm.Persistence.TestMenu.<init>(TestMenu.java:57)
         at com.bellsouth.snt.gtacnm.Persistence.TestMenu.main(TestMenu.java:219)
    Exception in thread "main"

    Are your mapping files in your classpath next to your metadata files? Have you
    changed the kodo.jdbc.MappingFactory setting?

  • RC1 and MetaDataMappingFactory

    I'm trying to migrate from 2.5.3 to 3.0RC1.
    To use only the old 2.5.3 package.jdo file including mapping information
    instead of additionally my newly generated .mapping file, I've set
    'metadata' as MappingFactory.
    Compiling my queries, I get
    kodo.jdbc.meta.MappingInfoNotFoundException: No mapping information was
    found for "class thisIsMyClass".
         at
    kodo.jdbc.meta.RuntimeMappingProvider.getMapping(RuntimeMappingProvider.java:43)
         at
    kodo.jdbc.meta.MappingRepository.getMappingInternal(MappingRepository.java:342)
         at kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:297)
         at
    kodo.jdbc.meta.MappingRepository.getMappings(MappingRepository.java:272)
         at
    kodo.jdbc.meta.MappingRepository.getMetaDatas(MappingRepository.java:256)
         at kodo.query.QueryImpl.internalCompile(QueryImpl.java:559)
         at kodo.query.QueryImpl.compile(QueryImpl.java:523)
    If I add a .mapping file with the default FileMappingFactory everything
    works fine. The new mapping file was generated with kodo2migrator.
    Did I misunderstand the documentation or is this an RC1-error?

    Did you use the mappingtool to import the .mapping file created with
    kodo2migrator into .jdo metadata extensions?I've mapped the mapping information back to the .jdo-files, removed the
    mapping files and tried to start again with "kodo.jdbc.MappingFactory:
    metadata". Unfortunately it did not work.
    I'm using Oracle 9.2.0.1.0.
    The only properties set next to metadata are:
    javax.jdo.option.NontransactionalRead=true
    javax.jdo.option.RetainValues=true
    javax.jdo.option.Optimistic=true
    javax.jdo.PersistenceManagerFactoryClass=kodo.jdbc.runtime.JDBCPersistenceManagerFactory
    If I add the property
    kodo.jdbc.SchemaFactory=dynamic
    to prevent schema synchronization everything next to a bug I'll report
    later works fine. I can read + (partially) write to the database.
    Here's the stack trace, the .jdo-files come below:
    kodo.MetaData :INFO: Parsing metadata resource
    "jar:file:/myjar.jar!/firstpackage/package.jdo".
    kodo.MetaData :INFO: Parsing metadata resource
    "jar:file:/myjar.jar!/secondpackage/package.jdo".
    kodo.jdbc.Schema :INFO: Generating tables for schema name "null", table
    name "APPLICATION".
    kodo.jdbc.Schema :INFO: Generating column information for table
    "GAMBLE.APPLICATION".
    kodo.jdbc.Schema :INFO: Generating tables for schema name "null", table
    name "ZSYS_INTERCEPTOR".
    kodo.jdbc.Schema :INFO: Generating column information for table
    "GAMBLE.ZSYS_INTERCEPTOR".
    kodo.jdbc.meta.MappingInfoNotFoundException: The mapping for field
    "secondpackage.InterceptorDefImpl.application" is missing information on
    how to link the field to the related class table, or the given information
    is invalid.
         at kodo.jdbc.meta.Mappings.invalidMapping(Mappings.java:89)
         at kodo.jdbc.meta.Mappings.invalidMapping(Mappings.java:75)
         at
    kodo.jdbc.meta.OneToOneFieldMapping.fromMappingInfo(OneToOneFieldMapping.java:98)
         at
    kodo.jdbc.meta.RuntimeMappingProvider.getFieldMapping(RuntimeMappingProvider.java:156)
         at
    kodo.jdbc.meta.MappingRepository.getFieldMapping(MappingRepository.java:410)
         at kodo.jdbc.meta.ClassMapping.getFieldMapping(ClassMapping.java:1048)
         at kodo.jdbc.meta.ClassMapping.getMappings(ClassMapping.java:1018)
         at
    kodo.jdbc.meta.ClassMapping.getDeclaredFieldMappings(ClassMapping.java:781)
         at kodo.jdbc.meta.ClassMapping.resolve(ClassMapping.java:936)
         at kodo.jdbc.meta.BaseClassMapping.resolve(BaseClassMapping.java:302)
         at kodo.jdbc.meta.MappingRepository.resolve(MappingRepository.java:381)
         at kodo.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:298)
         at
    kodo.jdbc.meta.MappingRepository.getMappings(MappingRepository.java:272)
         at
    kodo.jdbc.meta.MappingRepository.getMetaDatas(MappingRepository.java:256)
         at kodo.query.QueryImpl.internalCompile(QueryImpl.java:559)
         at kodo.query.QueryImpl.compile(QueryImpl.java:523)
    ---------------- First mapping file
    <jdo>
    <package name="firstpackage">
    <class name="ApplicationDefImpl">
    <extension vendor-name="kodo" key="class-column" value="none"/>
    <extension vendor-name="kodo" key="jdbc-class-map"
    value="base">
    <extension vendor-name="kodo" key="pk-column" value="ID"/>
    <extension vendor-name="kodo" key="table"
    value="APPLICATION"/>
    </extension>
    <extension vendor-name="kodo" key="jdbc-version-ind"
    value="version-number">
    <extension vendor-name="kodo" key="column"
    value="VERSION"/>
    </extension>
    <extension vendor-name="kodo" key="lock-column"
    value="VERSION"/>
    <extension vendor-name="kodo" key="pk-column" value="ID"/>
    <extension vendor-name="kodo" key="table" value="APPLICATION"/>
    <field name="interceptors">
    <collection
    element-type="secondpackage.InterceptorDefImpl"/>
    <extension vendor-name="kodo" key="inverse"
    value="application"/>
    <extension vendor-name="kodo" key="jdbc-field-map"
    value="one-many">
    <extension vendor-name="kodo" key="ref-column.ID"
    value="APPLICATION_ID"/>
    <extension vendor-name="kodo" key="table"
    value="ZSYS_INTERCEPTOR"/>
    </extension>
    </field>
    </class>
    </package>
    </jdo>
    ---------------- Second mapping file
    <jdo>
    <package name="secondpackage">
    <class name="InterceptorDefImpl">
    <extension vendor-name="kodo" key="class-column" value="none"/>
    <extension vendor-name="kodo" key="jdbc-class-map"
    value="base">
    <extension vendor-name="kodo" key="pk-column" value="ID"/>
    <extension vendor-name="kodo" key="table"
    value="ZSYS_INTERCEPTOR"/>
    </extension>
    <extension vendor-name="kodo" key="lock-column" value="none"/>
    <extension vendor-name="kodo" key="pk-column" value="ID"/>
    <extension vendor-name="kodo" key="table"
    value="ZSYS_INTERCEPTOR"/>
    <field name="interceptor" persistence-modifier="none"/>
    <field name="application">
    <extension vendor-name="kodo" key="data-column"
    value="APPLICATION_ID"/>
    <extension vendor-name="kodo" key="jdbc-field-map"
    value="one-one">
    <extension vendor-name="kodo" key="column.JDOIDX"
    value="APPLICATION_ID"/>
    </extension>
    </field>
    </class>
    </package>
    </jdo>

  • Horizontal Mapping and Flat mapping with Metadata Value Indicator

    Hi
    I have an abstract class B which itself extends another abstract class A.
    There is no table for A. The fields in A are mapped to B. I believe this
    is called "horizontal mapping"
    C and D inherit off B. There's a also a table named B (mapped to class B),
    but none for C or D. Instances of C and D are recorded in table B. I
    believe this is called "flat mapping"
    B has a field foo whose possible values are 'fred' and 'wilma'.
    If foo='fred', then the record is of type C
    If foo='wilma', then the record is of type D
    I believe this is called "class indicator" of type metadata.
    To express this, I have package.jdo which says
    <class name="A"/>
    <class name="B" persistence-capable-superclass="A"/>
    <class name="C" persistence-capable-superclass="B"/>
    <class name="D" persistence-capable-superclass="B"/>
    In B.mapping, I have
    <mapping>
    <package name="domain">
    <class name="B">
    <jdbc-class-map type="horizontal"/>
    <jdbc-class-ind type="metadata-value" column="foo"/>
    </class>
    </package>
    </mapping>
    B.java has a private String foo.
    In C.mapping, I have
    <mapping>
    <package name="domain">
    <class name="C">
    <jdbc-class-map type="flat"/>
    <jdbc-class-ind-value value="fred"/>
    field mappings for C
    </class>
    </package>
    </mapping>
    and similarly in D for value='wilma'
    My questions are...
    1. Is this kind of mapping supported by kodo?
    2. If so, is this configuration correct? I guess not, since I don't
    specify the table name anywhere. Where should it go?
    3. If I remove the "class indicator" mapping and run a simple test I get
    kodo.util.FatalUserException: There is no superclass mapping for mapping
    for "class domain.D".
         at
    kodo.jdbc.meta.FlatClassMapping.assertParentMapping(FlatClassMapping.java:49)
         at kodo.jdbc.meta.FlatClassMapping.getTable(FlatClassMapping.java:85)
         at
    kodo.jdbc.meta.OneToManyFieldMapping.fromMappingInfo(OneToManyFieldMapping.java:87)
         at
    kodo.jdbc.meta.RuntimeMappingProvider.getFieldMapping(RuntimeMappingProvider.java:160)
         at
    kodo.jdbc.meta.MappingRepository.getFieldMapping(MappingRepository.java:443)
         at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapping.java:949)
    4. If I run a simple test with the horizontal, flat and class-indicator
    mappings, I get
    kodo.jdbc.meta.MappingInfoNotFoundException: The "class-column"
    attribute/extension for the class indicator on type
    "domain.B.<class-indicator>" is missing or names a column that does not
    exist.
         at kodo.jdbc.meta.Mappings.invalidMapping(Mappings.java:135)
         at kodo.jdbc.meta.Mappings.invalidMapping(Mappings.java:121)
         at
    kodo.jdbc.meta.ColumnClassIndicator.fromMappingInfo(ColumnClassIndicator.java:95)
         at
    kodo.jdbc.meta.RuntimeMappingProvider.initialize(RuntimeMappingProvider.java:135)
         at
    kodo.jdbc.meta.MappingRepository.getMappingInternal(MappingRepository.java:378)
    What am I doing wrong?
    Thanks in advance
    Srini

    I solved this problem by removing the identifier field from the
    class/mapping (kodo support).
    Thanks
    Srini
    Stephen Kim wrote:
    Do you have two fields mapped to the same column? Did you make sure you
    set everything which maps to the column?
    Srinivasan Ranganathan wrote:
    I found what was wrong with this, fixed it and got a different (more
    sensible) error. To correct this mapping, I specified B's mapping type as
    "base" and gave its table and pk names. Also, I moved the common field
    mappings to B.mapping so C.mapping and D.mapping only have fields that are
    specific to each.
    Now when I run a simple test, I get
    testC:
    kodo.util.FatalUserException: Attempt to set column "B.FOO" to two
    different values: (java.lang.Object)"java.lang.Object@2f608ac2",
    (java.lang.String)"fred" This can occur when you fail to set both sides of
    a two-sided relation between objects, or when you map different fields to
    the same column, but you do not keep the values of these fields in synch.
         at kodo.jdbc.runtime.VRow.setObjectInternal(VRow.java(Compiled Code))
         at kodo.jdbc.sql.AbstractRow.setObject(AbstractRow.java(Compiled Code))
         at
    kodo.jdbc.meta.ColumnClassIndicator.insert(ColumnClassIndicator.java:143)
         at kodo.jdbc.runtime.UpdateManagerImpl.insert(UpdateManagerImpl.java:216)
         at kodo.jdbc.runtime.UpdateManagerImpl.insert(UpdateManagerImpl.java:219)
         at kodo.jdbc.runtime.UpdateManagerImpl.flush(UpdateManagerImpl.java:108)
         at kodo.jdbc.runtime.UpdateManagerImpl.flush(UpdateManagerImpl.java:73)
    testD:
    kodo.util.FatalUserException: Attempt to set column "B.FOO" to two
    different values: (java.lang.Object)"java.lang.Object@2f608ac2",
    (java.lang.String)"wilma" This can occur when you fail to set both sides
    of a two-sided relation between objects, or when you map different fields
    to the same column, but you do not keep the values of these fields in
    synch.
         at kodo.jdbc.runtime.VRow.setObjectInternal(VRow.java(Compiled Code))
         at kodo.jdbc.sql.AbstractRow.setObject(AbstractRow.java(Compiled Code))
         at
    kodo.jdbc.meta.ColumnClassIndicator.insert(ColumnClassIndicator.java:143)
         at kodo.jdbc.runtime.UpdateManagerImpl.insert(UpdateManagerImpl.java:216)
         at kodo.jdbc.runtime.UpdateManagerImpl.insert(UpdateManagerImpl.java:219)
         at kodo.jdbc.runtime.UpdateManagerImpl.flush(UpdateManagerImpl.java:108)
         at kodo.jdbc.runtime.UpdateManagerImpl.flush(UpdateManagerImpl.java:73)
    I've checked for the two possible errors to the best of my knowledge. Any
    input to resolve this issue is appreciated.
    Thanks in advance
    Srini
    Srinivasan Ranganathan wrote:
    Hi
    I have an abstract class B which itself extends another abstract class A.
    There is no table for A. The fields in A are mapped to B. I believe this
    is called "horizontal mapping"
    C and D inherit off B. There's a also a table named B (mapped to class B),
    but none for C or D. Instances of C and D are recorded in table B. I
    believe this is called "flat mapping"
    B has a field foo whose possible values are 'fred' and 'wilma'.
    If foo='fred', then the record is of type C
    If foo='wilma', then the record is of type D
    I believe this is called "class indicator" of type metadata.
    To express this, I have package.jdo which says
    <class name="A"/>
    <class name="B" persistence-capable-superclass="A"/>
    <class name="C" persistence-capable-superclass="B"/>
    <class name="D" persistence-capable-superclass="B"/>
    In B.mapping, I have
    <mapping>
    <package name="domain">
    <class name="B">
    <jdbc-class-map type="horizontal"/>
    <jdbc-class-ind type="metadata-value" column="foo"/>
    </class>
    </package>
    </mapping>
    B.java has a private String foo.
    In C.mapping, I have
    <mapping>
    <package name="domain">
    <class name="C">
    <jdbc-class-map type="flat"/>
    <jdbc-class-ind-value value="fred"/>
    field mappings for C
    </class>
    </package>
    </mapping>
    and similarly in D for value='wilma'
    My questions are...
    1. Is this kind of mapping supported by kodo?
    2. If so, is this configuration correct? I guess not, since I don't
    specify the table name anywhere. Where should it go?
    3. If I remove the "class indicator" mapping and run a simple test I get
    kodo.util.FatalUserException: There is no superclass mapping for mapping
    for "class domain.D".
         at
    kodo.jdbc.meta.FlatClassMapping.assertParentMapping(FlatClassMapping.java:49)
         at kodo.jdbc.meta.FlatClassMapping.getTable(FlatClassMapping.java:85)
         at
    kodo.jdbc.meta.OneToManyFieldMapping.fromMappingInfo(OneToManyFieldMapping.java:87)
    >>
         at
    kodo.jdbc.meta.RuntimeMappingProvider.getFieldMapping(RuntimeMappingProvider.java:160)
    >>
         at
    kodo.jdbc.meta.MappingRepository.getFieldMapping(MappingRepository.java:443)
         at
    kodo.jdbc.meta.AbstractClassMapping.getFieldMapping(AbstractClassMapping.java:949)
    >>
    >>
    >>
    >>
    4. If I run a simple test with the horizontal, flat and class-indicator
    mappings, I get
    kodo.jdbc.meta.MappingInfoNotFoundException: The "class-column"
    attribute/extension for the class indicator on type
    "domain.B.<class-indicator>" is missing or names a column that does not
    exist.
         at kodo.jdbc.meta.Mappings.invalidMapping(Mappings.java:135)
         at kodo.jdbc.meta.Mappings.invalidMapping(Mappings.java:121)
         at
    kodo.jdbc.meta.ColumnClassIndicator.fromMappingInfo(ColumnClassIndicator.java:95)
    >>
         at
    kodo.jdbc.meta.RuntimeMappingProvider.initialize(RuntimeMappingProvider.java:135)
    >>
         at
    kodo.jdbc.meta.MappingRepository.getMappingInternal(MappingRepository.java:378)
    >>
    >>
    >>
    What am I doing wrong?
    Thanks in advance
    Srini
    Steve Kim
    [email protected]
    SolarMetric Inc.
    http://www.solarmetric.com

  • Take2 - Many-to-Many mapping on a single object/table via an external table.

    Plaease ignore the previous entry. Finger trouble on the keyboard
    accidentally posted prior to completion!
    Any takers on this one? If its simple, then great.
    I currently have a problem making the correct meta-data via xdoclet for a
    collection with a many-to-many mapping between an enhanced class and an
    xref table (which does not have an enhanced class associated with it.)
    Although page 184 of the Kodo JDO 3.01 Developers guide does spell out in
    fairly academic terms what has to be done, it still seems fairly
    impenetrable, after much mangling and hacking.
    As far as I can see the significantly questionable attributes are:-
    element-column.<pk column>*
    and
    ref-column.<pk column>*
    The asterisks and the associated texts indicate that these entries can be
    specified more than once.
    Here is my Meta data.
    * @jdo.field collection-type="collection"
    element-type="com.letsys.erespond.business.model.event.Condition"
    * @jdo.field-vendor-extension vendor-name="kodo" key="jdbc-field-map"
    value="many-many"
    * @jdo.field-vendor-extension vendor-name="kodo"
    key="jdbc-field-map/table" value="EventConditionConditionXref"
    * @jdo.field-vendor-extension vendor-name="kodo"
    key="jdbc-field-map/element-column.ID" value="EVENTCONDITIONID"
    * @jdo.field-vendor-extension vendor-name="kodo"
    key="jdbc-field-map/ref-column.EVENTCONDITIONID" value="ID"
    private Collection groupsToConditions;
    Here is the basic table which I wish to use for the xref
    create table EventConditionConditionXref(
    EventConditionId NUMBER(10) NOT NULL primary key,
    EventConditionIdGroupTo NUMBER(10) NOT NULL primary key
    The EventCondition class and table uses a field 'id' as its primary key.
    The intention is the xref table will hold many-many associations between
    multiple EventCondition.id instances in the underlying database.
    Thus the joing condition would be :
    select
    EventConditionIdGroupTo
    from
    EventCondition ec, EventConditionConditionXref ecx
    where
    ec.id = ecx.EventConditionId
    There are numerous variations that I have squeezed through it, but the net
    effect has always been
    BUILD FAILED
    file:C:/dev/projectm/build.xml:303:
    kodo.jdbc.meta.MappingInfoNotFoundException: The mapping for fie
    ld "com.letsys.erespond.business.model.event.Condition.groupsToConditions"
    is missing information on
    how to link the fields table to its owning class table, or the given
    information is invalid.
    I have tried many interpretations as to how
    element-column.<pk column>*
    and
    ref-column.<pk column>*
    should be represented, but always with the same 'not enough info' message.
    Am I missing something obvious, and/or not understanding something?
    Cheers Ed.

    Ed-
    I think what you want is:
    @jdo.field collection-type="collection"
    element-type="com.letsys.erespond.business.model.event.Condition"
    @jdo.field-vendor-extension vendor-name="kodo" key="jdbc-field-map"
    value="many-many"
    @jdo.field-vendor-extension vendor-name="kodo"
    key="jdbc-field-map/table" value="EventConditionConditionXref"
    @jdo.field-vendor-extension vendor-name="kodo"
    key="jdbc-field-map/ref-column.ID" value="EVENTCONDITIONID"
    @jdo.field-vendor-extension vendor-name="kodo"
    key="jdbc-field-map/element-column.ID" value="EVENTCONDITIONIDGROUPTO"
    Basically, the "ref-column.<primary key>" specifies the column in the
    join table that holds the primary key of the source side of the relation
    (the current class), and the "element-column.<primary key>" specifies
    the column in the join table that holds the primary key of the
    destination side of the relation (the content of the Collection field).
    Since it appears that you want the relation to be from Condition to
    Condition (i.e., have a relation it itself), the primary key in both
    cases will be the 'ID' column.
    Let us know if you still have problems with this. You might want to
    check out our graphical mapping workbench in 3.1, which helps greatly
    simplify composing your mappings.
    In article <[email protected]>, Ed Bett wrote:
    Plaease ignore the previous entry. Finger trouble on the keyboard
    accidentally posted prior to completion!
    Any takers on this one? If its simple, then great.
    I currently have a problem making the correct meta-data via xdoclet for a
    collection with a many-to-many mapping between an enhanced class and an
    xref table (which does not have an enhanced class associated with it.)
    Although page 184 of the Kodo JDO 3.01 Developers guide does spell out in
    fairly academic terms what has to be done, it still seems fairly
    impenetrable, after much mangling and hacking.
    As far as I can see the significantly questionable attributes are:-
    element-column.<pk column>*
    and
    ref-column.<pk column>*
    The asterisks and the associated texts indicate that these entries can be
    specified more than once.
    Here is my Meta data.
    * @jdo.field collection-type="collection"
    element-type="com.letsys.erespond.business.model.event.Condition"
    * @jdo.field-vendor-extension vendor-name="kodo" key="jdbc-field-map"
    value="many-many"
    * @jdo.field-vendor-extension vendor-name="kodo"
    key="jdbc-field-map/table" value="EventConditionConditionXref"
    * @jdo.field-vendor-extension vendor-name="kodo"
    key="jdbc-field-map/element-column.ID" value="EVENTCONDITIONID"
    * @jdo.field-vendor-extension vendor-name="kodo"
    key="jdbc-field-map/ref-column.EVENTCONDITIONID" value="ID"
    private Collection groupsToConditions;
    Here is the basic table which I wish to use for the xref
    create table EventConditionConditionXref(
    EventConditionId NUMBER(10) NOT NULL primary key,
    EventConditionIdGroupTo NUMBER(10) NOT NULL primary key
    The EventCondition class and table uses a field 'id' as its primary key.
    The intention is the xref table will hold many-many associations between
    multiple EventCondition.id instances in the underlying database.
    Thus the joing condition would be :
    select
    EventConditionIdGroupTo
    from
    EventCondition ec, EventConditionConditionXref ecx
    where
    ec.id = ecx.EventConditionId
    There are numerous variations that I have squeezed through it, but the net
    effect has always been
    BUILD FAILED
    file:C:/dev/projectm/build.xml:303:
    kodo.jdbc.meta.MappingInfoNotFoundException: The mapping for fie
    ld "com.letsys.erespond.business.model.event.Condition.groupsToConditions"
    is missing information on
    how to link the fields table to its owning class table, or the given
    information is invalid.
    I have tried many interpretations as to how
    element-column.<pk column>*
    and
    ref-column.<pk column>*
    should be represented, but always with the same 'not enough info' message.
    Am I missing something obvious, and/or not understanding something?
    Cheers Ed.
    Marc Prud'hommeaux [email protected]
    SolarMetric Inc. http://www.solarmetric.com

Maybe you are looking for