0
저는 struts2 앱을 개발 중이며 브라우저에 생성 된 보고서를 표시하려고합니다. 나는 성공적으로 disk.but에 내 보고서를 생성했습니다.하지만 브라우저에서 보려고합니다. 여기에 몇 가지 코드가 있습니다.브라우저에서 jaspereports를 통해 생성 된 보고서를 표시합니다.
내 index.jsp를
<body>
<a href="HTML.action">Reporting</a>
</body>
내 액션 DataBeanList는 스트리밍보고 모든 수출의
public class DataBeanList extends ActionSupport {
public ArrayList<DataBean> getDataBeanList() {
ArrayList<DataBean> dataBeanList = new ArrayList<DataBean>();
dataBeanList.add(produce("Manisha", "India"));
dataBeanList.add(produce("Dennis Ritchie", "USA"));
dataBeanList.add(produce("V.Anand", "India"));
dataBeanList.add(produce("Shrinath", "California"));
dataBeanList.add(produce("issam", "casa"));
return dataBeanList;
}
/**
* This method returns a DataBean object,
* with name and country set in it.
*/
private DataBean produce(String name, String country) {
DataBean dataBean = new DataBean();
dataBean.setName(name);
dataBean.setCountry(country);
return dataBean;
}
public void exporte(){
String sourceFileName = "D://Test/workspace/ztest/WebContent/reports/jasper_report_template.jasper";
// + "test/jasper_report_template.jasper";
//D:\Test\workspace\ztest\WebContent\reports
String printFileName = null;
DataBeanList DataBeanList = new DataBeanList();
ArrayList dataList = DataBeanList.getDataBeanList();
JRBeanCollectionDataSource beanColDataSource =
new JRBeanCollectionDataSource(dataList);
Map parameters = new HashMap();
try {
printFileName = JasperFillManager.fillReportToFile(sourceFileName,
parameters, beanColDataSource);
if (printFileName != null) {
/**
* 1- export to PDF
*/
JasperExportManager.exportReportToPdfFile(printFileName,
"D://sample_report.pdf");
}
} catch (JRException e) {
e.printStackTrace();
}
}
}
보고서를 내보내고 Struts2'stream' 결과를 사용하십시오. –
@ AleksandrM, 답장을 보내 주셔서 감사합니다.하지만 귀하의 접근 방식을 이해하지 못했습니다. 링크가 있습니다. 내게 설명 할 수 있습니까? – djoStack
정확히 무엇입니까? http://struts.apache.org/development/2.x/docs/stream-result.html을 참조하십시오. –