Java Web Start: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Funzionalità collegamenti suggeriti: 3 collegamenti inseriti. |
|||
(48 versioni intermedie di 22 utenti non mostrate) | |||
Riga 1:
{{S|linguaggi di programmazione}}
{{
In [[informatica]], '''Java Web Start''' (noto anche come JavaWS, javaws o JAWS) è stato un [[framework]] sviluppato da [[Sun Microsystems]] (ora [[Oracle Corporation|Oracle]]), che
Il software Java Web Start:
# Permetteva una facile attivazione delle applicazioni mediante un clic
# Garantiva che venisse sempre eseguita l'ultima versione dell'applicazione
# Eliminava le complicate procedure d'installazione e di aggiornamento
Java Web Start è considerato deprecato a partire da Marzo [[2018]] e non più incluso nelle nuove JRE/JDK a partire dalla versione 11, e i suoi utilizzatori sono incoraggiati a passare ad altre alternative di distribuzione<ref name=":0">{{Cita web|url=http://www.oracle.com/technetwork/java/javase/javaclientroadmapupdate2018mar-4414431.pdf|titolo=Java Client Roadmap Update|data=March 2018}}</ref>.
Una implementazione libera è ancora manutenuta dal progetto [[IcedTea]], ma non è considerato parte della distribuzione Java ufficiale.
== Funzionalità==
A differenza delle [[Java applet]]s, le [[Applicazione web|applicazioni Web]] Start non vengono eseguite all'interno del [[browser]], e la [[sandbox (computer security)|sandbox]] nella quale vengono eseguiti non ha bisogno di molte limitazioni, sebbene questo può essere configurato. Web Start ha un vantaggio rispetto alle applets, nel senso che supera molti problemi di compatibilità tra i Java browser e le varie versioni di [[Macchina virtuale|macchine virtuali]] Java ([[Java virtual machine|JVM]]). D'altro canto, i programmi Web Start non possono comunicare facilmente con il browser come invece avviene con le applets. Per facilitare la migrazione, gli utenti possono anche invocare una Applet Java come applicazione Java Web Start.
== Implementazione ==
Java Web Start
[[Sun Microsystems|Sun]]
JavaWS è stato in seguito deprecato e rimosso dalla JRE 11 in poi <ref name=":0" />.
== Java Network Launching Protocol (JNLP) ==
Spesso i programmatori, nel gergo informatico, tendono ad intercambiare il termine '''Java Network Launching Protocol''' ('''JNLP''') con il termine "'''Web Start'''". In realtà JNLP è un [[Protocollo informatico|protocollo]], definito da uno schema [[XML]], e specifica la modalità con cui lanciare le applicazioni Java Web Start. JNLP è costituito da un insieme di regole che definiscono esattamente come implementare il meccanismo di lancio. File JNLP includono informazioni come la posizione del file del pacchetto jar e il nome della classe principale per l'applicazione, oltre ad altri parametri per il programma.
Un browser configurato correttamente passa i file JNLP a un [[Java Runtime Environment]] (JRE), il quale a sua volta scarica l'applicazione sulla macchina dell'utente e lo manda in esecuzione. Lo sviluppo di JNLP si è svolto nell'ambito della [[Java Community Process]] di JSR 56. Essa include l'originale versione 1.0, la successiva release 1.5 JNLP è gratuito; gli sviluppatori non devono pagare un canone per poterlo utilizzare nei programmi. Importanti caratteristiche di Web Start includono la possibilità di scaricare e installare automaticamente un JRE nel caso in cui l'utente non Ogni utente del computer può utilizzare JNLP, semplicemente installando un client JNLP (molto comunemente Java Web Start). L'installazione può avvenire automaticamente in modo tale che l'utente finale, al momento della prima esecuzione dell'applicazione Java, vede solo l'avvio del client scaricato e installato.
JNLP funziona in modo simile a come lavora HTTP / [[HTML]] per il web. Per il [[rendering]] di una [[pagina web]] HTML, dopo che l'utente fa clic su un link, il browser invia una URL a un webserver, il quale restituisce un file HTML. Il browser quindi richiede le risorse riferite a questo file (immagini, css), ed esegue il rendering definitivo della pagina una volta che ha ricevuto sufficienti informazioni. Il rendering della pagina di solito inizia prima che tutte le risorse siano state scaricate; alcune risorse non fondamentali per il layout della pagina (ad esempio immagini), possono essere caricate in seguito - o su richiesta, se non è impostata la "Load Images Automatically" del browser.
Il JNLP rispecchia questo processo; nella stessa maniera in cui un browser Web esegue il rendering di una pagina web, così un client JNLP "esegue il rendering" una applicazione Java.
Dopo che l'utente fa clic su un link il browser invia una URL di un webserver, il quale restituisce un file JNLP (invece di un file HTML) per l'applicazione.
Il client JNLP analizza il file, visite le risorse specificate (file jar), attende il recupero di tutte le risorse necessarie, e lancia poi l'applicazione. Il file JNLP può segnare alcune risorse come "lazy", esso informa il client JNLP che l'applicazione per iniziare non ha bisogno di quelle risorse, bensì che sono da recuperare in seguito, quando e/o se l'applicazione richiederà loro.
== Compressione Pack200 (Pack200 compression) ==
{{vedi anche|Pack200}}
Per ridurre le dimensioni di una applicazione Java Web Start di Sun Microsystems ha introdotto un sistema di compressione chiamato [[Pack200]] a Java 1.5.0. Essa riduce il numero di byte in modo così efficiente che può comprimere un file grande jar per un nono delle sue dimensioni originali, se contiene solo classi Java. Java Web Start ha supportato Pack200 dalla sua prima comparsa, ma inizialmente questa caratteristica richiedeva collaborazione sul [[lato server]] e una certa dose di esperienza per le impostazioni. Quando Sun introdusse Java SE 6u10, il supporto Pack200 è diventato disponibile senza la necessità di un sostegno speciale server. I progettisti di applicazioni possono attivare / disattivare questa funzionalità all'interno dei file JNLP. Su connessioni lente Pack200 fornisce un incremento delle prestazioni nel tempo di avvio della applicazione e nel tempo di download.
== Signed Web Start applications ==
Nelle impostazione predefinita, le applicazioni vengono eseguite in modalità "ristretta", ciò significa che essi non hanno accesso per alcune risorse di sistema come file locali. Ma i publisher possono rimuovere queste restrizioni, firmando le proprie applicazioni Web Start con lo strumento <code>jarsigner</code> che viene fornito con il [[Java Development Kit|JDK]].
== Note ==
<references />
== Bibliografia ==
* {{cita web|https://download.oracle.com/javase/6/docs/technotes/guides/javaws/developersguide/contents.html|Java Web Start Developer Guide (6.0)}}
{{portale|telematica|internet|informatica}}
[[Categoria:Framework per applicazioni web]]
[[Categoria:Java]]
|