使用BootstrapDownloadLink刷新Wicket中的面板

我的问题很简单,但是我不知道如何解决。我有一个feedbackPanel,如果BootstrapDownloadLink失败,我想显示一条错误消息。有了提交,我可以轻松地做到:


protected void onSubmit(AjaxRequestTarget target) {

    ...

    error("File_not_found");  //Wicket will print this on the feedback panel

    target.add(getModalPanel().getFeedbackPanel()); //But i need to refresh it first

}

但是按钮在面板内部,我填充了populateItem,这是我知道向其插入Bootstrap样式的唯一方法。按钮的代码:


BootstrapDownloadLink downloadDocument = new BootstrapDownloadLink(IDITEMREPEATER, file) {                                  


    @Override

    public void onClick() {

        File file = (File)getModelObject();

        if(file.exists()) {

            IResourceStream resourceStream = new FileResourceStream(new org.apache.wicket.util.file.File(file));

            getRequestCycle().scheduleRequestHandlerAfterCurrent(new ResourceStreamRequestHandler(resourceStream, file.getName()));

        } else {

            error(getString("error_fichero_no_existe"));

            /// ???? need to refresh-> getModalPanel().getFeedbackPanel()

        }

    }



};

downloadDocument.setIconType(GlyphIconType.clouddownload);

downloadDocument.add(new AttributeModifier("title", getString("documentos.descargar")));

downloadDocument.add(new AttributeModifier("class", " btn btn-info negrita btn-xs center-block"));

downloadDocument.setVisible(Boolean.TRUE);

list.add(downloadDocument);


慕村9548890
浏览 112回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java