2009-03-18 4 views
6

Les Web Start Developers Guide étatsDynamiquement charger des fichiers jar supplémentaires en utilisant Web Start/JNLP

Toutes les ressources d'application doivent être récupérées à partir des fichiers JAR spécifiés dans la section des ressources du fichier JNLP ou récupéré explicitement en utilisant un HTTP demande au serveur Web.

Il est recommandé de stocker les ressources dans les fichiers JAR, car celles-ci seront mises en cache sur la machine locale par Java Web Start ( ).

Maintenant, j'ai quelques ressources que je veux charger dynamiquement après le démarrage de mon application (par exemple les bundles OSGi). Je peux le faire en utilisant le protocole HTTP, mais je voudrais utiliser le support de Web Start pour la mise en cache locale et les ressources spécifiques à l'architecture ou à la version.

Existe-t-il un moyen de télécharger des fichiers jar supplémentaires à partir de la base de code d'origine (comme indiqué dans le fichier jnlp de l'application) à l'aide de l'infrastructure Web Start?

Ou bien: existe-t-il déjà une manière établie d'intégrer OSGi et Web Start, qui me déchargerait de la tâche d'installer des bundles à partir du serveur Web Start?

Répondre

4

Si vous faites de votre application en elle-même une application OSGI basée sur Equinox, vous pouvez la démarrer sur le Web avec tous les bundles supplémentaires dont vous avez besoin.

Cet article "WebStarting Equinox OSGi Apps" peut vous donner une bonne introduction sur les paramètres requis.

  • Tous les faisceaux doivent être déployés sous forme de fichiers JAR signés
  • Vous avez besoin d'une fonctionnalité qui contient tous les faisceaux nécessaires
  • Lors de l'exportation de la fonction, assurez-vous que la PDE crée un JNLP (Java réseau Lancement Protocole) fichier (une case à cocher dans l'assistant d'exportation) pour cette fonction
  • fournir un fichier JNLP racine pour votre application
  • déployer votre application sur un serveur Web et assurez-vous que le serveur Web est au courant de l'application/x- java-jnlp type mime -file

Il a également un OSGI demo.

+0

Aha! L'article utilise une balise "extension" dans le fichier JNLP, quelque chose qui n'était pas mentionné dans le Guide du développeur. Je verrai si je peux faire ce travail aussi. Merci. – Thilo

+0

J'ai trouvé deux points que cette méthode ne me plaît pas: les paquets doivent être connus au démarrage, et Web Start les ajoute au chemin d'accès aux classes boot, d'où WebStartMain d'Eclipse semble les extraire et les redémarrer en bundles. Toujours content de voir qu'Eclipse a déjà ce support intégré. – Thilo

+0

La balise d'extension a été introduite avec la mise à jour Java 6 de Java Web Start. Il y avait beaucoup de nouvelles fonctionnalités intéressantes. –

Questions connexes