It seems that only one person has actually tried Cayenne. Why is that?
I am familiar with iBatis but as you guys have mentioned it is far more
low-level than Hibernate. Cayenne (in theory) has equivilent
functionality to Hibernate with a similar design but a better support.
Hibernate has taught me how important good support really is.
My big problem with Hibernate is that it throws utterly useless
exception messages sometimes. Like ... you can read the message but you
have absolutely no clue what to do next. How do you fix the problem? Why
is this happening? Ok, so *some* object is not unique in the session,
but *which one*? It won't tell you. And stupid things like this. The
problem was that (a) Hibernate's authors put absolutely no effort into
ensuring their messages hint at what is actually wrong or how to fix it
(b) asking for help on their forums got you no replies or got you
banned. So basically Hibernate works well for simple problems, until you
run into more complex problems, involving concurrency or running out of
memory for example... then you're left holding the eggshells. You go and
try debug into Hibernate's source code :) it's not fun!
Anyway, I'll look into Cayenne today and hopefully report back to you
guys soon.
Thanks,
Gili
Eelco Hillenius wrote:
The thing is, that while Hibernate can help you out a lot when you
have a bunch of complex relations, it can also get in your way.
Especially when optimizing your applications, and/ or when you have to
do really advanced queries, it is not allways obvious how Hibernate
will work out things. Which means you'll be spending time figuring out
how and why Hibernate does things for specific cases.
One other potential problem I've seen a lot (and actually have had
discussion about with co-developers since the days of Castor) is that
it introduces a new kind of developer lazyness. Just because you /can/
have all sorts of relations, means that a lot of developers /will/
introduce them, even if they don't really need them. They will try to
solve all their problems using that automatic relations support, and
not allways think about the performance consequences of what they do.
Anyway, I'm a happy Hibernate user, and it can help your projects a
lot. But there certainly are cases where using more low level
frameworks like iBatis is just as good an idea.
Eelco
On 8/26/05, Gwyn Evans <[EMAIL PROTECTED]> wrote:
Hmm, Ironically, I got the book some time ago, but haven't actually
got in a position to need to use it until a few days ago, when I used
it to come up with a one-date data viewing app[1].
Anyway, a quick look for comparisions came up with the following quote
from <http://raibledesigns.com/page/rd?anchor=hibernate_vs_ibatis>
"iBATIS is good for basic or mapping, but it falls way short of
hibernate in more complex orm. Hibernate has a lot built into that are
intended to compete with EJB CMP not jdbc and iBATIS. If you are use
to rolling your own persistence then iBATIS will seem amazing. Just
wait for a cross cutting concern or a User Type to get you scratching
your head. Oh, and how do you abstract anything with iBATIS? Oh yeah,
and Hibernate now has filters. I guess what I am really saying is
iBATIS is a good primitive tool, and good for introducing people to
orm that haven't a clue. If you then have some mreo complex problems
you should probably consider Hibernate. I can appreciate the above
comments for why iBATIS is good, and don't necessarily disagree, but
you will be limited at some point with it's simplicity. If it is all
you need, happy birthday!"
The author may have been trying to put down iBATIS, but for what I
need, it sounds like I should be looking into it! :-)
/Gwyn
[1] The app's a single page, showing a pageable view, filtered by
content & time - basically a cut-down combination of parts of the
cd-app & table examples, although even that 'needs' contrib-data,
contrib-data-hibernate-3.0 & contrib-dataview support! I'm toying
with the idea of uploading it, but wondering if it's worth it, as it's
so cut-down...
On 26/08/05, Eelco Hillenius <[EMAIL PROTECTED]> wrote:
I have no experience with Cayenne, but some readers (Jonathan C) have.
From what I understand, Cayenne works with static code generation.
I have experience with OJB. I'm not too crazy about it to put it
mildly, though I have been working with pre-1.0 versions.
Maybe if you want more control, you should consider frameworks like
iBatis. Personally, I like Hibernate. It has it's glitches, but works
for my projects fine most of the time.
Eelco
On 8/26/05, Gili <[EMAIL PROTECTED]> wrote:
I am seriously considering dumping Hibernate in favor of Cayenne
because the former has a multitude of bugs and usability issues I ran
into which the authors refuse to acknowledge (don't mention the word
"bug" on their discussion forum or else they will ban you. No joke!).
Anyone who honestly thinks their software has no bugs *has* to be
delusional in my book.
Anyway, I'm wondering whether anyone has tried using Cayenne before? I
noticed a lot of Wicket users have had experience with Hibernate so I
figured this was a good place to ask. I read that Cayenne is
feature-equivilent to Hibernate but the developers are far more friendly
and their support base is stronger. With Hibernate whenever I ran into
trouble and try asking for help the developers first tell me off, then
proceed to tell me to go buy their book. Now, I can hardly fault them
for their capitalistic ploy, but I have a hard time justifying to myself
having to pay money to people who badger users asking for help. Frankly,
I hope they crash and burn for their attitude.
So back to the point. Does anyone have any experience with Cayenne or
maybe Apache OJB? I'm look at
http://c2.com/cgi-bin/wiki?ObjectRelationalToolComparison for a
comparison but it is rather dry. I'm looking for practical experience
from real people. Let me know...
Gili
--
http://www.desktopbeautifier.com/
-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Wicket-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wicket-user
-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Wicket-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wicket-user
-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Wicket-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wicket-user
-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Wicket-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wicket-user
--
http://www.desktopbeautifier.com/
-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Wicket-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wicket-user