Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Как в тапестри страницу вставить запрет ее кеширования броузером ?
PD>Если кто-то сталкивался с аналогичной проблемой — поделитесь, как решали.
PD>Корзина реализована как
PD>@InjectState("shopping-cart")
PD>public abstract ShoppingCart getShoppingCart();
Используй delegate свойство в Shell компоненте на странице с корзиной и подсунь туда свой компонент реализующий IRender с примерно таким кодом.
public void render(IMarkupWriter writer, IRequestCycle cycle){
List attList = new ArrayList();
Attribute att = new Attribute("http-equiv", "Pragma");
attList.add(att);
att = new Attribute("Content", "NO-CACHE");
attList.add(att);
createMetaTag(writer, attributeList);
}
private void createMetaTag(IMarkupWriter writer, List atts){
writer.begin("meta");
for(int i=0;i<atts.size();i++){
Attribute att = (Attribute) atts.get(i);
writer.attribute(att.getName(), att.getValue());
}
writer.closeTag();
}
http://tapestry.apache.org/tapestry4.1/components/Shell.html
delegate If specified, the delegate is rendered before the close of the <head> tag. Typically, this is used to provide additional <meta> tags.