Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.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
Jsp 如何显示Servlet生成的图像inot<;IMG>;html标签_Jsp_Servlets_Jfreechart - Fatal编程技术网

Jsp 如何显示Servlet生成的图像inot<;IMG>;html标签

Jsp 如何显示Servlet生成的图像inot<;IMG>;html标签,jsp,servlets,jfreechart,Jsp,Servlets,Jfreechart,我试了很多,但都没有成功。我无法将图像从servlet显示到jsp中 我开发了一个servlet,它反过来调用另一个返回BuffereImage的类 在我编写的servlet中: PngEncoder png =new PngEncoder(image,false,0,9); response.getOutputStream().write(png.pngEncode()); response.getOutputStream().close(); IMG src="/We

我试了很多,但都没有成功。我无法将图像从servlet显示到jsp中

我开发了一个servlet,它反过来调用另一个返回BuffereImage的类

在我编写的servlet中

PngEncoder png =new PngEncoder(image,false,0,9);
    response.getOutputStream().write(png.pngEncode());
       response.getOutputStream().close();
IMG src="/WebApplication5/ChartServlet"
我用jsp写了

PngEncoder png =new PngEncoder(image,false,0,9);
    response.getOutputStream().write(png.pngEncode());
       response.getOutputStream().close();
IMG src="/WebApplication5/ChartServlet"
但是当我运行我的web应用程序时,不会显示任何内容。
当我直接通过这个url浏览时 它显示:

HTTP状态500-类型异常报告消息说明服务器遇到内部错误(),导致无法运行 满足这一要求。异常java.lang.NullPointerException注释 异常及其根本原因的完整堆栈跟踪如下: 可在Sun Java System Application Server 9.1日志中找到。太阳爪哇 系统应用服务器9.1


我做错了什么?

检查png对象是否已创建(如果为空)。这可能是你应该得到NullPointerException的唯一原因,它告诉你去哪里找-在logsHey Bozho中谢谢你的快速回复。我正在使用上网本,但不太习惯。所以请告诉我在哪里可以找到日志。我浏览了一个netbeen View->ID log的日志,但没有发现任何有用的东西。嗨,Ravi,我整理了HTTP状态500,谢谢你指出这一点。现在我检查了PNG对象是否正在创建i buffereImage image=providerchart.createBuffereImage(480,360,null);PngEncoder png=新的PngEncoder(图像,假,0,9);System.out.println(“图像:-”+png);嗨,拉维,谢谢你指导我整理HTTP状态500。我按照您的指示检查了PNG对象是否正在创建BuffereImage=providerchart.CreateBuffereImage(480,360,null);PngEncoder png=新的PngEncoder(图像,假,0,9);System.out.println(“图像:-”+png);在输出中,我得到了这个:-Image:-com.keypoint。PngEncoder@713caa意味着它不是空的。但我得到的仍然是没有图表图像的空白页。请告诉我需要在哪里查看。在将图像写入outputstream之前,请将内容类型设置为response.setContentType(“image/png”);response.setContentType(“image/png”);commoditychart o_providerchart=新commoditychart();JFreeChart providerchart=o_providerchart.produceAllCharts(“1”、“2012-01-09”、“C:/Documents and Settings/irfanr/Desktop/WebApplication5/web/images/”);BuffereImage=providerchart.createBuffereImage(480,360,空);PngEncoder png=新的PngEncoder(图像,假,0,9);System.out.println(“图像:-”+png);response.getOutputStream().write(png.pngEncode());这就是我在servletI中写的,我认为您必须使用PngEncoderB而不是PngEncoder。看看这个-。要转换BuffereImage,必须使用PngEncoderB。