aggiornamento per Java 9, ottobre 2017
Secondo il Java 9 release notes:
applet Java e funzionalità WebStart, tra cui l'API Applet, il plug-in Java, Java Applet Viewer, JNLP e Java Web Start incluso lo strumento javaws sono tutti deprecati in JDK 9 e verranno rimossi in una versione futura.
Quindi, per Java 9+, l'implementazione di JavaFX in un browser che utilizza un plug-in Java sarà possibile solo utilizzando la tecnologia deprecata. Oracle fa notare in un'altra parte del Java 9 release notes:
depreca il plug-in Java e tecnologie applet associati nel JDK di Oracle 9 costruisce. Mentre sono ancora disponibili in JDK 9, queste tecnologie saranno prese in considerazione per la rimozione da Oracle JDK e JRE in una versione futura. Le applet e le applicazioni JavaFX incorporate in una pagina Web richiedono l'esecuzione del plug-in Java. Prendi in considerazione la possibilità di riscrivere questi tipi di applicazioni come Java Web Start o applicazioni autonome.
Nota: Java Web Start non è in realtà un'alternativa in quanto è anche deprecato (in ogni caso, è diverso da un'applicazione incorporata e renderizzata all'interno di una pagina del browser).
In alternativa, che offre funzionalità simili, prendere in considerazione qualcosa di simile jpro, che distribuisce applicazioni JavaFX in un browser senza un plug-in Java (jpro è attualmente solo in beta chiusa, quindi non è una soluzione praticabile a partire da ottobre 2017, ma forse un giorno in futuro ...).
Per ora, suggerirei che il modo migliore per distribuire le applicazioni JavaFX è come self-contained applications, in esecuzione all'esterno di un browser.
risposta precedente per Java 7 e 8
JavaFX - può veramente essere implementato in un browser?
Sì, le applicazioni JavaFX possono essere distribuite in modo che vengano eseguite all'interno di una pagina Web html ospitata nel browser Web.
La tecnologia che consente questo è il Java Plugin. Questo plugin è attualmente una soluzione plug-in basata su browser NPAPI. Il plug-in Java viene fornito con lo Oracle Java 7 Runtime Standard Environment.
Non tutti i browser sono supportati, solo quelli elencati su JavaFX Supported Configurations page.
Quanto è facile distribuire tramite browser web?
Il modo più semplice per distribuire un progetto JavaFX in un browser web è:
- Create a new JavaFX project in NetBeans.
- Develop a simple HelloWorld App.
- Seguire le istruzioni per Deploying your first JavaFX Application.
Questo non è difficile (a mio parere).
In alternativa, seguire le istruzioni sul riferimento dettagliato per Deploying JavaFX Applications (o utilizzare strumenti di terze parti). Per molti progetti, l'utilizzo di uno strumento diverso dall'ID NetBeans per eseguire il packaging è un approccio migliore. Tuttavia, in genere è più semplice consentire all'IDE NetBeans di gestire le attività di packaging di distribuzione.
Quanto segue non è relativo alla risposta alla domanda originale, ma fornisce alcune opinioni e informazioni richieste nei commenti su questa risposta.
Alcuni consigli
ci sono insidie per la distribuzione di Java in un browser. Ti incoraggio a fare la tua ricerca Google sull'argomento.
A mio parere, in base all'attuale modello di distribuzione JavaFX 2.x, per la maggior parte dei tipi di applicazioni che richiedono un browser come contenitore di runtime primario, l'utilizzo di JavaFX non è una soluzione appropriata.
Esaminare i requisiti di implementazione e runtime per l'applicazione. In base alle proprie esigenze e alla conoscenza del modello di esecuzione basato sul browser JavaFX, decidere se una distribuzione basata su browser utilizzando la tecnologia JavaFX è il meccanismo corretto per la propria applicazione.
Un paio di potenziali difficoltà per il browser incorporato applicazioni JavaFX
Alcuni browser importanti (ad es Internet Explorer 10, iOS Safari e presto Desktop Chrome) non consentono l'esecuzione dei plugin che utilizzano il NPAPI attualmente utilizzato dal plugin per il browser Java = > alcuni dei tuoi utenti target potrebbero non essere in grado di utilizzare la tua applicazione.
Con un'applicazione incorporata nel browser, non si ha il controllo completo del runtime su cui viene eseguita l'applicazione (browser + Java runtime + interfaccia plugin) => un'applicazione che funzionava alla prima installazione potrebbe smettere di funzionare come previsto dopo un aggiornamento a questi componenti runtime.
distribuzione Alternative
Se un modello di distribuzione basato su browser non è appropriato per la vostra applicazione, ci sono altri modi per deploy JavaFX applications (ad esempio WebStart, barattoli stand-alone e le applicazioni self-contained).
Perché preoccuparsi di utilizzare JavaFX nel browser? Basta attaccare con il solito stack. –