Advertisement
Guest User

Untitled

a guest
Feb 18th, 2016
163
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.57 KB | None | 0 0
  1. package com.mycompany.reports;
  2.  
  3. import com.mycompany.sample6.CityVO;
  4. import com.mycompany.sample6.Mapping;
  5. import java.io.File;
  6. import java.io.IOException;
  7. import java.io.PrintWriter;
  8. import java.io.StringWriter;
  9. import java.util.ArrayList;
  10. import java.util.HashMap;
  11. import java.util.List;
  12. import javax.servlet.ServletException;
  13. import javax.servlet.ServletOutputStream;
  14. import javax.servlet.annotation.WebServlet;
  15. import javax.servlet.http.HttpServlet;
  16. import javax.servlet.http.HttpServletRequest;
  17. import javax.servlet.http.HttpServletResponse;
  18. import javax.servlet.http.HttpSession;
  19. import net.sf.jasperreports.engine.JRExporterParameter;
  20. import net.sf.jasperreports.engine.JasperFillManager;
  21. import net.sf.jasperreports.engine.JasperPrint;
  22. import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
  23. import net.sf.jasperreports.engine.export.JRPdfExporter;
  24. import net.sf.jasperreports.engine.type.OrientationEnum;
  25.  
  26. @WebServlet(name = "GetReport", urlPatterns = {"/GetReport"})
  27. public class GetReport extends HttpServlet {
  28.  
  29. protected void processRequest(HttpServletRequest request, HttpServletResponse response)
  30. throws ServletException, IOException {
  31. response.setContentType("application/pdf");
  32. ServletOutputStream servletOutputStream = response.getOutputStream();
  33. HttpSession session = request.getSession(false);
  34. File reportFile = null;
  35. HashMap<String, Object> parameterMap = new HashMap<String, Object>();
  36. reportFile= new File("D:/zia/report1.jasper");
  37. try {
  38. List<CityVO> cityList=(List<CityVO>)session.getAttribute("cityListReport");
  39. JRBeanCollectionDataSource dataSource = new JRBeanCollectionDataSource(cityList);
  40. JasperPrint jasperPrint = JasperFillManager.fillReport(reportFile.getPath(),parameterMap,dataSource);
  41. jasperPrint.setOrientation(OrientationEnum.PORTRAIT);
  42. final JRPdfExporter pdfExporter = new JRPdfExporter();
  43. pdfExporter.setParameter(JRExporterParameter.CHARACTER_ENCODING, "UTF-8");
  44. pdfExporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
  45. pdfExporter.setParameter(JRExporterParameter.OUTPUT_STREAM, servletOutputStream);
  46. pdfExporter.exportReport();
  47. } catch (Exception e) {
  48. StringWriter stringWriter = new StringWriter();
  49. PrintWriter printWriter = new PrintWriter(stringWriter);
  50. e.printStackTrace(printWriter);
  51. response.setContentType("text/plain");
  52. response.getOutputStream().print(stringWriter.toString());
  53. }finally{
  54. servletOutputStream.flush();
  55. servletOutputStream.close();
  56. }
  57. }
  58.  
  59. @Override
  60. protected void doGet(HttpServletRequest request, HttpServletResponse response)
  61. throws ServletException, IOException {
  62. processRequest(request, response);
  63. }
  64.  
  65. @Override
  66. protected void doPost(HttpServletRequest request, HttpServletResponse response)
  67. throws ServletException, IOException {
  68. processRequest(request, response);
  69. }
  70.  
  71. @Override
  72. public String getServletInfo() {
  73. return "Short description";
  74. }// </editor-fold>
  75.  
  76. }
  77.  
  78. public String getCityList() {
  79. try {
  80. Class.forName("oracle.jdbc.driver.OracleDriver");
  81. conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe", "mtxymn", "ys$mtx_2010#xtm1sys");
  82. pstmt = conn.prepareStatement("Select * from gen_cities");
  83. cityList = new ArrayList<CityVO>();
  84. ResultSet rset = pstmt.executeQuery();
  85. while (rset.next()) {
  86. CityVO city = new CityVO();
  87. city.setCityAdes(rset.getString("CITY_ADES"));
  88. city.setCityEdes(rset.getString("CITY_EDES"));
  89. city.setCityNo(rset.getInt("CITY_NO"));
  90. city.setCitySer(rset.getInt("CITY_SER"));
  91. city.setCntryNo(rset.getString("CNTRY_NO"));
  92. cityList.add(city);
  93. }
  94. if (cityList != null && cityList.size() > 0) {
  95. JSFUtils.storeOnSession("cityListReport", cityList);
  96. } else {
  97. JSFUtils.addFacesErrorMessage(JSFUtils.getStringFromBundle("CANNOT_FIND_DATA"));
  98. }
  99. } catch (SQLException | ClassNotFoundException ex) {
  100. Logger.getLogger(Mapping.class.getName()).log(Level.SEVERE, null, ex);
  101. }
  102. return null;
  103. }
  104.  
  105. <script type="text/javascript">
  106.  
  107. function poponload()
  108. {
  109. var link = window.location.protocol + "//" + window.location.host + "/" + "sample6" + "/" + "sec" + "/" + "GetReport.pdf";
  110.  
  111. testwindow = window.open(link, "mywindow", "location=1,status=1,scrollbars=1,width=800,height=500");
  112. testwindow.moveTo(50, 50);
  113. }
  114. </script>
  115. <p:commandButton id="showReport" value="show Report" actionListener="#{mapping.cityList}" icon="ui-icon-print" iconPos="right" immediate="true" ajax="true" oncomplete="poponload()" />
  116.  
  117. 18-Feb-2016 09:42:47.383 SEVERE [http-nio-9999-exec-22] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [GetReport] in context with path [/sample6] threw exception [Servlet execution threw an exception] with root cause
  118. java.lang.NoSuchMethodError: com.mycompany.sample6.Mapping.getCityList()Ljava/util/ArrayList;
  119.  
  120. 18-Feb-2016 12:19:55.697 SEVERE [http-nio-9999-exec-13] com.sun.faces.context.AjaxExceptionHandlerImpl.handlePartialResponseError javax.el.MethodNotFoundException: Method not found: com.mycompany.sample6.Mapping@162e4f8f.cityList()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement