Esistono due problemi principali nel lanciare un programma Java da un server Web:
Bisogna lanciare l'interprete run-time di Java e fornire la classe iniziale (programma da eseguire) in linea di comando. Con un form HTML, non esiste nessuna precauzione nell'inviare una linea di comando al server web.
Ogni variabile d'ambiente necessaria al programma Java deve essere passata esplicitamente.
Non esiste un metodo simile alla funzione C getenv()
.
Per eliminare questi ostacoli, ho scritto un programma CGI di shell che fornisce le informazioni necessarie all'interprete Java.
Questo script di shell si occupa dell'interazione tra il demone HTTP daemon e il programma Java CGI che dovete usare. Estrae il nome del programma che volete lanciare dai dati forniti al server e raccoglie tutti i dati d'ambiente in un file temporaneo. Quindi lancia l'interprete run-time di Java con il nome del file di informazioni d'ambiente e il nome del programma aggiunto alla linea di comando.
La spiegazione di come viene configurato ed installato lo script java.cgi
si trova nella sezione
Le Directory di Installazione.
I forms che usano i programmi Java CGI specificano delle azioni come di seguito formalizzato:
<form action="/cgi-bin/java.cgi/CGI_Test" method="POST">Dove
/cgi-bin/
è la directory locale che avete
specificato per i file binari CGI, java.cgi
è il
front-end di Java che permette di lanciare programmi Java sul Web e
CGI_Test
è un esempio del nome del programma
Java da lanciare.