允许用户在JavaEE/Wicket上下载生成的XML
我的应用程序(带有JavaEE的Wicket框架)具有类似向导的风格,并生成xml文件。我想为用户提供一个按钮,用它可以下载文件。我如何提供这样的功能,最好是不将文件保存在服务器上允许用户在JavaEE/Wicket上下载生成的XML,xml,jakarta-ee,dynamic,download,wicket,Xml,Jakarta Ee,Dynamic,Download,Wicket,我的应用程序(带有JavaEE的Wicket框架)具有类似向导的风格,并生成xml文件。我想为用户提供一个按钮,用它可以下载文件。我如何提供这样的功能,最好是不将文件保存在服务器上 非常感谢您的帮助我只使用org.apache.wicket.markup.html.link.DownloadLink HTML: 爪哇: 我将文件存储在服务器上,但这里有另一个问题,其中包含有关如何动态生成文件的更多信息: 这个例子是一个很好的起点: 然后,您需要做的唯一一件事就是为生成XML实现IResourc
非常感谢您的帮助我只使用org.apache.wicket.markup.html.link.DownloadLink HTML:
爪哇:
我将文件存储在服务器上,但这里有另一个问题,其中包含有关如何动态生成文件的更多信息:
这个例子是一个很好的起点: 然后,您需要做的唯一一件事就是为生成XML实现IResourceStream
public class YourXmlDownload implements Serializable, IResourceStream {
protected byte[] xmlContent = null;
// ...
@Override
public final Bytes length() {
return Bytes.bytes(xmlContent.length);
}
@Override
public final InputStream getInputStream() throws ResourceStreamNotFoundException {
return new ByteArrayInputStream(xmlContent);
}
}
您可以使用ByteArrayInputStream,如上面的示例所示
public class YourXmlDownload implements Serializable, IResourceStream {
protected byte[] xmlContent = null;
// ...
@Override
public final Bytes length() {
return Bytes.bytes(xmlContent.length);
}
@Override
public final InputStream getInputStream() throws ResourceStreamNotFoundException {
return new ByteArrayInputStream(xmlContent);
}
}