Cari Javarashian, cosa voglio considerare in questo articolo? Voglio solo fare una breve panoramica di quella parte degli application server che meritano attenzione almeno perché sono gratuiti e il loro codice sorgente è disponibile. Presumo che il tuo sistema sia simile al mio. Ho Windows 7 a 64 bit, inoltre ho JDK 1.7 e JDK 1.8 e la variabile d'ambiente
JAVA_HOME si riferisce a quest'ultimo. Nel mio caso, ciò significa che il percorso
JAVA_HOME è
C:\Program Files\Java\jdk1.8.0_31. In modo che quando ripeti quanto descritto di seguito, tu abbia il minor numero di domande possibile come "perché non ha funzionato per me, forse sto facendo qualcosa di sbagliato?", cercherò di descrivere ogni azione che ho fatto sul mio macchina. Inizio…
Casting, cioè selezione
Per prima cosa dobbiamo selezionare i server delle applicazioni per la nostra revisione. Per fare ciò, guarda l'articolo di Wikipedia
Confronto dei server delle applicazioni (inglese, perché non ce n'è un altro). C'è un cartello con un mucchio di server di applicazioni, ma a noi interessano solo quelli che, da un lato, sono open source e, dall'altro, supportano completamente JavaEE, ad es. La colonna
Compatibilità Java EE in questa tabella deve contenere una riga di tipo
Full Platform . Da questo elenco, che contiene sia
WildFly che
JBoss , puoi immediatamente buttare via quest'ultimo, perché è solo un vecchio nome e vecchie versioni
di WildFly . Di conseguenza, otteniamo il seguente elenco di server che meritano la nostra attenzione:
- Glassfish (non proprietario, ma quello della comunità glassfish.java.net , ma che è supportato da Oracle Corporation a tal punto che se hai bisogno di un SDK javaEE dal sito Web Oracle, ti daranno questo server delle applicazioni, altrimenti Non c'è altro modo)
- (Cappello Rosso) WildFly (precedentemente JBoss)
- (Apache) Geronimo
- (Apache) Tomcat (questo è solo un contenitore servlet, non un server applicativo, ma è lo standard su cui, se il programma è scritto correttamente, funzionerà sicuramente. Su altri server, il programma potrebbe essere scritto correttamente in termini di JavaEE, ma tutto funzionerà, sarà errato o non funzionerà affatto, sto parlando di Geronimo, i cui difetti possono essere discussi a lungo)
Ora pompiamo questi server.
Laddove era possibile scegliere tra le versioni a 32 e 64 bit, ho scelto un archiviatore per il mio sistema a 64 bit.
Installazione
In termini di installazione, tutto è semplice e per ciascuno dei server selezionati l'installazione consiste semplicemente nel decomprimere l'archivio. Ad esempio, ho creato la cartella AppServers sul mio desktop, dove ho iniziato a decomprimere tutto.
Impostazioni
Iniziamo a configurare i server impostando la porta HTTP su cui funzionerà. Quindi ci registreremo come amministratore del server. Ogni server ha le proprie funzionalità di configurazione.
Per Tomcat. Andiamo alla cartella con Tomcat decompresso, quindi alla cartella
conf , al file
server.xml .
Troviamo il numero 8080 (porta http predefinita) in questo file e lo modifichiamo con quello che vogliamo. L'ho impostato su
9713 .
Per registrarti come amministratore del server, devi aprire il file tomcat-users.xml mentre ti trovi nella stessa cartella . In esso, prima del tag di chiusura
</tomcat-users>, aggiungi il seguente tag
<user nomeutente="egarmin" password="1" ruoli="manager-gui,manager-script,manager-status,manager-jmx"/ > dove nel tuo ho assegnato il numero massimo di diritti amministrativi (ruoli) ai ruoli. Ciò mi consentirà di distribuire applicazioni sia tramite la GUI che tramite una connessione remota. Ora lanciamo Tomcat. Vai alla cartella con Tomcat decompresso, quindi alla cartella
bin ed esegui il file
startup.bat . Vai al browser all'indirizzo
http://localhost:9713 . Tutto dovrebbe funzionare e vedremo la tigre.
Ora controlliamo se hai accesso al pannello di amministrazione. Per fare ciò, vai su
http://localhost:9713/manager , inserisci il login e la password selezionati e ottieni l'accesso.
Evviva! Puoi disabilitare temporaneamente Tomcat semplicemente chiudendo la console su cui è in esecuzione.
Per Glassfish. Vai alla cartella con il
glassfish scompattato , poi alla sottocartella
glassfish , poi alla sottocartella
domains , poi alla cartella
domain1 . Vai alla cartella
di configurazione e trova il file
domain.xml . Lì cerchiamo anche il numero
8080 (questo numero è generalmente la porta HTTP predefinita per i server delle applicazioni e i contenitori servlet) e lo modifichiamo con quello che vogliamo. L'ho impostato su
9813 . Lanciamo il pesce vetro. Vai alla cartella con il glassfish spacchettato, poi alla sottocartella
glassfish , poi alla cartella
bin . Eseguire il file
startserv.bat . Nel browser, inserire l'indirizzo
http://localhost:9813 . Nella brutta pagina che appare con il titolo
GlassFish Server, trova il collegamento
per andare alla Console di amministrazione e cliccaci sopra.
Successivamente, arrivati alla bellissima pagina della console di amministrazione realizzata su JSF, fare clic sulla voce
Cambia password amministratore e inserire la password di cui abbiamo bisogno per l' utente
amministratore , quindi confermarla e fare clic sul pulsante
Salva.
Quando successivamente accedi alla console di amministrazione, dovrai inserire il login
amministratore e la password specificata.
Ora puoi disabilitare temporaneamente
Glassfish semplicemente chiudendo la console su cui è in esecuzione.
Per WildFly. Vai alla cartella con il file
wildfly decompresso . Successivamente, vai alla cartella
standalone , quindi alla cartella
di configurazione e al suo interno il file
standalone.xml . Successivamente si procede secondo lo schema stabilito. Ho impostato la porta su
9913 . Avviamo il server. Per fare ciò, andiamo alla cartella con il
wildfly decompresso . Successivamente, vai alla cartella
bin ed esegui il file
standalone.bat . Aprire il browser e inserire l'indirizzo
http://localhost:9913 .
Fare clic
sul collegamento Console di amministrazione per accedere alla console di amministrazione (in altre parole, il pannello di amministrazione del server delle applicazioni). Ma così non è stato, perché... lo schermo si apre.
Questa schermata ci dice che l'amministratore non è stato creato e per crearlo dobbiamo utilizzare l'utilità della console
add-user.bat . Ebbene, se è necessario, è necessario. Torniamo alla cartella
bin ed eseguiamo questa utility. Per prima cosa ti verrà chiesto di selezionare il tipo di utente che vogliamo creare. Dobbiamo selezionare l'elemento
(a) , il che significa che abbiamo bisogno di un amministratore. Successivamente ti verrà chiesto il nome di questo utente
Username e password
Password . La password non può essere vuota, ma è gradito un carattere. L'utilità ovviamente ti rimprovererà, ma lo inghiottirà se rispondi sì alla domanda "Sei sicuro?" Successivamente, conferma la password inserendo nuovamente la richiesta
Re-enter Password . Poi ci saranno più domande, ma rispondiamo semplicemente a tutte in modo affermativo e usciamo dall'utilità. Tornando alla pagina precedente, trova il collegamento
Riprova e fai clic su di esso. Ora, inserendo i dettagli dell'amministratore appena creato, puoi accedere al pannello di amministrazione.
Spegniamo il server chiudendo la finestra della console attraverso la quale è stato avviato.
Per Geronimo. Vai alla cartella con
geronimo decompresso . Successivamente, vai alla sottocartella
var , quindi alla cartella
config e al suo interno il file
config-substitutions.properties . Questo file descrive tutte le porte utilizzate dal server delle applicazioni in un formato conveniente, ma lo schema di sostituzione delle porte è lo stesso. Ho impostato la porta su
10013 . Avviamo il server
Geronimo . Andiamo alla cartella con
geronimo decompresso , quindi alla sottocartella
bin ed eseguiamo lì il file
startup.bat . Vai alla pagina
http://localhost:10013. Cosa ne pensi? Molto probabilmente, la pagina non sarà lì. Perché? Il fatto è che l'ultima versione di Geronimo (3.0) non può funzionare con l'ultima versione di JDK (1.8), quindi se ce l'hai solo o addirittura hai, diciamo, la 7a versione, ma la variabile d'ambiente JAVA_HOME si riferisce ancora specificamente a 8, come il mio, il server delle applicazioni non si avvia. Pertanto, affinché Geronimo funzioni, è necessario scaricare JDK 1.7. Ora diciamo che hai installato il 7° JDK, ma non vuoi modificare il valore della variabile JAVA_HOME (dopotutto, altri programmi non se ne lamentano, il che significa che possono funzionare con l'ultima versione di JDK). Cosa fare? Consiglio di aprire il file
setjavaenv.bat situato nella stessa cartella
bin e di cercare la riga etichettata
:okJdkFileCheck . Quindi nella riga successiva aggiungi una sostituzione della variabile di ambiente. Ad esempio, in questo modo:
set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_75 Questa riga non è presente, quindi scrivila tu stesso. Se hai un sistema a 32 bit, non dovrebbero esserci più problemi. Inoltre, se hai un sistema a 64 bit e hai installato JDK 1.7 nella configurazione a 64 bit, allora anche per te va tutto bene. Ora immaginiamo di aver deciso di essere pervertiti e di installare JDK 1.7 dalla linea a 32 bit su un sistema a 64 bit (ho, ad esempio, Windows 7 64). Cosa poi? Poi dovrai armeggiare ancora un po', perché in un sistema a 64 bit ci sono due cartelle per l'installazione dei programmi:
Programmi e
Programmi (x86) e se non cambi nulla, il JDK a 32 bit andrà in più recente. Cosa c'è di così spaventoso in questo? Sì, sembra ok, tuttavia, se la variabile JAVA_HOME ha parentesi nel suo percorso (x86), allora Geronimo avrà un'indigestione. Perché? Dio lo sa, soprattutto considerando che secondo i forum questo errore avrebbe dovuto essere corretto nella terza versione di
Geronimo . Ma niente del genere. La cosa principale in questa faccenda è non fare pipì, se gli indiani non l'hanno corretto, allora lo correggeremo. Ci sono due modi per farlo, che preferisco combinare per essere sicuro. Innanzitutto, vai di nuovo al file
setjavaenv.bat e trova l'etichetta già menzionata
:okJdkFileCheck . Sotto questa etichetta c'è una riga
se "%JRE_HOME%" == "" se esiste "%JAVA_HOME%\bin\javac.exe" (set JRE_HOME=%JAVA_HOME%\jre) altrimenti imposta JRE_HOME=%JAVA_HOME% in cui cure Geronimo Basterà mettere tra virgolette la sottostringa JRE_HOME=%JAVA_HOME%\jre, cioè sostituire l'intera riga con
if "%JRE_HOME%" == "" se esiste "%JAVA_HOME%\bin\javac.exe" (set "JRE_HOME=%JAVA_HOME%\jre") else set JRE_HOME=%JAVA_HOME% . Inoltre, ricorda o tieni presente che cartelle come Programmi in Windows 7 hanno sinonimi (ad esempio, per la cartella
C:C:\Programma~2 ). Pertanto, se nel file
setjavaenv.bat dopo l'etichetta
:okJdkFileCheck imposti il seguente valore della variabile
JAVA_HOME set JAVA_HOME=C:\Progra~2\Java\jdk1.7.0_75 allora avrai anche un server
Geronimo che esegue un 32 -bit JDK in un sistema operativo a 64 bit x bit. Qualcosa del genere... Bene, finalmente puoi avviare
Geronimo chiamando
startup.bat . Ora non dovrebbero esserci problemi.
Vai alla pagina http://localhost:10013 nel browser . In alto a sinistra, trova il collegamento
Console e fai clic su di esso.
È necessario inserire il nome utente e la password dell'amministratore. Ti dico subito che questo è l' utente
di sistema con il
gestore password (valori predefiniti).
Accedendo alla console stessa e seguendo le voci di menu come nell'immagine seguente (seleziona il pulsante di opzione
Avanzate , quindi seleziona
Sicurezza > Utenti e gruppi ), puoi modificare la password per l' utente
di sistema o creare un altro utente amministratore ed eliminarlo uno.
Puoi anche arrestare il server
Geronimo semplicemente chiudendo la finestra della console in cui era in esecuzione il server.
Conclusione
In questa recensione, ho semplicemente eseguito l'installazione e la configurazione iniziale dei server delle applicazioni più diffusi e del contenitore servlet Tomcat. Ad eccezione di Geronimo, il resto dei server è stato molto gentile e ospitale con me. Nel prossimo post continuerò a considerare i server delle applicazioni e farò il terzo passo verso i servizi web, ovvero mostrerò come distribuire il servizio web descritto
nel primo passo in questi server. Per fare ciò creeremo un archivio di guerra del nostro servizio web e mostrerò chiaramente che l'insieme di jar di terze parti che devono essere inclusi in questo archivio affinché il servizio funzioni correttamente varia molto da server a server.
GO TO FULL VERSION