You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@openjpa.apache.org by "KARR, DAVID (ATTCINW)" <dk...@att.com> on 2009/12/14 21:44:33 UTC

NPE loading fields of one-to-many collection

Using OpenJPA 1.2.1, presently with neither load-time or build-time
enhancement, for different reasons.  I have a ticket open for my
build-time enhancement issues.  It could be that since OpenJPA doesn't
support running without enhancement, I won't be able to make any
significant progress on this until my issues with build-time enhancement
are resolved.

I have mapped two simple classes, and I'm now trying to test the
mappings.  Each class has one relationship attribute.  The first one
relates to the second one, and the second one has a recursive
relationship.  Each one of these relationships is done with a join
table.  I believe I've specified the correct annotations and orm.xml
settings to do this mapping.  I tried running the generated SQL I saw
for the relationship, and it appears to give me a reasonable result.

I think the first relationship is working fine, but the second one is
giving me trouble.  When I run a request where the second relationship
ends up being empty, it works fine.  If it's not empty, I see the
following unhelpful message:

  WARNING: WebApplicationException has been caught : cause is
java.lang.NullPointerException

There is no stack trace.  So, I set Eclipse to stop on NPE and I found
it stopping at the following place:

	
com$att$ecom$dynamiccontent$domain$Category$pcsubclass.pcReplaceField(in
t) line: not available	
	StateManagerImpl.replaceField(PersistenceCapable, FieldManager,
int) line: 3025	
	StateManagerImpl.storeObjectField(int, Object) line: 2457	
	StateManagerImpl.storeObject(int, Object) line: 2447	
	
RelationCollectionTableFieldStrategy(StoreCollectionFieldStrategy).load(
OpenJPAStateManager, JDBCStore, JDBCFetchConfiguration) line: 569	
	FieldMapping.load(OpenJPAStateManager, JDBCStore,
JDBCFetchConfiguration) line: 819	
	JDBCStoreManager.load(OpenJPAStateManager, BitSet,
FetchConfiguration, int, Object) line: 688	
	
ROPStoreManager(DelegatingStoreManager).load(OpenJPAStateManager,
BitSet, FetchConfiguration, int, Object) line: 116	
	ROPStoreManager.load(OpenJPAStateManager, BitSet,
FetchConfiguration, int, Object) line: 78	
	StateManagerImpl.loadFields(BitSet, FetchConfiguration, int,
Object) line: 2921	
	StateManagerImpl.loadField(int, int, boolean, boolean) line:
2999	
	StateManagerImpl.fetchObjectField(int) line: 2242	
	StateManagerImpl.fetchField(int, boolean) line: 778	
	StateManagerImpl.fetch(int) line: 740	
	RedefinitionHelper$1.invoke(Object, Method, Object[]) line: 230	
	$Proxy130.iterator() line: not available	
      [deleted]

The fields of the class in question are:

    @Id
    private String  id;
    @Basic
    private String  displayName;
    @Temporal(TemporalType.DATE)
    private Date    creationDate;
    @OneToMany(fetch = FetchType.EAGER)
    private Set<Category>   childCategories;

The relevant portion of the orm.xml file is this:

   <entity name="Category" class="...domain.Category">
        <table name="CATEGORY"/>
        <attributes>
            <id name="id">
                <column name="CATEGORY_ID"/>
            </id>
            <one-to-many name="childCategories"
target-entity="Category">
                <join-table name="CAT_CHLDCAT">
                    <join-column name="CATEGORY_ID"
referenced-column-name="CATEGORY_ID"/>
                    <inverse-join-column name="CHILD_CAT_ID"
referenced-column-name="CATEGORY_ID"/>
                </join-table>
            </one-to-many>
        </attributes>
    </entity>

RE: NPE loading fields of one-to-many collection

Posted by "KARR, DAVID (ATTCINW)" <dk...@att.com>.
> -----Original Message-----
> From: Rick Curtis [mailto:curtisr7@gmail.com]
> Sent: Tuesday, December 15, 2009 3:18 PM
> To: users@openjpa.apache.org
> Subject: Re: NPE loading fields of one-to-many collection
> 
> This probably would have helped earlier in debugging.... try setting
> openjpa.RuntimeUnenhancedClasses=unsupported in your persistence.xml.
> This
> will cause OpenJPA throw an exception when an unenhanced in
encountered
> by
> the runtime.

Done.  At least that confirms that it's loading my build-time enhanced
classes.  No help on the NPE, however.

I just printed the Derby "Getting Started" manual. :)

> On Tue, Dec 15, 2009 at 4:51 PM, KARR, DAVID (ATTCINW)
> <dk...@att.com>wrote:
> 
> > > -----Original Message-----
> > > From: KARR, DAVID (ATTCINW)
> > > Sent: Tuesday, December 15, 2009 11:23 AM
> > > To: users@openjpa.apache.org
> > > Subject: RE: NPE loading fields of one-to-many collection
> > >
> > > > -----Original Message-----
> > > > From: KARR, DAVID (ATTCINW)
> > > > Sent: Monday, December 14, 2009 12:45 PM
> > > > To: users@openjpa.apache.org
> > > > Subject: NPE loading fields of one-to-many collection
> > > >
> > > > Using OpenJPA 1.2.1, presently with neither load-time or build-
> time
> > > > enhancement, for different reasons.  I have a ticket open for my
> > > > build-time enhancement issues.  It could be that since OpenJPA
> > > doesn't
> > > > support running without enhancement, I won't be able to make any
> > > > significant progress on this until my issues with build-time
> > > > enhancement
> > > > are resolved.
> > > >
> > > > I have mapped two simple classes, and I'm now trying to test the
> > > > mappings.  Each class has one relationship attribute.  The first
> one
> > > > relates to the second one, and the second one has a recursive
> > > > relationship.  Each one of these relationships is done with a
> join
> > > > table.  I believe I've specified the correct annotations and
> orm.xml
> > > > settings to do this mapping.  I tried running the generated SQL
I
> > saw
> > > > for the relationship, and it appears to give me a reasonable
> result.
> > > >
> > > > I think the first relationship is working fine, but the second
> one
> > is
> > > > giving me trouble.  When I run a request where the second
> > > relationship
> > > > ends up being empty, it works fine.  If it's not empty, I see
the
> > > > following unhelpful message:
> > > >
> > > >   WARNING: WebApplicationException has been caught : cause is
> > > > java.lang.NullPointerException
> >
> > If it matters, I've now finished making sure that the build-time
> > enhanced classes made it into the WAR, and I've now upgraded to
JDK16
> > and WebLogic 10.3.2, but the behavior is identical.  Unless someone
> has
> > some ideas, I guess I'll try to move forward with a Derby test case.
> >

Re: NPE loading fields of one-to-many collection

Posted by Rick Curtis <cu...@gmail.com>.
This probably would have helped earlier in debugging.... try setting
openjpa.RuntimeUnenhancedClasses=unsupported in your persistence.xml. This
will cause OpenJPA throw an exception when an unenhanced in encountered by
the runtime.

-- 
Thanks,
Rick

On Tue, Dec 15, 2009 at 4:51 PM, KARR, DAVID (ATTCINW) <dk...@att.com>wrote:

> > -----Original Message-----
> > From: KARR, DAVID (ATTCINW)
> > Sent: Tuesday, December 15, 2009 11:23 AM
> > To: users@openjpa.apache.org
> > Subject: RE: NPE loading fields of one-to-many collection
> >
> > > -----Original Message-----
> > > From: KARR, DAVID (ATTCINW)
> > > Sent: Monday, December 14, 2009 12:45 PM
> > > To: users@openjpa.apache.org
> > > Subject: NPE loading fields of one-to-many collection
> > >
> > > Using OpenJPA 1.2.1, presently with neither load-time or build-time
> > > enhancement, for different reasons.  I have a ticket open for my
> > > build-time enhancement issues.  It could be that since OpenJPA
> > doesn't
> > > support running without enhancement, I won't be able to make any
> > > significant progress on this until my issues with build-time
> > > enhancement
> > > are resolved.
> > >
> > > I have mapped two simple classes, and I'm now trying to test the
> > > mappings.  Each class has one relationship attribute.  The first one
> > > relates to the second one, and the second one has a recursive
> > > relationship.  Each one of these relationships is done with a join
> > > table.  I believe I've specified the correct annotations and orm.xml
> > > settings to do this mapping.  I tried running the generated SQL I
> saw
> > > for the relationship, and it appears to give me a reasonable result.
> > >
> > > I think the first relationship is working fine, but the second one
> is
> > > giving me trouble.  When I run a request where the second
> > relationship
> > > ends up being empty, it works fine.  If it's not empty, I see the
> > > following unhelpful message:
> > >
> > >   WARNING: WebApplicationException has been caught : cause is
> > > java.lang.NullPointerException
>
> If it matters, I've now finished making sure that the build-time
> enhanced classes made it into the WAR, and I've now upgraded to JDK16
> and WebLogic 10.3.2, but the behavior is identical.  Unless someone has
> some ideas, I guess I'll try to move forward with a Derby test case.
>

RE: NPE loading fields of one-to-many collection

Posted by "KARR, DAVID (ATTCINW)" <dk...@att.com>.
> -----Original Message-----
> From: KARR, DAVID (ATTCINW)
> Sent: Tuesday, December 15, 2009 11:23 AM
> To: users@openjpa.apache.org
> Subject: RE: NPE loading fields of one-to-many collection
> 
> > -----Original Message-----
> > From: KARR, DAVID (ATTCINW)
> > Sent: Monday, December 14, 2009 12:45 PM
> > To: users@openjpa.apache.org
> > Subject: NPE loading fields of one-to-many collection
> >
> > Using OpenJPA 1.2.1, presently with neither load-time or build-time
> > enhancement, for different reasons.  I have a ticket open for my
> > build-time enhancement issues.  It could be that since OpenJPA
> doesn't
> > support running without enhancement, I won't be able to make any
> > significant progress on this until my issues with build-time
> > enhancement
> > are resolved.
> >
> > I have mapped two simple classes, and I'm now trying to test the
> > mappings.  Each class has one relationship attribute.  The first one
> > relates to the second one, and the second one has a recursive
> > relationship.  Each one of these relationships is done with a join
> > table.  I believe I've specified the correct annotations and orm.xml
> > settings to do this mapping.  I tried running the generated SQL I
saw
> > for the relationship, and it appears to give me a reasonable result.
> >
> > I think the first relationship is working fine, but the second one
is
> > giving me trouble.  When I run a request where the second
> relationship
> > ends up being empty, it works fine.  If it's not empty, I see the
> > following unhelpful message:
> >
> >   WARNING: WebApplicationException has been caught : cause is
> > java.lang.NullPointerException

If it matters, I've now finished making sure that the build-time
enhanced classes made it into the WAR, and I've now upgraded to JDK16
and WebLogic 10.3.2, but the behavior is identical.  Unless someone has
some ideas, I guess I'll try to move forward with a Derby test case.

RE: NPE loading fields of one-to-many collection

Posted by "KARR, DAVID (ATTCINW)" <dk...@att.com>.
> -----Original Message-----
> From: KARR, DAVID (ATTCINW)
> Sent: Monday, December 14, 2009 12:45 PM
> To: users@openjpa.apache.org
> Subject: NPE loading fields of one-to-many collection
> 
> Using OpenJPA 1.2.1, presently with neither load-time or build-time
> enhancement, for different reasons.  I have a ticket open for my
> build-time enhancement issues.  It could be that since OpenJPA doesn't
> support running without enhancement, I won't be able to make any
> significant progress on this until my issues with build-time
> enhancement
> are resolved.
> 
> I have mapped two simple classes, and I'm now trying to test the
> mappings.  Each class has one relationship attribute.  The first one
> relates to the second one, and the second one has a recursive
> relationship.  Each one of these relationships is done with a join
> table.  I believe I've specified the correct annotations and orm.xml
> settings to do this mapping.  I tried running the generated SQL I saw
> for the relationship, and it appears to give me a reasonable result.
> 
> I think the first relationship is working fine, but the second one is
> giving me trouble.  When I run a request where the second relationship
> ends up being empty, it works fine.  If it's not empty, I see the
> following unhelpful message:
> 
>   WARNING: WebApplicationException has been caught : cause is
> java.lang.NullPointerException
> 
> There is no stack trace.  So, I set Eclipse to stop on NPE and I found
> it stopping at the following place:
> 
> 
>
com$att$ecom$dynamiccontent$domain$Category$pcsubclass.pcReplaceField(i
> n
> t) line: not available
> 	StateManagerImpl.replaceField(PersistenceCapable, FieldManager,
> int) line: 3025
> 	StateManagerImpl.storeObjectField(int, Object) line: 2457
> 	StateManagerImpl.storeObject(int, Object) line: 2447
> 
>
RelationCollectionTableFieldStrategy(StoreCollectionFieldStrategy).load
> (
> OpenJPAStateManager, JDBCStore, JDBCFetchConfiguration) line: 569
> 	FieldMapping.load(OpenJPAStateManager, JDBCStore,
> JDBCFetchConfiguration) line: 819
> 	JDBCStoreManager.load(OpenJPAStateManager, BitSet,
> FetchConfiguration, int, Object) line: 688
> 
> ROPStoreManager(DelegatingStoreManager).load(OpenJPAStateManager,
> BitSet, FetchConfiguration, int, Object) line: 116
> 	ROPStoreManager.load(OpenJPAStateManager, BitSet,
> FetchConfiguration, int, Object) line: 78
> 	StateManagerImpl.loadFields(BitSet, FetchConfiguration, int,
> Object) line: 2921
> 	StateManagerImpl.loadField(int, int, boolean, boolean) line:
> 2999
> 	StateManagerImpl.fetchObjectField(int) line: 2242
> 	StateManagerImpl.fetchField(int, boolean) line: 778
> 	StateManagerImpl.fetch(int) line: 740
> 	RedefinitionHelper$1.invoke(Object, Method, Object[]) line: 230
> 
> 	$Proxy130.iterator() line: not available
>       [deleted]
> 
> The fields of the class in question are:
> 
>     @Id
>     private String  id;
>     @Basic
>     private String  displayName;
>     @Temporal(TemporalType.DATE)
>     private Date    creationDate;
>     @OneToMany(fetch = FetchType.EAGER)
>     private Set<Category>   childCategories;
> 
> The relevant portion of the orm.xml file is this:
> 
>    <entity name="Category" class="...domain.Category">
>         <table name="CATEGORY"/>
>         <attributes>
>             <id name="id">
>                 <column name="CATEGORY_ID"/>
>             </id>
>             <one-to-many name="childCategories"
> target-entity="Category">
>                 <join-table name="CAT_CHLDCAT">
>                     <join-column name="CATEGORY_ID"
> referenced-column-name="CATEGORY_ID"/>
>                     <inverse-join-column name="CHILD_CAT_ID"
> referenced-column-name="CATEGORY_ID"/>
>                 </join-table>
>             </one-to-many>
>         </attributes>
>     </entity>

I have a little more information, but I'm not sure what to make of it.

I think I'm still not using enhanced classes at runtime.  I was able to
complete the build-time enhancement, but I can't figure out how to
deploy those enhanced classes to WebLogic from within Eclipse.  I've
written a separate note on that.

Perhaps this is the cause of my current problem, perhaps not.

To review my domain, I have a "Catalog" with "rootCategories", and
"Category" with "childCategories".  I have one test for a Catalog that
has two "rootCategories", but neither of which has any
"childCategories".  This test works fine.  I have another test with a
Catalog that has a Category that has at least one child category.  This
gets a NPE when I try to reference the "childCategories" association of
the child Category, which according to my database would be an empty
list.  Both associations are specified in annotations as EAGER fetching.

After I get the Catalog entity from the EntityManager, I iterate through
the tree, cloning the object and collections, and printing the values of
the basic fields as I examine each object.  This process fails with the
NPE.  The following is some of my console output, showing the stack
trace, and some of my debugging output:

845426  dynamicContent  INFO   [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.Runtime - Starting
OpenJPA 1.2.1
850566  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 6> executing prepstmnt 7 SELECT t0.CREATION_DATE,
t0.DISPLAY_NAME, t1.CATALOG_ID, t2.CATEGORY_ID, t2.CREATION_DATE,
t2.DISPLAY_NAME FROM CATALOG t0, ROOT_CATS t1, CATEGORY t2 WHERE
t0.CATALOG_ID = ? AND t0.CATALOG_ID = t1.CATALOG_ID(+) AND
t1.ROOT_CAT_ID = t2.CATEGORY_ID(+) [params=(String) catalog1270003]
850660  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 6> [94 ms] spent
850769  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 6> executing prepstmnt 9 SELECT t1.CATEGORY_ID,
t1.CREATION_DATE, t1.DISPLAY_NAME FROM CAT_CHLDCAT t0, CATEGORY t1 WHERE
t0.CATEGORY_ID = ? AND t0.CHILD_CAT_ID = t1.CATEGORY_ID [params=(String)
cat30012]
850769  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 6> [0 ms] spent
850785  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 6> executing prepstmnt 11 SELECT t1.CATEGORY_ID,
t1.CREATION_DATE, t1.DISPLAY_NAME FROM CAT_CHLDCAT t0, CATEGORY t1 WHERE
t0.CATEGORY_ID = ? AND t0.CHILD_CAT_ID = t1.CATEGORY_ID [params=(String)
cat30020]
850785  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 6> [0 ms] spent
850785  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 6> executing prepstmnt 13 SELECT t1.CATEGORY_ID,
t1.CREATION_DATE, t1.DISPLAY_NAME FROM CAT_CHLDCAT t0, CATEGORY t1 WHERE
t0.CATEGORY_ID = ? AND t0.CHILD_CAT_ID = t1.CATEGORY_ID [params=(String)
cat30031]
850785  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 6> [0 ms] spent
850800  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 6> executing prepstmnt 15 SELECT t1.CATEGORY_ID,
t1.CREATION_DATE, t1.DISPLAY_NAME FROM CAT_CHLDCAT t0, CATEGORY t1 WHERE
t0.CATEGORY_ID = ? AND t0.CHILD_CAT_ID = t1.CATEGORY_ID [params=(String)
cat30041]
850800  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 6> [0 ms] spent
850800  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 6> executing prepstmnt 17 SELECT t1.CATEGORY_ID,
t1.CREATION_DATE, t1.DISPLAY_NAME FROM CAT_CHLDCAT t0, CATEGORY t1 WHERE
t0.CATEGORY_ID = ? AND t0.CHILD_CAT_ID = t1.CATEGORY_ID [params=(String)
cat80110]
850800  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 6> [0 ms] spent
<Dec 15, 2009 11:10:49 AM PST> <Notice> <Stdout> <BEA-000000>
<showAnnotations.
clazz[org.apache.openjpa.enhance.com$att$ecom$dynamiccontent$domain$Cata
log$pcsubclass]> 
<Dec 15, 2009 11:10:49 AM PST> <Notice> <Stdout> <BEA-000000>
<annotations.length[0]> 
<Dec 15, 2009 11:10:49 AM PST> <Notice> <Stdout> <BEA-000000>
<showAnnotations. clazz[com.att.ecom.dynamiccontent.domain.Catalog]> 
<Dec 15, 2009 11:10:49 AM PST> <Notice> <Stdout> <BEA-000000>
<annotations.length[2]> 
<Dec 15, 2009 11:10:49 AM PST> <Notice> <Stdout> <BEA-000000>
<annotation.name[$Proxy57]> 
<Dec 15, 2009 11:10:49 AM PST> <Notice> <Stdout> <BEA-000000>
<annotation.name[$Proxy103]> 
<Dec 15, 2009 11:10:49 AM PST> <Notice> <Stdout> <BEA-000000> <Cloning a
Catalog. level[0]> 
<Dec 15, 2009 11:10:49 AM PST> <Notice> <Stdout> <BEA-000000>
<category[Features] id[cat30012]> 
<Dec 15, 2009 11:10:49 AM PST> <Notice> <Stdout> <BEA-000000> <Cloning a
Category. level[1]> 
<Dec 15, 2009 11:10:49 AM PST> <Notice> <Stdout> <BEA-000000>
<child.category[Prepaid] id[cat30019]> 
<Dec 15, 2009 11:10:49 AM PST> <Notice> <Stdout> <BEA-000000> <Cloning a
Category. level[2]> 
851035  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 19> executing prepstmnt 20 SELECT t1.CATEGORY_ID,
t1.CREATION_DATE, t1.DISPLAY_NAME FROM CAT_CHLDCAT t0, CATEGORY t1 WHERE
t0.CATEGORY_ID = ? AND t0.CHILD_CAT_ID = t1.CATEGORY_ID [params=(String)
cat30019]
851035  dynamicContent  TRACE  [[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.SQL - <t
-1701320760, conn 19> [0 ms] spent
Dec 15, 2009 11:10:49 AM org.apache.cxf.phase.PhaseInterceptorChain
doIntercept
WARNING: Application has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault
	at
org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvok
er.java:155)
	at
org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.ja
va:121)
        [deleted]
Caused by: java.lang.NullPointerException
	at
org.apache.openjpa.enhance.com$att$ecom$dynamiccontent$domain$Category$p
csubclass.pcReplaceField(Unknown Source)
	at
org.apache.openjpa.kernel.StateManagerImpl.replaceField(StateManagerImpl
.java:3025)
	at
org.apache.openjpa.kernel.StateManagerImpl.storeObjectField(StateManager
Impl.java:2457)
	at
org.apache.openjpa.kernel.StateManagerImpl.storeObject(StateManagerImpl.
java:2447)
	at
org.apache.openjpa.jdbc.meta.strats.StoreCollectionFieldStrategy.load(St
oreCollectionFieldStrategy.java:569)
	at
org.apache.openjpa.jdbc.meta.FieldMapping.load(FieldMapping.java:819)
	at
org.apache.openjpa.jdbc.kernel.JDBCStoreManager.load(JDBCStoreManager.ja
va:688)
	at
org.apache.openjpa.kernel.DelegatingStoreManager.load(DelegatingStoreMan
ager.java:116)
	at
org.apache.openjpa.kernel.ROPStoreManager.load(ROPStoreManager.java:78)
	at
org.apache.openjpa.kernel.StateManagerImpl.loadFields(StateManagerImpl.j
ava:2921)
	at
org.apache.openjpa.kernel.StateManagerImpl.loadField(StateManagerImpl.ja
va:2999)
	at
org.apache.openjpa.kernel.StateManagerImpl.fetchObjectField(StateManager
Impl.java:2242)
	at
org.apache.openjpa.kernel.StateManagerImpl.fetchField(StateManagerImpl.j
ava:778)
	at
org.apache.openjpa.kernel.StateManagerImpl.fetch(StateManagerImpl.java:7
40)
	at
org.apache.openjpa.enhance.RedefinitionHelper$1.invoke(RedefinitionHelpe
r.java:230)
	at $Proxy104.iterator(Unknown Source)
	at
com.att.ecom.dynamiccontent.content.Content.clone(Content.java:69)