Struttura delle directory sul disco d` installazione

Struttura delle directory sul disco d' installazione:
 Jserver
- contiene il sorgente ed il bytecode del programma
 Jserver\DATA
- contiene il database delle domande
 LocalProvaClient - è la parte client che chiede la password ed effettua il login
 New\checkbox
- contiene vari dati utilizzati dal programma e le immagini da
inserire nelle domande.
Questa guida analizza i punti da modificare al momento dell'installazione su server.
Per prima cosa, bisognerà connettere in rete locale l'unità su cui risiedono i files del
programma. ( copiato precedentemente ad es. tramite: xcopy a:\*.* /s )
Quindi modificare il file 'autoexec.bat' inserendo la seguente linea:
SET CLASSPATH=d:\dir1\Jserver;d:\dir1\localProvaClient
dove per d:\ intendiamo l'unità logica di rete su cui sono stati installati i files del
programma e per dir1\ il percorso relativo di installazione.
Ora bisognerà modificare alcune stringhe a livello sorgente e poi ricompilare il programma
con un compilatore Java. ( ES.: javac del JDK 1.02 della Sun o jvc di Microsoft )
Di seguito ecco riportato uno schema riassuntivo:
File da modificare
Modifica da apportare a...
Modificare in...
IDapplet.java
tutte le stringhe "localhost"
"nome del server host"
( ES.: serving.univ.trieste.it )
localProvaClient.java
tutte le stringhe "localhost"
tranne quella alla linea 163
"nome del server host"
LortySmartCheck.java
tutte le stringhe "localhost"
"nome del server host"
PasswordRequest.java
linea 46 - new FileInputStream("pwd.hash");
new FileInputStream("/persorso
relativo/Jserver/pwd.hash");
linea 153 - new File("/Vercelli/jserver/data"); new File("/percorso relativo/jserver/data");
linea 306 - copyFile("/Vercelli/jserver/data/" copyFile("/percorso relativo /jserver/data/"
+ "check" + n,"/Vercelli/jserver/" + "check" + n,"/percorso relativo/jserver/"
+ username + "check" + n3);
+ username + "check" + n3);
Command.java
linea 60 - new File("/Vercelli/Jserver");
new File("/percorso relativo/Jserver");
Commander.java
linea 21 - new Socket("localhost"...
new Socket("nome del server host"...
TheLastResource.java
linea 65 - new URL("http","localhost"...
new URL("http","nome del server host"...
Tarea.java
linea 16 - String UnivHost = "localhost";
String UnivHost = "nome del server host";
Ora non resta che ricompilare tutti i sorgenti spostandosi nella directory 'Jserver' e
digitando:
javac *.java
Ripetere l'operazione di ricompilazione anche nella directory 'localProvaClient'.
Istruzioni per ulteriori modifiche
Il sistema di sicurezza del nostro progetto prevede che alcune informazioni siano crittate
per impedirne l’accesso a utenti non autorizzati. Abbiamo creato un’utility Java a questo
scopo: Encryption.java.
In generale i files da crittare sono la pagina HTML contenente le applet della provetta, le
immagini della pagina e le immagini associate alle domande.
L’ utilizzo di Encryption è molto semplice: lanciato dal prompt dei comandi senza
parametri entra in modalità dimostrativa esemplificando la codifica.
Per crittare un file seguire questa linea di esempio:
Java Encryption c <source file> <target file>
A questo punto <target file> sarà crittato e compatibile col nostro sistema.
Creare una nuova provetta diversa da quella dimostrativa è abbastanza semplice e
intuitivo:
Modificare il file check.html ( nella directory localProvaClient ) solo se si vuole cambiare
il contesto html delle applet o il numero delle domande ( la nostra provetta dimostrativa
supporta 4 domande ).
Per aggiungere una domanda semplicemente copiare la linea html che richiama l’applet
LortySmartcheck precedente e modificare il parametro name con checkn dove n è un
numero progressivo. ( per esempio se la domanda precedente aveva come parametro
check4, il parametro per la domanda successiva sarà check5 )
Per cambiare il testo e il numero delle selezioni all’ interno di una domanda, nonchè
l’immagine ad essa associata ( se ve ne è una ) sarà sufficiente modificare i file di testo del
database di domande all’ interno della directory Jserver/data
questi si presentano con la seguente struttura:
number=2
question=testo della domanda
image=fileimmagine.gif
group=yes
1=testo della prima alternativa
2=testo della seconda alternativa
il campo number indica il numero delle alternative
il campo question contiene la domanda
il campo image indica il file contenente l’immagine da associare alla domanda, questo
campo è opzionale, se non viene specificato semplicemente non sarà visualizzata nessuna
immagine; l’immagine specificata deve essere crittata ( vedi sopra )
il campo group indica se possono essere specificate più risposte valide ( group=no )
oppure se può essere scelta una sola risposta ( group=yes ) i checkbox saranno rotondi o
quadrati a seconda della scelta.
I campi numerici contengono i testi delle alternative proposte.