List of usage examples for org.apache.wicket.request.resource ResourceStreamResource setContentDisposition
public ResourceStreamResource setContentDisposition(ContentDisposition contentDisposition)
From source file:org.artifactory.webapp.wicket.page.logs.SystemLogsViewPanel.java
License:Open Source License
/** * Add a link to enable the download of the system log file *//*from w w w . j av a2s . co m*/ private void addSystemLogsLink() { // This is very ugly and should be removed when we upgrade wicket, see RTFACT-5470 for explanation downloadLink = new DownloadLink("systemLogsLink", systemLogFile) { @Override public void onClick() { final File file = getModelObject(); IResourceStream resourceStream = new FileResourceStream(new org.apache.wicket.util.file.File(file)); ResourceStreamRequestHandler handler = new ResourceStreamRequestHandler(resourceStream) { @Override public void respond(IRequestCycle requestCycle) { IResource.Attributes attributes = new IResource.Attributes(requestCycle.getRequest(), requestCycle.getResponse()); ResourceStreamResource resource = new ResourceStreamResource(this.getResourceStream()) { @Override protected void configureCache(ResourceResponse data, Attributes attributes) { Response response = attributes.getResponse(); ((WebResponse) response).disableCaching(); } }; resource.setFileName(file.getName()); resource.setContentDisposition(ContentDisposition.ATTACHMENT); resource.respond(attributes); } }; getRequestCycle().scheduleRequestHandlerAfterCurrent(handler); } }; add(downloadLink); downloadLink.add(linkLabel); downloadLink.setOutputMarkupId(true); linkLabel.setOutputMarkupId(true); }
From source file:org.wicketstuff.poi.excel.TableComponentAsXlsHandler.java
License:Apache License
public void respond(IRequestCycle requestCycle) { try {//w ww . ja va 2s. c om TableParser parser = new TableParser(newSheet(), cellExporter); if (tableComponent instanceof IPageable) { IPageable pageable = (IPageable) tableComponent; for (int i = 0; i < pageable.getPageCount(); i++) { pageable.setCurrentPage(i); parser.parse(tableComponent); } } else { parser.parse(tableComponent); } XlsStream xlsStream = new XlsStream(parser.getSheet().getWorkbook()); ResourceStreamResource resource = new ResourceStreamResource(xlsStream); resource.setFileName(filename); resource.setContentDisposition(ContentDisposition.ATTACHMENT); IResource.Attributes a = new IResource.Attributes(requestCycle.getRequest(), requestCycle.getResponse()); resource.respond(a); } catch (Exception e) { throw new RuntimeException("Error while generating a xls file to table component", e); } }
From source file:org.wicketstuff.poi.excel.TablesComponentAsXlsHandler.java
License:Apache License
public void respond(IRequestCycle requestCycle) { try {/*from w w w .ja v a 2 s . c o m*/ workbook = new HSSFWorkbook(); int index = 0; for (Component tableComponent : tableComponents) { TableParser parser = new TableParser(newSheet(workbook, tableComponent, index++), cellExporter); if (tableComponent instanceof IPageable) { IPageable pageable = (IPageable) tableComponent; for (int i = 0; i < pageable.getPageCount(); i++) { pageable.setCurrentPage(i); parser.parse(tableComponent); } } else { parser.parse(tableComponent); } } XlsStream xlsStream = new XlsStream(workbook); ResourceStreamResource resource = new ResourceStreamResource(xlsStream); resource.setFileName(filename); resource.setContentDisposition(ContentDisposition.ATTACHMENT); IResource.Attributes a = new IResource.Attributes(requestCycle.getRequest(), requestCycle.getResponse()); resource.respond(a); } catch (Exception e) { throw new RuntimeException("Error while generating a xls file to table component", e); } }