Are you listing your persistent types in the p.xml file?

On Thu, Jan 21, 2010 at 3:43 PM, KARR, DAVID (ATTCINW) <[email protected]>wrote:

> After replacing 1.2.1 with 1.2.2 and turning on the metadata preload, I
> got a nonsensical "column that is not compatible" error.  I then tried
> removing the preload setting, and it's fine.  I set it back, and it
> failed again, so it's repeatable.
>
> The relevant part of the stack trace is this (some pieces obscured):
>
> Caused by: <openjpa-1.2.2-r422266:898935 fatal user error>
> org.apache.openjpa.persistence.ArgumentException:
> "...domain.pricelist.PriceListFolder.childItems<element:class
> ...domain.pricelist.PriceList>" declares a column that is not compatible
> with the expected type "blob".  Column details:
> Full Name: PRICE_LIST.PRICE_LIST_ID
> Type: varchar
> Size: 255
> Default: null
> Not Null: false
>
> The orm.xml excerpts:
>
>    <entity name="PriceListFolder"
> class="...domain.pricelist.PriceListFolder">
>        <table name="GEN_FOL_PL"/>
>        <secondary-table name="PLFOL_CHLD">
>            <primary-key-join-column name="PLFOL_ID"
> referenced-column-name="FOLDER_ID"/>
>        </secondary-table>
>        <inheritance strategy="SINGLE_TABLE"/>
>        <discriminator-value>3001</discriminator-value>
>        <discriminator-column name="TYPE" discriminator-type="INTEGER"/>
>        <attributes>
>            <one-to-many name="childItems" target-entity="PriceList">
>                <join-column name="PRICE_LIST_ID"
> referenced-column-name="PRICE_LIST_ID"/>
>            </one-to-many>
>        </attributes>
>    </entity>
>
>    <entity name="PriceList" class="...domain.pricelist.PriceList">
>        <table name="PRICE_LIST"/>
>        <secondary-table name="ONLINE_PRICE_LIST">
>            <primary-key-join-column name="PRICE_LIST_ID"
> referenced-column-name="PRICE_LIST_ID"/>
>        </secondary-table>
>        <attributes>
>            <id name="id">
>                <column name="PRICE_LIST_ID"/>
>            </id>
>            <basic name="displayName">
>                <column name="DISPLAY_NAME"/>
>            </basic>
>            <basic name="description">
>                <column name="DESCRIPTION"/>
>            </basic>
>            <basic name="startDate">
>                <column name="START_DATE"/>
>            </basic>
>            <basic name="endDate">
>                <column name="END_DATE"/>
>            </basic>
>            <one-to-many name="includedFlags"
> target-entity="com.att.ecom.dynamiccontent.domain.catalog.Flag">
>                <join-table name="ONLINE_PRICE_LIST_FLAGS">
>                    <join-column name="PRICE_LIST_ID"
> referenced-column-name="PRICE_LIST_ID"/>
>                    <inverse-join-column name="FLAG_ID"
> referenced-column-name="ID"/>
>                </join-table>
>            </one-to-many>
>            <one-to-one name="basePriceList" target-entity="PriceList">
>                <join-column name="BASE_PRICE_LIST"
> referenced-column-name="PRICE_LIST_ID"/>
>            </one-to-one>
>        </attributes>
>    </entity>
>
> Notice that there is no "lob" anywhere.  The column it's complaining
> about is an ordinary column reference.
>



-- 
Thanks,
Rick

Reply via email to