使用Web Start / JNLP动态加载其他jar文件

时间:2009-03-18 06:26:03

标签: java osgi java-web-start

Web Start Developers Guide

  

必须从指定的JAR文件中检索所有应用程序资源     在JNLP文件的resources部分中,或显式检索     使用HTTP请求到Web服务器。

     

建议在JAR文件中存储资源,因为它们将被缓存     在Java Web Start的本地机器上。

现在,我有一些资源,我想在我的应用程序启动后动态加载(例如OSGi包)。我可以使用普通的HTTP做到这一点,但我想利用Web Start对本地缓存和版本化/体系结构特定资源的支持。

有没有办法使用Web Start基础架构从原始代码库(在应用程序的jnlp文件中指定)下载其他jar文件?

或者可选:是否已经建立了集成OSGi和Web Start的方法,这将减轻我从Web Start服务器安装捆绑包的任务?

2 个答案:

答案 0 :(得分:4)

如果您将自己的应用程序本身设置为基于Equinox的OSGI应用程序,则可以使用所需的所有附加软件包进行Web启动。

本文“WebStarting Equinox OSGi Apps”可以为您提供所需设置的详细介绍。

  
      
  • 所有捆绑包都必须部署为签名的JAR文件
  •   
  • 您需要一个包含所有必要包的功能
  •   
  • 导出功能时,请确保PDE为此功能创建JNLP(Java网络启动协议)文件(导出向导中的复选框)
  •   
  • 为您的应用程序提供根JNLP文件
  •   
  • 将您的应用程序部署到Web服务器并确保Web服务器知道application / x-java-jnlp-file mime type
  •   

他还有OSGI demo

答案 1 :(得分:1)

我没有尝试过,但请查看javax.jnlp.DownloadService API