我没有深入到比尔特库这样做,并使用他们的API就像它显示在您的链接没有创建任何类,所以这可能不是成为最有效的解决方案。
这是几个月前,我现在无法访问源代码,但基本上我只是将BirtRuntime作为servlet小程序添加到我的webapp中,如covered here。
这使我可以加载Birt报告,但我也需要将它们嵌入到现有的网页中。我已经在这个应用程序中拥有一个简单的代理servlet,它只会读取url的html内容。所以我只是使用我的BIRT报告的URL调用这个servlet,并且将输出放在我想要的网页上。
代理servlet是这样的:
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.io.IOUtils;
public class ProxyServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException {
String urlString = request.getParameter("url");
try {
URL url = new URL(urlString);
url.openConnection();
InputStream in = url.openStream();
ServletOutputStream out = response.getOutputStream();
IOUtils.copy(in, out);
}
catch (MalformedURLException e) {
throw new ServletException(e);
}
catch (IOException e) {
throw new ServletException(e);
}
}
}
我的问题是:如何嵌入BIRT报表到任何JSP页面..?任何来源的任何代码将是一个很大的帮助.. – wizavi