我必须重新做一个页面,其中包含指向pdf文件的链接。

到目前为止,页面看起来像这样:

NewsPanel.html

<wicket:fragment wicket:id="news">
    [...]
    <ul>
        <li><a href="res/pdf/NewsAugust.pdf" target="_blank">August</a></li>
        <li><a href="res/pdf/NewsSeptember.pdf" target="_blank">September</a></li>
    </ul>
    [...]
</wicket:fragment>


现在,我必须使用数据库中的信息来构建链接。

我已经尝试过这样的事情:

NewsPanel.java

[...]
Resource pdfResource = new WebResource() {

    private static final long serialVersionUID = 1L;

    @Override
    public IResourceStream getResourceStream() {
        File pdf = new File("res/newsletter/September.pdf");
        IResourceStream stream = new FileResourceStream(pdf);
        return stream;
    }
};
ResourceLink<Void> resourceLink = new ResourceLink<Void>("pdf", pdfResource);
add(resourceLink);
resourceLink.add(new Label("label", new Model<String>("September")));
[...]


NewsPanel.html

<wicket:fragment wicket:id="news">
    [...]
    <ul>
        <li><a href="#" wicket:id="pdf"><wicket:container wicket:id="label"></wicket:container></a></li>
    </ul>

</wicket:fragment>


但是当我单击链接时,它显示404错误...

正确的方法是什么?

最佳答案

和往常一样,当我在这里发布问题时,我就知道了答案,就这么简单:
NewsPanel.java

ExternalLink link = new ExternalLink("pdf", "res/newsletter/September.pdf", "September");
add(link);


NewsPanel.html

<a href="#" wicket:id="pdf">

09-05 09:02