Hello Nick

2016-06-01 3:33 GMT+02:00 Nicolas Le Bas <m...@nlebas.net>:

> So, we also have this use case where we want to make sure the nested
> definition gets rendered:
>
> https://github.com/apache/tiles/blob/TILES_3_0_X/tiles-test-pom/tiles-test/src/main/webapp/testinsertnesteddefinition_tags.jsp



Yep.


> I agree that trying to defer evaluation here creates all kinds of
> challenges. But instead of creating a new tag, I wonder if we shouldn't
> remove one.
>

I think that these kind of decisions should be done when changing major
version number (Tiles 4?). A feature may be deprecated when incrementing
minor or patch version, not removed (AFAIK).


> I've never been much of a fan of declaring definitions inline in a JSP,
> and inserting it later. I think, at the top level it is a bad practice. The
> only place where it makes sense to me is inside a putAttribute tag, because
> it allows to defer the evaluation of the attribute.
>

It makes sense when you put a definition that extends another, more basic,
one.


> But then if we defer evaluation anyway, we could use insertTemplate or
> insertDefinition instead. I'd just like to double check about cascading
> attributes, making sure we don't loose the feature in the change.
>

The way of putting definitions via insertDefinition and via
putAttribute->definition is different. But again, before removing features,
a survey should be done (but I guess that Tiles users are not so active
anyway) and only in major versions.
I don't worry about cascading definitions, the attribute context mechanism
seems to be consistent for many use cases.


> Do I make any sense?
>

Sure :-D

Antonio

Reply via email to