2013-09-04 3 views
0

В обычных апплетов, я использую это для загрузки изображений в JLabelsЗагрузка изображений в Java Web Start апплет

Image back2 = getImage(getDocumentBase(), "images/blank_blue.png"); 
    ImageIcon background2Icon = new ImageIcon(back2); 
    JLabel pic2 = new JLabel(background2Icon); 

Когда я попытался сделать это с помощью апплета Java Web Start, не появилось ничего. В консоли Java это указано basic: Loaded image: file:/C:/Users/jdfksl/Desktop/webStartTest/images/blank_blue.png И не было никакой ошибки, но она не появилась.

я получил изображения для загрузки компоненты JLabel, которые работают в Java Web Start таким образом

BufferedImage image=null; 
     ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); 
     try { 
      image = ImageIO.read(classLoader.getResourceAsStream("images/ghast_skin.png")); 
     } catch (IOException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 

Но я хотел более короткий способ загрузки изображений. Есть ли другой вариант?

Это мое содержание файла JNLP

 <?xml version="1.0" encoding="UTF-8"?> 
<jnlp href="jws_tester.jnlp"> 
    <information> 
     <title>JWS tester</title> 
     <vendor>HTZ.</vendor> 
     <description>Testing with JWS</description> 
     <offline-allowed /> 
    </information> 
    <resources> 
     <j2se version="1.4+" 
      href="http://java.sun.com/products/autodl/j2se" /> 
     <jar href="tester.jar" main="true" /> 
     <!-- Specify if using JNLP extensions 
           <extension name="SomeExtension" 
        href="http://some.server.com/some_extension.jnlp" /> 
           --> 
    </resources> 

    <security> 
    <all-permissions/> 
</security> 

    <applet-desc 
     name="JWS tester" 
     main-class="mather.Main" 
     width="900" 
     height="600"> 
    </applet-desc> 
</jnlp> 
+0

Каково содержание JNLP? Был ли он подтвержден с использованием [JaNeLA] (http://pscode.org/janela/)? –

+0

@AndrewThompson Я побежал JaNeLA, и он говорит желтым «Содержимое типа контента/неизвестно не соответствует ожидаемому типу приложения/x-java-jnlp-file» и красным цветом «Соответствие целевой команды обработки» [xX] [mM] [ lL] "не разрешено". Я не знаю, что это значит – rasen58

+0

@AndrewThompson На самом деле, из справки JaNeLA, это говорит о том, что «для файлов JNLP, проверенных из локальной файловой системы, неправильный тип», поэтому «тип содержимого неизвестен» должен быть fine – rasen58

ответ

-1

Попробуйте это:

Image image = new ImageIcon("path").getImage(); 

Edit: это path может быть либо полный путь вас образ, или относительный путь к папке проекта. IE, если ваш путь изображение:

C:\Users\User\Documents\NetBeansProjects\YourProject\src\resource\image.png 

Вы можете получить доступ к этому

src\resource\image.png 
+1

Апплет не может получить доступ к ресурсу на сервере как «Файл», а также не может получить доступ к встроенному ресурсу. Это совершенно неуместная стратегия для загрузки изображения в этом прецеденте. –

0

Одним способом является добавление изображений в путь сборки и доступ к изображению любого класса, как это.

new ImageIcon(TestClass.class.getResource("/image.png")); 

При таком подходе изображение будет добавлено в ваш файл jar, чтобы ваш файл jar мог стать более громоздким.

Смежные вопросы