在flex中调用Java方法HttpServletResponse 4

问题描述:

我有一个服务类,它使用dynamicjasper在xls中创建报告,我想知道如何在Flex应用程序中包含一个按钮来执行此方法。在flex中调用Java方法HttpServletResponse 4

@Service("downloadService") 
@Transactional 
public class DownServiceRelTemp { 

    private static Logger logger = Logger.getLogger("service"); 

    @Resource(name="sessionFactory") 
    private SessionFactory sessionFactory; 

    public void downloadXLS(HttpServletResponse response) throws ColumnBuilderException, 
     ClassNotFoundException, JRException { 

     logger.debug("Downloading Excel report"); 

     DynamicReport dr = LayouteRelTemp.buildReportLayout(); 
     JRDataSource ds = getDataSource(); 
     JasperReport jr = DynamicJasperHelper.generateJasperReport(dr, new ClassicLayoutManager(), null); 
     JasperPrint jp = JasperFillManager.fillReport(jr, null, ds); 
     ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
     Exporter.exportToXLS(jp, baos); 
     String fileName = "MyReport.xls"; 
     response.setHeader("Content-Disposition", "inline; filename=" + fileName); 
     response.setContentType("application/vnd.ms-excel"); 
     response.setContentLength(baos.size()); 
     Writer.write(response, baos); 
    } 

任何建议,没有太多的Adobe Flex经验,并希望有一个简单的帮助。

有与Java

  1. 使用Web服务
  2. 使用servlet
  3. 通过远程处理对象的一些方法来交互弯曲。由AMF thecnology。

我推荐这位传道士James Ward的tutorial,在本教程中,他解释了将flex和java与代码示例连接的不同方法。这就是我如何学会comunicate Flex和Java

注意到你需要检查blazeDs图书馆

+0

感谢乔治。我会看看这个教程。 James Ward是Flex领域的杰出专家。 –