2015-06-25 64 views
0

我的場景是我需要打開瀏覽器,登錄網站,生成並下載每天的PDF jasperreport-built報告。我可以在本地計算機中創建客戶端腳本,以便在後臺自動執行所有這些操作,以便在啓動計算機時自動爲我彈出報告。我怎樣才能做到這一點?任何專家的意見非常感謝。如何在啓動計算機時自動從網站下載jasper報告

回答

0

1st。創建一個Java Servlet。 就像下面一樣。

public class JasperExampleServlet extends HttpServlet { 
@Override 
protected void doGet(HttpServletRequest request, HttpServletResponse response) 
        throws ServletException, IOException { 

     try { 
      JasperReport report = (JasperReport)JRLoader.loadObject("Your Jasper Path"); 
      Map parameters = new HashMap(); 
      parameters.put("foo", someParam1); 
      parameters.put("bar", someParam2); 

      Connection con = DriverManager.getConnection("Your DB Info"); 
      JasperPrint print = JasperFillManager.fillReport(report,parameters,con); 

      // Output PDF to HTTP Response 
      response.setContentType("application/pdf"); 
      JasperExportManager.exportReportToPdfStream(print, response.getOutputStream()); 
     } catch (Exception e){ 
      e.printStackTrace(); 
     } 
    } 
} 

的web.xml

<servlet> 
    <servlet-name>jasperexample</servlet-name> 
    <servlet-class>your.package.JasperExampleServlet</servlet-class> 
</servlet> 
<servlet-mapping> 
    <servlet-name>jasperexample</servlet-name> 
    <url-pattern>/jasperexample</url-pattern> 
</servlet-mapping> 

第二。測試你的servlet。
在瀏覽器中輸入網址。
http://yourserver:port/context/jasperexample

3rd。創建一個批處理文件以使用URL打開瀏覽器。
start http://yourserver:port/context/jasperexample

4th。在啓動時運行該批處理文件。

+0

哇!非常感謝。我會先嚐試一下。無論如何,我如何繞過網站的登錄驗證? –

+0

登錄是否也自動完成?不知道,但也許有一些解決方案.. –

+0

我可以重用現有的Java程序來生成報告,而無需創建新的Java Servlet嗎? –