Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Birt 3.7.2集成报告html部署_Java_Jakarta Ee_Web Applications_Birt - Fatal编程技术网

Java Birt 3.7.2集成报告html部署

Java Birt 3.7.2集成报告html部署,java,jakarta-ee,web-applications,birt,Java,Jakarta Ee,Web Applications,Birt,我将BIRT 3.7.2报告引擎与我的web应用程序集成。现在的问题是,如果我在特定位置使用呈现格式HTML,它会创建一个HTML页面 我不想保存报告html页面,而是想让它直接在我的web应用程序中显示html保存在temp中,并在使用后删除。此外,它还创建一个图像目录&每次报告中嵌入图像和/或图形时,都会将图像和/或图形保存在图像目录中,以增加不必要的空间 谁能帮帮我吗 我已遵循了中提供的步骤: 我没有深入研究Birt库,也没有像链接中显示的那样使用它们的API创建任何类,因此这可能不是最有

我将BIRT 3.7.2报告引擎与我的web应用程序集成。现在的问题是,如果我在特定位置使用呈现格式HTML,它会创建一个HTML页面

我不想保存报告html页面,而是想让它直接在我的web应用程序中显示html保存在temp中,并在使用后删除。此外,它还创建一个图像目录&每次报告中嵌入图像和/或图形时,都会将图像和/或图形保存在图像目录中,以增加不必要的空间

谁能帮帮我吗

我已遵循了中提供的步骤:

我没有深入研究Birt库,也没有像链接中显示的那样使用它们的API创建任何类,因此这可能不是最有效的解决方案

这是几个月前的事了,我现在无法访问源代码,但基本上我只是将BirtRuntime作为servlet添加到我的webapp中

这允许我加载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页面??任何源代码或任何代码都将是一个很大的帮助..谢谢你的回答,我会研究它