cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Gentry <>
Subject Re: Coexisting with WebObjects
Date Tue, 09 Aug 2011 13:06:43 GMT
Hi Joe,

I'm not sure if Cayenne was created to be a next generation EOF or
just an open-source ORM that was heavily influenced by the concepts in
EOF.  Andrus could answer that one better.  There are still some areas
of EOF that I'd consider superior to Cayenne, namely EOModeler was
nicer than Cayenne Modeler (although Cayenne Modeler is improving) and
EOF supported inheritance better (again, Cayenne is improving in that
area, too).

We have a lot of WO applications here that are slowly being re-written
to use Tapestry 5 + Cayenne.  We were all sad to see WO (and EOF)
wither and die, but at least T5+Cayenne seems to work rather well


PS. I interviewed for a WO job at the USPS.  It didn't go so well when
they told me they'd have to do a background investigation check and
I'd have to provide them the addresses I'd lived at the past seven
years.  I looked at the interviewer and said, "You are the Post
Office.  Shouldn't you know where I've been the last seven years?"  He
was not amused.  Really.  Not.  Amused.

On Mon, Aug 8, 2011 at 10:32 PM, Joe Baldwin <> wrote:
> Hey Michael,
> this is an aside:
> I used to work with EOF some time ago when WebObjects first came out (we did a project
for USPS).  EOF was pretty primitive by todays standards but at the time it was an insanely
advanced concept.   It was my assumption that Cayenne was started as a "next generation"
EOF (I believe that Cayenne has far surpassed EOF now though).  Is this a fair characterization?
> Joe
> On Aug 8, 2011, at 10:19 PM, Michael Gentry wrote:
>> Hi Joe,
>> In the past I used Cayenne with a legacy database that had 96-bit
>> binary primary keys.  I had to create my own Cayenne DB adapter and PK
>> generator and specify using it in Cayenne Modeler.  It wasn't too hard
>> to do and worked perfectly with the existing system (which was
>> actually WO/EOF-based).  No conflicts since they both used the same
>> key source.
>> That's probably the direction you'll want to head ...
>> mrg
>> On Mon, Aug 8, 2011 at 6:45 PM, Joseph Senecal <> wrote:
>>> Thanks to the help provided from this mailing list, my prototype was done on
time and shows that the concept can work.
>>> The next problem to solve is how to get a Cayenne program to peacefully coexist
with legacy WebObjects programs that will be inserting records into the same table. I can
restrict the conflict to one table, but that one table is central to all others and new records
could be created by any process that loads any of the related fact tables.
>>> The problem is that Cayenne and WebObjects use differently named sequences to
allocate primary keys. These sequences are also formatted differently because WebObjects allocates
primary keys one at a time where Cayenne allocates primary keys 20 at the time. The obvious
solution is to configure the sequences for different primary key ranges. The problem is that
these programs will be running at over a dozen different sites, which makes monitoring for
exhausting of an assigned range problematic. My boss would find a different solution, if one
is possible.
>>> I'm sure that combining multiple ORM's has happened before. Does anyone have
advice as to the best way to make them play nicely together?
>>> Joe

View raw message