检票口国际化

dor*_*csi 1 wicket internationalization

我有一个标签,它显示来自字符串变量的给定文本。这个变量可以有两个不同的值,对于每个值,我都有一个从英语到我的母语的翻译版本存储在一个属性文件中。

我有以下代码:

add(new Label("fruit", new PropertyModel(getModelObject(), "fruit.name")));
Run Code Online (Sandbox Code Playgroud)

和 HTML:

<wicket:panel xmlns:wicket="http://wicket.apache.org/">
  <div>
    <div class="row">
        <div class="col-sm-6">
            <div class="row">
                <div class="col-sm-5">
                    <wicket:message key="myBasket.fruit"> 
                    </wicket:message>
                </div>
                <div class="col-sm-7">
                    <span wicket:id="fruit"></span>
                </div>
            </div>
        </div>
    </div>
  </div>
</wicket:panel>
Run Code Online (Sandbox Code Playgroud)

这种水果可以是苹果或梨。在我的属性文件中,我有两个值的翻译:

apple=Apfel
pear=Birne
Run Code Online (Sandbox Code Playgroud)

当我运行我的代码时,我的标签内容以英文显示。

如何根据变量的值设置来自属性文件的值?

谢谢!

小智 5

看看类 StringResourceModel。您应该将其用作标签的模型。请参阅用户指南。