我是小门新手。我正在尝试在生产环境中的本地计算机上运行其他人的代码。我在同一文件夹中有Java代码和html代码。我为相应的Java ID定义了wicket ID“指令”,但仍然无法找到资源。
ERROR - XYZApplication - Unable to find resource: instructions for component: instructions [class=org.apache.wicket.markup.html.basic.Label]
// java文件
ResourceModel instructionsModel = new ResourceModel("instructions");
instructions = new Label("instructions", instructionsModel);
add(instructions);
html文件
<div wicket:id="instructions" class="instructions"></div>
您能帮我解决这个问题吗?
A ResourceModel
用于国际化,因此它正在您的一个资源束中寻找名称为instructions
的条目,但找不到它。
资源包遵循与HTML和Java文件相同的命名约定,因此,如果您具有MyPanel.java
和MyPanel.html
,则资源包可以命名为MyPanel.properties
(尽管有更多选项)。
资源文件通常看起来像这样:
my.label=Hi, I'm a label
my.description=This is a description
在您的情况下,应显示这样的条目:
instructions=To use this form, you need to enter data
也可能是在应用程序级别定义了一个包,因此如果您有MyApplication.java
,则您的资源包将在同一包中并称为MyApplication.properties
。
您可以在Wiki上阅读有关how internationalization works in wicket的更多信息。>>
如果这些文件已经存在和
包含正确的条目,那么可能是因为.properties
文件未捆绑到本地计算机上的应用程序中。在这种情况下,您需要检查构建工具设置(例如,Maven的pom.xml
或Gradle的build.gradle
)以及IDE的设置。