Antonio Petrelli on 29/08/07 07:46, wrote:
2007/8/29, Adam Hardy <[EMAIL PROTECTED]>:
However it doesn't really give much of an idea of what you mean. A 'hint'?
Presumably this means that your code checks whether this attribute is null
before executing an algorithm to establish what exactly the put-attribute
is defining?

I will try to clarify it with an example. Suppose that you declared a Tiles
definition called "my.definition", but you want to put the value
"my.definition" as a string. In this case, you need to use: type="string" otherwise the "my.definition" definition will be used.

Thanks for the clarification.

I was confused by tiles' handling of a simple configuration error I had made. Tiles by default just ignored my attempt to insert a JSP, because I had given the wrong directory in the tiles.xml, therefore I was effectively trying to insert a non-existent JSP with a tiles:insertAttribute tag.

I think it would certainly have been desirable in this case to throw an exception and ditch the response, however I can't see a way to configure that and it's too late to help now anyway. It may be advantageous though to configure tiles that way by default to minimise frustration for newbies such as myself.

It did occur to me though that the handling of insertion of non-existent JSPs may be container-dependent. A recent porting of a tiles-1.0 app to Websphere revealed that it throws exceptions if I tried to insert a zero-length string as the name of a JSP.

It meant I had to insert an empty "blank.jsp" file as the value for attributes in my abstract tile definition which other tiles could choose override if desired - i.e. leaving the attributes as "" causes Websphere to throw an exception.

I haven't got so far as deploying to Websphere with my current app so I can't say whether this still applies in tiles-2. The tiles-2 ability to create extending definitions that can define new attributes not declared in the abstract definition may be a feature that circumvents that old tiles-1 Websphere issue - hopefully. I can let you know if I upgrade that old tiles-1 app to tiles-2 at some point. (Would love to but it's not one of the priorities at the moment!)

Best regards
Adam





Reply via email to