Wicket Label no actualizado / permanece invisible
stoy tratando de implementar Breadcrumb Navigation en unaWebPage
que intercambia un contenidoPanel
vía ajax.
Termina luciendo así:Home >> Page >> Panel
Aquí está mi código de página:
public MyPage() {
super();
contentContainer = new WebMarkupContainer("contentContainer");
contentContainer.setOutputMarkupId(true);
add(contentContainer);
contentContainer.add(content = createContentPanel());
breadCrumbContainer = new WebMarkupContainer("breadcrumbContainer");
breadCrumbContainer.setOutputMarkupId(true);
add(breadCrumbContainer);
final AjaxLink panelLink = new AjaxLink("panelLink") {
@Override
public void onClick(final AjaxRequestTarget target) {
replaceContentPanel(getOverviewPanel(), target);
}
@Override
public boolean isVisible() {
return !(content instanceof OverviewPanel);
}
};
breadCrumbContainer.add(panelLink);
panelLink.add(new Label("panelLabel", new Model<String>() {
@Override
public String getObject() {
//some dynamic content for example:
return contentPanel.getClass().getName();
}
}));
}
public void replaceContentPanel(final Component replacer, final AjaxRequestTarget target) {
content.replaceWith(replacer);
content = replacer;
if (target != null) {
target.add(contentContainer);
target.add(breadCrumbContainer);
}
}
The Home and PageLabel
son fáciles. El del Panel debe actualizarse cada vez que actualizo el contenidoPanel
delWebPage
. Estaba seguro de que eltarget.add(breadCrumbContainer);
line iba a hacer esto. Sin embargo está vacío. La etiqueta no muestra nada.
speraba encontrar la respuesta, lo que probablemente sea obvio, mientras escribía la pregunta, pero aún así se me escapa, así que espero que alguien aquí vea mi erro