Wicket 1.5 でのタグ属性書き換えを<img> で試したら、、

Wicket 1.5 では、タグ属性をプログラム側から指定する場合注意が必要だった。

<img> を、あえて WebMarkupContainer で生成して src=
SimpleAttributeModifier で指定する場合、WebContent からの相対パスで画像ファイルを
指定してもだめだった。1.4 の時は、OKだった。
Wicket 1.5 では、前に、wicket/bookmarkable/ が付くURL で画像取得が要求されてしまう。

例えば、WebContent の下、img ディレクトリに画像がある場合、以下のように記述することになる。

WebMarkupContainer image = new WebMarkupContainer("image");
image.add(new SimpleAttributeModifier("src","../../img/flowerclosed.jpg"));
image.add(new SimpleAttributeModifier("alt","開く"));
image.add(new SimpleAttributeModifier("title","開く"));
image.add(new AjaxEventBehavior("onclick"){
@Override
   protected void onEvent(AjaxRequestTarget target){
      Component ct = get("image");
      ct.add(new SimpleAttributeModifier("src",isOpenImage()
              ? "../../img/flowerclosed.gif" : "../../img/floweropened.gif"));
      ct.add(new SimpleAttributeModifier("alt",isOpenImage() ? "開く" : "閉じる"));
      target.add(ct);
   }
});