我正在使用wicket 1.5.7,我想在DefaultDataTable的单元格中创建一个链接 所以我复制了this page中的示例,但是我从wicket得到了运行时错误:
最后一个原因:无法找到关联的标记文件。 ActionPanel:[ActionPanel [Component id = cell]]
这是我的一些代码:
public GroupsList(final PageParameters parameters)
{
ArrayList<IColumn> columns = new ArrayList<IColumn>();
columns.add(new AbstractColumn<Group>(new Model<String>("Actions"))
{
public void populateItem(Item<ICellPopulator<Group>> cellItem, String componentId,
IModel<Group> model)
{
cellItem.add(new ActionPanel(componentId, model));
}
});
add(new DefaultDataTable("table", columns, new GroupDataProvider(), 8));
}
这是我的ActionPanel
class ActionPanel extends Panel
{
public ActionPanel(String id, IModel<Group> model)
{
super(id, model);
add(new Link("select")
{
@Override
public void onClick()
{
PageParameters pp = new PageParameters();
setResponsePage(new HomePage(pp));
}
});
}
}
任何想法的根本原因是什么?
答案 0 :(得分:1)
从错误消息判断您缺少ActionPanel.html。它的名字错误,错位或完全丢失。小组去了,他们需要他们的标记。在上述示例的情况下,标记文件被“隐藏”为BasePage$ActionPanel.html,因为ActionPanel是BasePage的内部类。