IMHO, I've been doing a lot of mapping these days on a lot of classes and tables from different teams on my project. I've seen a lot of different mapping issues. And I agree, I don't think you need to mess the code to put lazy components.
The only time I've been using components is in the case where you have a denormalized one-to-one association. By that I mean that you have a one-to-one association but you decide that it will be more efficient to put everything in the same table. However, you still have two java objects. One aggregating the other. I'm not using components for my value types (Amount, Quantity, Currency and so on) because I think it's a good practice to have them immutable so there are not setters. And I prefer no to map directly on fields. So I'm using custom types for them. That said, the benefit of having lazy loading on components will be to allow to load only a part of a db table row. The fields mapped in the component won't be selected by hibernate. From my point of view, selecting a little less fields in the same table will rarely provide a big performance gain. Especially if you then lazy load them later. If there's a real gain, you should have put them in another table anyway I think. Hope it helps you deciding, Henri P.S.: Just to be annoying, according to the way I'm using components, I'll find really useful to have HB-31 fixed instead of lazy components implemented :-) (yeah, I know, it might not be really funny to fix it, even with the available patch...) ------------------------------------------------------- SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now! http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click _______________________________________________ hibernate-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/hibernate-devel