2013-01-31 35 views
0

我製作的小程序從URL加載圖像。當我使用AppletViewer在Eclipse內運行這個applet時,它顯示圖像。但是,當我在Tomcat 7中將其部署到瀏覽器中後運行小程序時,圖像不顯示,只顯示小程序的灰色背景,並且沒有將錯誤輸出到控制檯。小應用程序不顯示來自Tomcat中的URL的圖像

我自己也嘗試在瓶子包裝的圖像,並從那裏加載它,但我得到了同樣的問題(在Eclipse中,但不是在Tomcat的工作)。

是Tomcat的問題還是別的?

下面是完整的代碼:

import java.awt.Image; 
import java.net.URL; 
import javax.imageio.ImageIO; 
import javax.swing.ImageIcon; 
import javax.swing.JApplet; 
import javax.swing.JFrame; 
import javax.swing.JLabel; 

public class LoadImage extends JApplet 
{ 
Image image; 

public LoadImage() 
{ 
    try { 
     URL url = new URL("http://upload.wikimedia.org/wikipedia/commons/thumb/2/2d/Morus_bassanus_adu.jpg/50px-Morus_bassanus_adu.jpg"); 
     image = ImageIO.read(url); 

     setSize(300, 300); 
     JLabel label = new JLabel(new ImageIcon(image)); 
     add(label); 
     setVisible(true); 
    } 
    catch (Exception e) { 
     System.out.println(e.toString()); 
    } 
} 
} 
+0

如果你做'新的ImageIcon(URL)和'沒有的ImageIO? (我知道你想要調整大小。) –

+0

你允許圖像顯示嗎? –

+0

Joop Eggen:這也導致它在Eclipse中也不會顯示任何東西。 Roman C:你的意思是在Tomcat嗎?我該怎麼做呢? – user13316

回答

1

嘗試

URL url = new URL("http://upload.wikimedia.org/wikipedia/commons/thumb/2/2d/Morus_bassanus_adu.jpg/50px-Morus_bassanus_adu.jpg"); 

       BufferedImage image = ImageIO.read(url);   

       JLabel label = new JLabel(new ImageIcon(image)); 
       label.setMinimumSize(new Dimension(200,200)); 
       this.add(label); 
+0

這工作,謝謝!你能解釋爲什麼BufferedImage的作品,而不是一個正常的圖像?是否因爲BufferedImage在互聯網上工作而Image不是? – user13316

相關問題