I am trying to display an image in a JApplet. I am trying to load an image, then draw it. However, I keep getting the following error when I try to initialize my BufferedImage red:
java.lang.IllegalArgumentException: input == null!
at javax.imageio.ImageIO.read(ImageIO.java:1362)
at Pathfinder.init(Pathfinder.java:15)
at sun.applet.AppletPanel.run(AppletPanel.java:425)
at java.lang.Thread.run(Thread.java:662)
It was originally in a resources folder, but I was getting the same error. I tried it in a SwingUtilities.invokeAndWait(new Runnable() { ...
, but it still did not work. Any ideas what is wrong? My program is as follows:
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import javax.imageio.ImageIO;
@SuppressWarnings("serial")
public class Pathfinder extends Applet {
private BufferedImage red;
@Override
public void init() {
try {
red = ImageIO.read(this.getClass().getResource("red.png"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public void paint(Graphics g) {
g.drawImage(red, 0, 0, null);
}
}
red.png exists in the uppermost level of my project.