title: Simple way to use parameterised UI messages in Wicket?
body: <p>Wicket has a <a href="https://cwiki.apache.org/confluence/display/WICKET/Everything+about+Wicket+internationalization">flexible internationalisation system</a> that supports parameterising UI messages in many ways. There are examples e.g. in <a href="http://wicket.apache.org/apidocs/1.4/org/apache/wicket/model/StringResourceModel.html">StringResourceModel</a> javadocs, such as this:</p>
  
  <pre><code>WeatherStation ws = new WeatherStation();
  add(new Label("weatherMessage", new StringResourceModel(
      "weather.${currentStatus}", this, new Model&lt;String&gt;(ws)));
  </code></pre>
  
  <p>But I want something really <strong>simple</strong>, and couldn't find a good example of that.</p>
  
  <p>Consider this kind of UI message in a .properties file:</p>
  
  <pre><code>msg=Value is {0}
  </code></pre>
  
  <p>Specifically, I wouldn't want to create a model object (with getters for the values to be replaced; like WeatherStation in the above example) only for this purpose. That's just overkill if I already have the values in local variables, and there is otherwise no need for such object.</p>
  
  <p>Here's a stupid "brute force" way to replace the {0} with the right value:</p>
  
  <pre><code>String value = ... // contains the dynamic value to use
  add(new Label("message", getString("msg").replaceAll("\\{0\\}", value)));
  </code></pre>
  
  <p><strong>Is there a clean, more Wicket-y way to do this</strong> (that isn't awfully much longer than the above)<strong>?</strong> </p>