Учебное пособие по Java Web Start (Jnlp)

Учебное пособие по Java Web Start (Jnlp)

Вот краткое объяснение Java Web Start от SUN

«Java Web Start - это механизм доставки программ через стандартный веб-сервер. Обычно инициируемые через браузер, эти программы развертываются на клиенте и выполняются за пределами браузера. После развертывания программы не нужно загружать повторно, и они могут автоматически загружать обновления при запуске, не требуя от пользователя повторного выполнения всего процесса установки ».

В этом руководстве показано, как создать файл Java Web Start (Jnlp) для загрузки пользователем. Когда пользователь щелкает загруженный файл jnlp, запускает простую программу AWT. Вот краткие инструкции:

  1. Создайте простую программу AWT и запишите ее как TestJnlp.jar

  2. Добавить хранилище ключей в TestJnlp.jar

  3. Создайте файл Jnlp

  4. Поместите все в папку Tomcat

  5. Доступ к TestJnlp.jar из Интернета черезhttp://localhost:8080/Test.Jnlp

Хорошо, давайте начнем

1. Установите JDk и Tomcat

Установите Java JDK / JRE версии выше 1.5 и Tomcat.

2. Структура каталогов

Структура каталогов этого примера.

image

3. AWT + Jnlp

Посмотрите содержимоеTestJnlp.java, это простая программа AWT с поддержкой AWT.

package com.example;

import java.awt.*;
import javax.swing.*;
import java.net.*;
import javax.jnlp.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class TestJnlp {
  static BasicService basicService = null;
  public static void main(String args[]) {
    JFrame frame = new JFrame("Mkyong Jnlp UnOfficial Guide");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    JLabel label = new JLabel();
    Container content = frame.getContentPane();
    content.add(label, BorderLayout.CENTER);
    String message = "Jnln Hello Word";

    label.setText(message);

    try {
      basicService = (BasicService)
        ServiceManager.lookup("javax.jnlp.BasicService");
    } catch (UnavailableServiceException e) {
      System.err.println("Lookup failed: " + e);
    }

    JButton button = new JButton("/");

    ActionListener listener = new ActionListener() {
      public void actionPerformed(ActionEvent actionEvent) {
        try {
          URL url = new URL(actionEvent.getActionCommand());
          basicService.showDocument(url);
        } catch (MalformedURLException ignored) {
        }
      }
    };

    button.addActionListener(listener);

    content.add(button, BorderLayout.SOUTH);
    frame.pack();
    frame.show();
  }
}

P.S If “import javax.jnlp.;” is not found, please include jnlp library which located at *JRE/lib/javaws.jar.

4. Jar It

Найдите папку классов Java и заполните ее с помощью следующей команды в командной строке

jar -cf TestJnlp.jar *.*

Это упакует все классы Java в новый файл jar с именем «TestJnlp.jar».

5. Создать хранилище ключей

Добавьте новое хранилище ключей с именем «testkeys».

keytool -genkey -keystore testKeys -alias jdc

Он запросит пароль хранилища ключей, имя, фамилию, подразделение организации и т. Д., Просто заполните их все.

6. Назначьте хранилище ключей файлу Jar

Прикрепил новое хранилище ключей «testkeys» к вашему файлу «TestJnlp.jar»

jarsigner -keystore testKeys TestJnlp.jar jdc

Он запросит пароль для вашего вновь созданного хранилища ключей.

7. Разверните JAR it

Скопируйте свой «TestJnlp.jar» в папку веб-сервера Tomcat по умолчанию, например, в Windows -C:\Program Files\Apache\Tomcat 6.0\webapps\ROOT.

8. Создать файл JNLP

Создайте новый файлTest.jnlp, подобный этому



    
        Jnlp Testing
        YONG MOOK KIM
        
        Testing Testing
    
    
        
    
    
        
        
    
    

9. Развернуть файл JNLP

СкопируйтеTest.jnlp также в папку веб-сервера по умолчанию для tomcat.

C:\Program Files\Apache\Tomcat 6.0\webapps\ROOT

10. Запустить Tomcat

C:\Tomcat folder\bin\tomcat6.exe

image

11. Попробуй это

Получите доступ к URLhttp://localhost:8080/Test.jnlp, он предложит вам загрузить файлTest.jnlp, просто примите его и дважды щелкните по нему.

Если все прошло нормально, вы должны увидеть следующий результат

image

Нажмите кнопку «запустить», чтобы запустить программу AWT.

image

Note
Если jnlp не отвечает, помещает следующие коды в ваш web.xml, который находится в папке Tomcat conf.

  
    jnlp
    application/x-java-jnlp-file