0

Wicketの画像の相対パスとマウントされていないページに少し問題があります。

このコードを汎用ページ(例:MyPage.java)内に配置します。

final DatePicker<Date> date = new DatePicker<Date>("date",true);
date.setButtonImage("img/calendar.gif");

imgディレクトリはWebContentディレクトリ内に保存されます。

WebApplicationにページをマウントしない限り、画像が正しく表示されません。ページをマウントせずに、相対URLはJavaクラスパスから開始することを検討する必要があります。

ページをマウントせずにWebContentから正しい画像URLを作成するにはどうすればよいですか?

ありがとう

4

2 に答える 2

4

使用できるパスが必要な場合

date.setButtonImage(UrlUtils.rewriteToContextRelative("img/calendar.gif", getRequestCycle()));

これがContextImageの仕組みです。DatePickerが別のコンポーネントを画像として受け入れる場合は、このクラスを直接使用できます。

于 2012-08-21T11:27:54.000 に答える
0

グーグルで検索した後、私は簡単な解決策を見つけました。

ServletContext servletContext = WebApplication.get().getServletContext();
String contextPath = servletContext.getContextPath();

その後

date.setButtonImage(contextPath+"/img/calendar.gif");
于 2012-08-21T10:44:37.830 に答える