Hello, Thank you for the suggestion but I cannot set the java.awt.headless = true since I am using jdk 1.3. However I was able to find a solution for my problem. I just need to put my Image in a BufferedImage and use the Graphics2D to draw the Image. In order to use jasper reports in the Unix environment, we used PJA toolkit and just set the server properties as per PJA documentation. Below is the code I used to generate the Image. public static Image getLogo() { URL imageURL = Thread.currentThread().getContextClassLoader().getResource("images/WMS_K_2.jpg"); ImageIcon icon = new ImageIcon(imageURL); BufferedImage logo = new BufferedImage(icon.getIconWidth(),icon.getIconHeight(),BufferedImage.TYPE_INT_RGB); Graphics2D graphics = logo.createGraphics(); graphics.drawImage(icon.getImage(),0,0,icon.getImageObserver()); return logo; }