close

Démarrage Web Java

Aller à la navigation Aller à la recherche

En informatique, Java Web Start (également connu sous le nom de JavaWS, javaws ou JAWS) était un framework développé par Sun Microsystems (maintenant Oracle ), qui permettait aux utilisateurs de télécharger et de lancer des applications logicielles Java Platform directement depuis Internet à l'aide d'un navigateur Web.

Logiciel Java Web Start :

  1. Il a permis une activation facile en un clic des applications
  2. Il garantissait que la dernière version de l'application était toujours en cours d'exécution
  3. Il a éliminé les procédures d'installation et de mise à niveau compliquées

Java Web Start est considéré comme obsolète depuis mars 2018 et n'est plus inclus dans les nouveaux JRE / JDK à partir de la version 11, et ses utilisateurs sont encouragés à passer à d'autres alternatives de distribution [1] , telles que jlink .

Une implémentation gratuite est toujours maintenue par le projet IcedTea , mais n'est pas considérée comme faisant partie de la distribution Java officielle.

Fonctionnalités

Contrairement aux applets Java , les applications Web Start ne s'exécutent pas dans le navigateur et le bac à sable dans lequel elles s'exécutent n'a pas besoin de beaucoup de limitation, bien que cela puisse être configuré. Web Start présente un avantage sur les applets en ce sens qu'il surmonte de nombreux problèmes de compatibilité entre les navigateurs Java et les différentes versions de machines virtuelles Java ( JVM ). D'autre part, les programmes Web Start ne peuvent pas communiquer facilement avec le navigateur comme ils le font avec les applets. Pour faciliter la migration, les utilisateurs peuvent également appeler une applet Java en tant qu'application Java Web Start.

Mise en œuvre

Java Web Start a fourni un ensemble de classes dans le package javax.jnlp , qui a fourni un ensemble de services pour l'application. Sun a conçu bon nombre de ces services afin de permettre un accès soigneusement contrôlé aux ressources (telles que les fichiers et les notes système), tout en limitant l'application des opérations d'autorisation. Sun a introduit la version 1.0 de Web Start en mars 2001. Avec J2SE 1.4, Web Start est devenu une partie par défaut de l' environnement d'exécution Java (JRE) appelé javaws, et les administrateurs d'ordinateurs n'avaient plus besoin de l'installer séparément.

JavaWS a ensuite été obsolète et supprimé à partir de JRE 11 [1] .

Protocole de lancement de réseau Java (JNLP)

Souvent, les programmeurs, dans le jargon informatique, ont tendance à échanger le terme Java Network Launching Protocol ( JNLP ) avec le terme « Web Start ». En réalité, JNLP est un protocole, défini par un schéma XML, et spécifie comment lancer les applications Java Web Start. JNLP consiste en un ensemble de règles qui définissent exactement comment mettre en œuvre le mécanisme de lancement. Les fichiers JNLP incluent des informations telles que l'emplacement du fichier de package jar et le nom de la classe principale de l'application, ainsi que d'autres paramètres du programme. Un navigateur correctement configuré transmet les fichiers JNLP à un environnement d'exécution Java (JRE), qui à son tour télécharge l'application sur la machine de l'utilisateur et l'exécute. Le développement de JNLP a eu lieu dans le cadre du processus communautaire Java de JSR 56. Il comprend la version originale 1.0, la prochaine version de maintenance 1.5 et depuis 2006 [mise à jour], la version de maintenance attendue 6.0. JNLP est gratuit ; les développeurs n'ont pas à payer de frais pour l'utiliser dans les programmes.

Les fonctionnalités importantes de Web Start incluent la possibilité de télécharger et d'installer automatiquement un JRE si l'utilisateur n'a pas encore installé Java, et pour les programmeurs de spécifier la version du JRE qu'un programme donné doit exécuter. L'utilisateur ne doit pas nécessairement rester connecté à Internet pour exécuter les programmes téléchargés, car l'exécution est garantie par un cache maintenu localement. Les mises à jour de téléchargement de logiciels à partir du Web deviennent disponibles lorsque l'utilisateur dispose d'une connexion Internet, ce qui allège le fardeau de la distribution.

Tout utilisateur d'ordinateur peut utiliser JNLP, simplement en installant un client JNLP (très communément Java Web Start). L'installation peut s'effectuer automatiquement afin que l'utilisateur final, lors de la première exécution de l'application Java, ne voie que le démarrage du client téléchargé et installé.

JNLP fonctionne de la même manière que HTTP / HTML fonctionne pour le Web. Pour afficher une page Web HTML, une fois que l'utilisateur a cliqué sur un lien, le navigateur envoie une URL à un serveur Web, qui renvoie un fichier HTML. Le navigateur demande alors les ressources faisant référence à ce fichier (images, css), et effectue le rendu final de la page une fois qu'il a reçu suffisamment d'informations. Le rendu de la page commence généralement avant que toutes les ressources aient été téléchargées ; certaines ressources non essentielles pour la mise en page (par exemple les images), peuvent être chargées ultérieurement - ou à la demande, si le "Charger automatiquement les images" du navigateur n'est pas défini.

Le JNLP reflète ce processus ; de la même manière qu'un navigateur Web restitue une page Web, un client JNLP « restitue » une application Java. Une fois que l'utilisateur a cliqué sur un lien, le navigateur envoie une URL à un serveur Web, qui renvoie un fichier JNLP (au lieu d'un fichier HTML) pour l'application. Le client JNLP analyse le fichier, visite les ressources spécifiées (fichiers jar), attend que toutes les ressources nécessaires soient récupérées, puis lance l'application. Le fichier JNLP peut marquer certaines ressources comme "paresseuses", il informe le client JNLP que l'application n'a pas besoin de ces ressources pour démarrer, mais qu'elles doivent être récupérées ultérieurement, quand et/ou si l'application les demande.

Compression Pack200

Pour réduire la taille d'une application Java Web Start, Sun Microsystems a introduit un système de compression appelé Pack200 vers Java 1.5.0. Il réduit le nombre d'octets si efficacement qu'il peut compresser un fichier jar volumineux à un neuvième de sa taille d'origine s'il ne contient que des classes Java. Java Web Start prend en charge Pack200 depuis sa première apparition, mais initialement cette fonctionnalité nécessitait une collaboration côté serveur et une certaine expérience de configuration. Lorsque Sun a introduit Java SE 6u10, la prise en charge du Pack200 est devenue disponible sans nécessiter de prise en charge spéciale du serveur. Les concepteurs d'applications peuvent activer/désactiver cette fonctionnalité dans les fichiers JNLP. Sur les connexions lentes, le Pack200 offre une amélioration des performances en termes de temps de démarrage et de temps de téléchargement de l'application.

Applications Web Start signées

Par défaut, les applications s'exécutent en mode "restreint", ce qui signifie qu'elles n'ont pas accès à certaines ressources système telles que les fichiers locaux. Mais les éditeurs peuvent supprimer ces restrictions en signant leurs applications Web Start avec l'outil jarsignerfourni avec le JDK .

Remarques

  1. ^ a b Mise à jour de la feuille de route du client Java ( PDF ), sur oracle.com , mars 2018.

Bibliographie