wicket中实现下载功能
?
public class PhotoListingPage extends WebPage {public PhotoListingPage() {final IResourceStream stream = new AbstractResourceStreamWriter() {private static final long serialVersionUID = 1L;@Overridepublic String getContentType() {return "image/jpeg";}@Overridepublic void write(OutputStream output) {try {InputStream ins = getClass().getClassLoader().getResourceAsStream("com/foo/album/flower.jpg");byte[] buffer = new byte[1024];while (ins.available() > 0) {int bytesRead = ins.read(buffer);output.write(buffer, 0, bytesRead);}ins.close();} catch (Throwable e) {throw new RuntimeException(e);}}};final Resource resource = new WebResource() {private static final long serialVersionUID = 1L;@Overridepublic IResourceStream getResourceStream() {return stream;}};ResourceReference ref = new ResourceReference("101") {private static final long serialVersionUID = 1L;@Overrideprotected Resource newResource() {return resource;}};add(new Image("photo", ref));add(new Link<Void>("download") {private static final long serialVersionUID = 1L;@Overridepublic void onClick() {getRequestCycle().setRequestTarget(new ResourceStreamRequestTarget(stream));}});}}