Hi Bill,

Jetspeed 2 actually already uses OJB for persistence behind a persistence plugin.  
Look at the plugin source tree in Jetspeed 2; this may give you some ideas/answers.


Regards,
*================================* 
| Scott T Weaver                 |
| <[EMAIL PROTECTED]>            | 
| Apache Jetspeed Portal Project |
| Apache Pluto Portlet Container |
*================================*

> -----Original Message-----
> From: Barnhill William [mailto:[EMAIL PROTECTED]
> Sent: Thursday, December 04, 2003 9:27 AM
> To: Jetspeed Developers List
> Subject: Re: [J2] BasePersistentObjectFactory createInstance behavior
> 
> 
> I'm trying to both wrap my head around Cornerstone and fill a need by
> creating an Open Source voting application and a portlet to go with it.
> I've set up my database and a simple test app based on
> DemoPersistence.java.  The db has no users and I tried to
> createInstance(new Integer(101)), thinking it would create a new record
> in the db.  Apparently retrieveAndPopulate, which createInstance calls,
> just returns null if the query returns and empty recordset.  After doing
> walkabout in the code I discovered the following inheritance tree:
> BasePersistentObjectFactory
>     which extends BasePersistenceFactory  (implements
> IPersistenceFactory),
>         which extends InversionOfControlFactory,
>              which extends BaseFactory
> 
> Seeing that store(Object) in BasePersistentObjectFactory first calls
> createInstance(), I tracked createInstance() to the IoC factory.
> To make a long story short, and sum up the behavior:
> a. createInstance(param) - retreives the instance data from the database
> b. createInstance() - creates a fresh new instance
> c.  inst = createInstance(), set properties, store(inst) create a fresh
> new instance and stores it in the db
> 
> This may be old hat for many folks, but for anyone trying to get a
> handle on creating their own persistent object this may be useful.
> 
> Bill Barnhill
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to