a cache entry with a composite validity (AggregatedValidity).yes, but I'd like to know exactly which part is valid and which is not. does aggregatedvalidity give me this ?
If you use hibernate the view sees the object model as plain objects, collections. It does not know the data is being fetched when it's requested. This does not break SoC.- you mess with lazily fetched collections(hibernate, ojb): * collections retrieve data from backend during view rendering * only the needed data is being fetched so you would have to know EXACTLY what data the view needs and initialize it before caching. This way all the fun of using OR (hibernate) and templates is destroyed. When you have a object model with lazy fetching support you can extend your view without making ANY changes to the controller code as the model gives you access to much more data that you need at the moment.
well, we have different mindsets regarding template usage. for me a template should be just a template; template data with holes in it to fill. following MVC the model should be agnostic of the view and the view should be agnostic of the model. the controller is the one who has all the knowledge. I don't like my view to depend on *implementation* details, then it really gets messy. anyway, the approach works well for me and I haven't yet stumbled over the problems you encountered.
Leszek Gawron
