有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法读取InputStream

下面几行是servlet的一部分,它给了我一个错误“java.lang.NullPointerException”

 ServletContext context = getServletContext();
       InputStream kapil= context.getResourceAsStream("Desktop/images.jpg");
//the above line generates the exception
    BufferedImage bufferedImage = ImageIO.read(kapil);

共 (1) 个答案

  1. # 1 楼答案

    你编辑了你的文章。你确定它是NullPointerException而不是IllegalArgumentException

    JavaDocs:

    ServletContext.getResourceAsStream()如果找不到您要查找的文件,它将返回null

    当参数为null时ImageIO.read()抛出一个IllegalArgumentExeception。提到的input可能是ImageIO输入参数

    我猜确实找不到输入文件

    这将符合你原来的问题。请尝试以下操作:

    ServletContext context = getServletContext();
    InputStream kapil= context.getResourceAsStream("Desktop/images.jpg");
    if (kapil != null){
        //the above line generates the exception
        BufferedImage bufferedImage = ImageIO.read(kapil);
    } else {
       // Use a logging framework if you have it.
       System.out.println("The input stream is null!");
    }