close

Java Web Start

Přejít na navigaci Přejít na hledání

V oblasti výpočetní techniky byl Java Web Start (také známý jako JavaWS, javaws nebo JAWS) rámec vyvinutý společností Sun Microsystems (nyní Oracle ), který uživatelům umožňoval stahovat a spouštět softwarové aplikace Java Platform přímo z internetu pomocí webového prohlížeče.

Java Web Start software:

  1. Umožňoval snadnou aktivaci aplikací jedním kliknutím
  2. Zajistilo, že vždy běžela nejnovější verze aplikace
  3. To eliminovalo komplikované postupy instalace a aktualizace

Java Web Start je od března 2018 považována za zastaralou a již není zahrnuta v nových JRE/JDK počínaje verzí 11 a jejím uživatelům se doporučuje přejít na jiné alternativy distribuce [1] , jako je jlink .

Bezplatná implementace je stále udržována projektem IcedTea , ale není považována za součást oficiální distribuce Java.

Funkce

Na rozdíl od apletů Java neběží aplikace Web Start uvnitř prohlížeče a karanténa , ve které běží, nepotřebuje mnoho omezení, i když to lze nakonfigurovat. Web Start má oproti apletům výhodu v tom, že překonává mnoho problémů s kompatibilitou mezi prohlížeči Java a různými verzemi virtuálních strojů Java ( JVM ). Na druhou stranu programy Web Start nedokážou tak snadno komunikovat s prohlížečem, jako to dělají s applety. Pro usnadnění migrace mohou uživatelé také vyvolat Java Applet jako aplikaci Java Web Start.

Implementace

Java Web Start poskytoval sadu tříd v balíčku javax.jnlp , který poskytoval sadu služeb pro aplikaci. Sun navrhl mnoho z těchto služeb, aby umožnil pečlivě kontrolovaný přístup ke zdrojům (jako jsou soubory a systémové poznámky) a zároveň omezil aplikaci v autorizační operace. Sun představil verzi 1.0 Web Start v březnu 2001. S J2SE 1.4 přišel Web Start jako výchozí součást prostředí Java Runtime Environment (JRE) nazývané javaws a správci počítačů jej již nemuseli instalovat samostatně.

JavaWS byl později zastaralý a odstraněn z JRE 11 a dále [1] .

Java Network Launching Protocol (JNLP)

Programátoři mají v počítačovém žargonu často tendenci zaměňovat termín Java Network Launching Protocol ( JNLP ) s termínem „ Web Start “. Ve skutečnosti je JNLP protokol definovaný schématem XML a určuje, jak spouštět aplikace Java Web Start. JNLP se skládá ze sady pravidel, která přesně definují, jak implementovat spouštěcí mechanismus. Soubory JNLP obsahují informace, jako je umístění souboru balíčku jar a název hlavní třídy pro aplikaci a také další parametry programu. Správně nakonfigurovaný prohlížeč předá soubory JNLP prostředí Java Runtime Environment (JRE), které následně stáhne aplikaci do počítače uživatele a spustí ji. Vývoj JNLP probíhal jako součást Java Community Process of JSR 56. Zahrnuje původní verzi 1.0, další vydání 1.5 pro údržbu a od roku 2006 [aktualizace] očekávané vydání údržby verze 6.0. JNLP je zdarma; vývojáři nemusí platit poplatek za použití v programech.

Mezi důležité funkce Web Start patří schopnost automaticky stáhnout a nainstalovat JRE, pokud uživatel ještě nenainstaloval Javu, a pro programátory určit, jakou verzi JRE daný program potřebuje spustit. Uživatel nemusí nutně zůstat připojen k internetu, aby mohl spouštět stažené programy, protože spuštění je zaručeno lokálně udržovanou mezipamětí. Aktualizace stahování softwaru z webu jsou dostupné, když má uživatel připojení k internetu, čímž se ulehčuje distribuce.

Každý uživatel počítače může používat JNLP, jednoduše instalací klienta JNLP (velmi běžně Java Web Start). Instalace může probíhat automaticky tak, že koncový uživatel při prvním spuštění Java aplikace uvidí pouze spuštění staženého a nainstalovaného klienta.

JNLP funguje podobně jako HTTP / HTML pro web. Chcete-li vykreslit webovou stránku HTML, poté, co uživatel klikne na odkaz, prohlížeč odešle adresu URL webovému serveru, který vrátí soubor HTML. Prohlížeč si poté vyžádá zdroje odkazující na tento soubor (obrázky, css) a poté, co obdrží dostatek informací, provede konečné vykreslení stránky. Vykreslování stránky obvykle začíná před stažením všech zdrojů; některé zdroje, které nejsou nezbytné pro rozvržení stránky (např. obrázky), lze načíst později – nebo na vyžádání, pokud není v prohlížeči nastaveno „Načítat obrázky automaticky“.

JNLP zrcadlí tento proces; stejným způsobem, jakým webový prohlížeč vykresluje webovou stránku, tak klient JNLP „vykreslí“ aplikaci Java. Poté, co uživatel klikne na odkaz, prohlížeč odešle adresu URL webovému serveru, který pro aplikaci vrátí soubor JNLP (místo souboru HTML). Klient JNLP analyzuje soubor, navštíví zadané prostředky (soubory jar), počká na načtení všech nezbytných prostředků a poté spustí aplikaci. Soubor JNLP může označit některé zdroje jako „líné“, informuje klienta JNLP, že aplikace tyto prostředky ke spuštění nepotřebuje, ale že je mají načíst později, když a/nebo pokud je aplikace požaduje.

Pack200 komprese

Aby se zmenšila velikost aplikace Java Web Start, představila společnost Sun Microsystems kompresní systém nazvaný Pack200 na Java 1.5.0. Snižuje počet bajtů tak efektivně, že může komprimovat velký soubor jar na jednu devítinu jeho původní velikosti, pokud obsahuje pouze třídy Java. Java Web Start podporuje Pack200 od svého prvního uvedení, ale zpočátku tato funkce vyžadovala spolupráci na straně serveru a určité zkušenosti s nastavením. Když Sun představil Java SE 6u10, podpora Pack200 byla dostupná bez potřeby speciální podpory serveru. Návrháři aplikací mohou povolit / zakázat tuto funkci v souborech JNLP. U pomalých připojení Pack200 poskytuje zvýšení výkonu v době spuštění aplikace a době stahování.

Podepsaný web Spuštění aplikací

Ve výchozím nastavení běží aplikace v „omezeném“ režimu, což znamená, že nemají přístup k některým systémovým prostředkům, jako jsou místní soubory. Vydavatelé však mohou tato omezení odstranit podepsáním svých aplikací Web Start pomocí nástroje jarsigner, který je součástí sady JDK .

Poznámky

  1. ^ a b Aktualizace plánu Java Client Roadmap ( PDF ), na oracle.com , březen 2018.

Bibliografie