Generazione di file di classe JSP

In fase di esecuzione, il WebSphere® Application Server JavaServer Il motore Pages (JSP) carica i file di classe JSP da WebSphere Application Servertemp directory o un modulo webWEB-INF/classes directory. Il motore JSP cerca innanzitutto un file di classe nel filetemp directory e quindi cerca nel modulo webWEB-INF/classes directory.

In un'installazione predefinita, il file WebSphere Application Servertemp la directory è in genere profilo_root/temp . La Figura 1 mostra la logica di elaborazione del motore JSP in fase di esecuzione.

[z/OS]Non dovresti usare ilCANCEL appserver_proc_name comando per arrestare un server. Ogni volta che un server viene arrestato in modo pulito, questitemp le directory vengono rimosse. Tuttavia, se il server spesso non viene arrestato in modo corretto, cosa che accade se si annulla anziché arrestare il server, queste directory non vengono rimosse e l'HFS utilizzato per la directory temporanea alla fine si riempie. È inoltre possibile evitare che si verifichi questo problema di archiviazione se si precompilano i file JSP quando si installa un'applicazione o se si utilizza JspBatchCompiler funzione per precompilarli prima che vengano invocati.

[z/OS]Quando i JSP vengono compilati in fase di runtime, le stesse classi generate vengono inserite in ciascuna directory temporanea del servo. Tali classi vengono quindi eliminate quando il server o il servo viene riciclato, il che è inefficiente e porta a un maggiore utilizzo dello spazio su disco per contenere ciascuna copia delle stesse classi compilate. Se il servo o il server falliscono per qualsiasi motivo, queste classi compilate non verranno ripulite automaticamente. Inoltre, le classi JSP cancellate devono essere ricompilate dopo il riavvio di ciascun servo.

[z/OS]L'inefficienza menzionata in precedenza è stata corretta. Quando i JSP vengono compilati in fase di runtime, il contenitore JSP genera le classi compilate in una directory temporanea del server comune che persiste dopo il riavvio del server o del servo.

importante

Il compilatore batch supporta la generazione di file di classe sia in formato WebSphere Application Servertemp directory e un modulo webWEB-INF/classes directory, a seconda del tipo di destinazione del compilatore batch. Inoltre, il compilatore batch consente la generazione di file di classe in qualsiasi directory del filesystem, al di fuori dell'applicazione di destinazione. Generazione di file di classe in un modulo webWEB-INF/classes consente di distribuire il modulo Web come file WAR (Web Application Archive) autonomo o come file WAR all'interno di un file Enterprise Archive (EAR). La tabella seguente mostra il comportamento del compilatore batch durante la compilazione dei file di classe.

Tabella 1. Comportamento del compilatore batch . Comportamento del compilatore batch durante la compilazione di file di classe
  ear.path O war.path fornito enterpriseApp .nome fornito
compileToDir non fornito; compileToWebInf non fornito, o è vero I file di classe sono compilati nei moduli webWEB-INF/classes directory. I file di classe sono compilati nei moduli webWEB-INF/classes directory.
compileToDir non fornito; compileToWebInf è falso I file di classe sono compilati nei moduli webWEB-INF/classes directory.

I file di classe sono compilati nel file WebSphere Application Server directory temporanea, di solito profilo_root/temp .

compileToDir è fornito; compileToWebInf non fornito oppure è vero o falso I file di classe vengono compilati nella directory indicata da compileToDir. I file di classe vengono compilati nella directory indicata da compileToDir.