2012-06-20 4 views

ответ

3

См. http://tiles.apache.org/2.2/framework/tiles-jsp/tlddoc/tiles/insertAttribute.html и http://tiles.apache.org/2.2/framework/tiles-jsp/tlddoc/tiles/useAttribute.html.

useAttribute объявляет переменную, содержащую атрибут. insertAttribute вставляет атрибут в ответ. Это в основном та же разница, как между

String id = attributeValue("theAttribute"); 

и

out.println(attributeValue("theAttribute")); 
3

Благодаря @JB Nizet!

На самом деле мне нужен этот атрибут плитки, который будет использоваться на странице jsp. Я нашел разницу и почти то же самое, что вы объяснили. Тем не менее, я хотел бы поделиться своим примером для тех, кто пытается его на странице JSP

фрагмент кода myLayout.jsp

<tiles:useAttribute name="my_title"/> 
<c:if test="${not empty my_title}"> 
    <tiles:insertAttribute name="my_title"/> 
</c:if> 

useAttribute будет в каком-то смысле преобразовать «my_title» в переменную, которую теперь можно манипулировать как обычную переменную jsp. Эта новая переменная будет иметь значение, предоставляемое определением плитки. Следовательно, переменная может быть проверена, если его пустым или пустым, и если оно не пусто, то значение outputed в браузер (ответ) с помощью insertAttribute

Вот определение образца плитки:

<definition name="test" template="myLayout.jsp">  
    <put-attribute name="my_title" value="Web Blog" /> 
</definition> 

наслаждайтесь!

+0

IMO вы должны принять ответ JB Nizet –

Смежные вопросы