我用iReport制作报表,在浏览器中浏览时总是提示下载文件,下载后用adobe打开正常,但是为什么浏览器没有和adobe嵌套呢?
我该怎么办;
源代码如下:应该没有问题
<%@ page contentType="application/pdf; charset=gb2312" %>
<%@ page language="java" pageEncoding="GB2312" %>
<%@ page import="net.sf.jasperreports.engine.*"%>
<%@ page import="net.sf.jasperreports.engine.util.*" %>
<%@ page import="net.sf.jasperreports.engine.export.*" %>
<%@ page import="java.util.*"%>
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*"%>
<%
//报表编译之后生成的.jasper 文件的存放位置
File reportFile = new File(application.getRealPath("/testReport/report/myfirstreport.jasper"));
//这个是用来联接我的SQL Server 的JDBC URL
String url ="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=db_jgbz";
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
//传递报表中用到的参数值
Map parameters = new HashMap();
//"Name"是报表中定义过的一个参数名称,其类型为String 型
//parameters.put("Name", new String("weiyuanName"));
parameters.put("SQL", new String("select top 1 * from local"));
System.out.println("---------conn-------------");
//连接到数据库
Connection conn = DriverManager.getConnection(url,"log_jgbz", "zbb");
System.out.println("---------Jasper begin-------------");
//在控制台显示一下报表文件的物理路径
System.out.println(reportFile.getPath());
byte[] bytes=JasperRunManager.runReportToPdf(reportFile.getPath(),parameters,conn);
System.out.println("---------Jasper end-------------");
//response.setContentType("text/html");
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
%>