Простой способ использовать параметризованные сообщения пользовательского интерфейса в Wicket?

Калитка имеетгибкая система интернационализации это поддерживает параметризацию сообщений пользовательского интерфейса во многих отношениях. Есть примеры, например вStringResourceModel javadocs, такой как этот:

WeatherStation ws = new WeatherStation();
add(new Label("weatherMessage", new StringResourceModel(
    "weather.${currentStatus}", this, new Model<String>(ws)));

Но я хочу чего-то действительнопростои не смог найти хороший пример этого.

Рассмотрим этот вид сообщения пользовательского интерфейса в файле .properties:

msg=Value is {0}

В частности, я не хотел бы создавать объект модели (с геттерами для заменяемых значений; как WeatherStation в приведенном выше примере) только для этой цели. Это просто излишне, если у меня уже есть значения в локальных переменных, и в противном случае нет необходимости в таком объекте.

Вот глупый способ "грубой силы" заменить {0} на правильное значение:

String value = ... // contains the dynamic value to use
add(new Label("message", getString("msg").replaceAll("\\{0\\}", value)));

Есть ли чистый, более Wicket-y способ сделать это? (это не намного дольше, чем выше)?

Ответы на вопрос(5)

Ваш ответ на вопрос