Java Web Start(Jnlp)教程

这是关于SUN的Java Web Start的简要说明

“ Java Web Start是一种通过标准Web服务器交付程序的机制。 通常将这些程序通过浏览器启动,然后将它们部署到客户端并在浏览器范围之外执行。 程序一旦部署,就无需再次下载,它们可以在启动时自动下载更新,而无需用户再次经历整个安装过程。”

本教程向您展示如何创建Java Web Start(Jnlp)文件供用户下载,当用户单击下载的jnlp文件时,启动一个简单的AWT程序。 这是摘要步骤:

  1. 创建一个简单的AWT程序并将其命名为TestJnlp.jar
  2. 将密钥库添加到TestJnlp.jar
  3. 创建一个Jnlp文件
  4. 全部放入Tomcat文件夹
  5. 通过http:// localhost:8080 / Test.Jnlp从Web访问TestJnlp.jar

好,开始吧

1.安装JDk和Tomcat

安装1.5和Tomcat之上的Java JDK / JRE版本。

2.目录结构

此示例的目录结构。

3. AWT + Jnlp

请参阅TestJnlp.java的内容,它只是一个支持AWT的简单AWT程序。

package com.mkyong;

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("http://www.mkyong.com");

    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();
  }
}

PS如果为“ import javax.jnlp。*;” 找不到,请包括位于JRE / lib / javaws.jar的 jnlp库。

4.罐子

在命令提示符下找到Java的classes文件夹并使用以下命令将其保存

jar -cf TestJnlp.jar *.*

这会将所有Java类打包到一个名为“ TestJnlp.jar ”的新jar文件中。

5.创建密钥库

添加一个名为“ testkeys”的新密钥库

keytool -genkey -keystore testKeys -alias jdc

它将要求输入密钥库密码,名字,姓氏,组织单位等。只需填写所有内容。

6.将密钥库分配给Jar文件

将新的密钥库“ testkeys ”附加到您的“ TestJnlp.jar ”文件中

jarsigner -keystore testKeys TestJnlp.jar jdc

它将询问您新创建的密钥库的密码

7.部署JAR

将您的“ TestJnlp.jar ”复制到Tomcat的默认Web服务器文件夹,例如,在Windows中-C:\ Program Files \ Apache \ Tomcat 6.0 \ webapps \ ROOT

8.创建JNLP文件

像这样创建一个新的Test.jnlp文件

<?xml version="1.0" encoding="utf-8"?> 
<jnlp spec="1.0+" codebase="http://localhost:8080/" href="Test.jnlp">
	<information>
		<title>Jnlp Testing</title>
		<vendor>YONG MOOK KIM</vendor>
		<homepage href="http://localhost:8080/" />
		<description>Testing Testing</description>
	</information>
	<security>
		<all-permissions/>
	</security>
	<resources>
		<j2se version="1.6+" />
		<jar href="TestJnlp.jar" />
	</resources>
	<application-desc main-class="com.mkyong.TestJnlp" />
</jnlp>

9.部署JNLP文件

也将Test.jnlp复制到您的tomcat默认Web服务器文件夹中。

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

10.启动Tomcat

C:\Tomcat folder\bin\tomcat6.exe

11.测试

访问URL http:// localhost:8080 / Test.jnlp ,它将提示您下载Test.jnlp文件,只需接受并双击它即可。

如果一切顺利,您应该看到以下输出

单击“运行”按钮以启动AWT程序。

注意
如果jnlp没有响应,则将以下代码放入位于Tomcat conf文件夹中的web.xml中。

<mime-mapping>
    <extension>jnlp</extension>
    <mime-type>application/x-java-jnlp-file</mime-type>
  </mime-mapping>

翻译自: https://mkyong.com/java/java-web-start-jnlp-tutorial-unofficial-guide/

参与评论 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值