Учебное пособие по Java Web Start (Jnlp)
Вот краткое объяснение Java Web Start от SUN
«Java Web Start - это механизм доставки программ через стандартный веб-сервер. Обычно инициируемые через браузер, эти программы развертываются на клиенте и выполняются за пределами браузера. После развертывания программы не нужно загружать повторно, и они могут автоматически загружать обновления при запуске, не требуя от пользователя повторного выполнения всего процесса установки ».
В этом руководстве показано, как создать файл Java Web Start (Jnlp) для загрузки пользователем. Когда пользователь щелкает загруженный файл jnlp, запускает простую программу AWT. Вот краткие инструкции:
-
Создайте простую программу AWT и запишите ее как TestJnlp.jar
-
Добавить хранилище ключей в TestJnlp.jar
-
Создайте файл Jnlp
-
Поместите все в папку Tomcat
-
Доступ к TestJnlp.jar из Интернета черезhttp://localhost:8080/Test.Jnlp
Хорошо, давайте начнем
1. Установите JDk и Tomcat
Установите Java JDK / JRE версии выше 1.5 и Tomcat.
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
11. Попробуй это
Получите доступ к URLhttp://localhost:8080/Test.jnlp, он предложит вам загрузить файлTest.jnlp, просто примите его и дважды щелкните по нему.
Если все прошло нормально, вы должны увидеть следующий результат
Нажмите кнопку «запустить», чтобы запустить программу AWT.
Note
Если jnlp не отвечает, помещает следующие коды в ваш web.xml, который находится в папке Tomcat conf.
jnlp application/x-java-jnlp-file



