Post on 26-Jun-2015
description
1
Installazione e configurazione della Web Logic Platform
Parte 1 - Web Logic Server
R Turco
In questa prima parte esaminiamo i passi base che conducono ad una rapida comprensione della
Web Logic Platform 81 per l‟amministrazione configurazione ed uso Sebbene qui si parla della
versione 81 il 99 delle operazioni qui mostrate rimangono valide anche per versioni successive
La parte I si interesseragrave in dettaglio essenzialmente di Web Logic Server e dei tools di deployment
Requisiti per lrsquoinstallazione
Requisiti SistemaSoftware Valori minimi e raccomandati Piattaforme La certificazione delle piattaforme egrave mostrata da BEA alla URL
httpe-docsbeacomwlscertificationscertificationsindexhtml
Sono supportate le maggiori piattaforme
Windows 2000XP
SUN Solaris 8 (28 o 58 superiori)
HP
Alla URL di sopra esistono sempre aggiornate raccomandazioni per la JVM
patches valori di configurazione del kernel UNIX performance etc
Memoria di sistema Raccomandato un minimo di 128 MB per UNIX e Windows L‟esperienza
perograve dimostra che tale valore egrave valido se sul sistema non esistono molte
piattaforme o middleware (TUXEDO Oracle 9i etc) Inoltre piugrave memoria di
sistema si dispone piugrave la JVM risponde rapidamente poicheacute java lavora solo
sul heap Il valore consigliato in questi casi egrave invece da 512 Mbyte in poi per
un ambiente di sviluppo standalone
Processore Per Windows occorre avere almeno un Pentium con un clock maggiore dei
400 Mhz per avere delle decenti performance
La strategia migliore egrave di avere comunque Web Logic Server sul processore
piugrave veloce
Spazio disco Sotto Windows occorrono per il funzionamento di Web Logic almeno 250
Mbyte per il prodotto e 150 Mbyte ulteriormente disponibili Tuttavia dipende
anche da quanto si intende poi sviluppare
Sotto UNIX occorre almeno un analogo valore
Lo spazio ulteriore serve in fase di spacchettamento automatico del prodotto
Java 2 Platform Si dovrebbe disporre dell‟ultima versione di JDK stabile disponibile
Generalmente viene installata la JVM della SUN (Hotspot)
Sotto Windows o Red Hat Linux per un miglioramento delle performance per
applicazioni ldquomission-criticalrdquo va fortemente considerata la possibilitagrave di usare
la JVM Jrockit fonita nel kit o scaricabile dalla BEA
Se installate su Windows o Red Hat Linux usate la JRockit
Web browser Per l‟amministrazione da consolle di Web Logic Server vanno bene browser
come Internet Explorer 5x o superiori e Netscape 47x o Mozilla 14 in su
2
Installazione di Web Logic Server L‟installazione permette di installare WLS (Web Logic Server) WLI (Web Logic Integration)
WLP (Web Logic Portal) Web Logic Workshop
Step 1 - BEA NET INSTALLER BEA INSTALLER
Occorre disporre di Net Installer Lo si puograve scaricare da
httpcommercebeacomdownloadsweblogic_platformjsp
Oppure del BEA Installer su CD
Step 2 - BEA HOME DIRECTORY
Si esegue il programma selezionato e si sceglie la BEA Home Directory Il valore di default BEA
dovrebbe andar bene a meno che non esista giagrave o esiste uno standard aziendale da seguire In tal
caso cambiatelo Su Windows ad esempio egrave CBEA
Step 3 - INSTALLATION TYPE
Si potrebbe eseguire quella Typical o Complete ma il nostro obiettivo egrave imparare e comprendere e
non c‟egrave niente di meglio che fare una installazione Custom
Step 4 - CHOOSE COMPONENTS
Occorre scegliere le componenti da installare Selezionando una macro area nell‟albero a sinistra si
ottiene una breve descrizione a destra
D‟altra parte prima di installare provate a giocherellare a cliccare per vedere quali sono le
dipendenze delle macro aree Si puograve installare Web Logic Workshop senza Web Logic Server ad
esempio o solo Web Logic Server senza Workshop Si puograve installare Web Logic Integration da
solo Si puograve installare Web Logic Platform da solo
Ora per esercizio installiamo invece solo Web Logic Server ed anche Workshop
Step 5 - DOWNLOAD OPTION
Occorre indicare una directory d‟appoggio (Storage Directory) dove viene messo il prodotto per
spacchettarlo Inoltre va indicato se rimuovere il pacchetto dopo l‟installazione o meno Per
esperienza so che egrave meglio lasciare il pacchetto di installazione percheacute potrebbe essere necessario
installare poi dopo altre componenti o ri-installare eventualmente
Se in produzione si egrave dietro un firewall vanno indicati Host e Port dell‟http Proxy server Ciograve in un
ambiente di sviluppo non serve
Step 6 - Autoinstallation
A questo punto inizia l‟installazione Si consiglia di segnare la casellina dell‟autoinstallazione
Altrimenti si deve conoscere ogni tool sin dall‟inizio e lanciarlo manualmente Non egrave il caso
all‟inizio
Step 7 - Web Logic Server Product Directory
Va indicate la directory sotto la BEA Home directory dove fisicamente viene installato Web Logic
Su Windows ad esempio egrave CBEAWebLogic81
3
Step 8 - Domain Configuration Wizard
Web Logic Server esiste all‟interno di un contesto di dominio Un dominio egrave un insieme correlato di
risorse per Web Logic
Questo step tende quindi a definire il tipo ed il nome del dominio Vengono suggeriti diversi
template tipologie di dominio
WLS Examples Questo template crea un nuovo dominio nel quale Web Logic Server egrave
preconfigurato per lanciare le applicazioni di esempio Non si usa
WLS Petstore Questo template crea un nuovo dominio nel quale Web Logic Server egrave
preconfigurato per lanciare l‟applicazione Petstore Non si usa
WLS Domain Questo template crea un nuovo dominio a cui si dovragrave associare una nuova
applicazione E‟ questo template che si usa quando si sviluppano nuove applicazioni
Web Logic Workshop Questo template crea un nuovo dominio a cui si dovragrave associare una
nuova applicazione che utilizza web services ad esempio
In generale nella installazione giagrave si era prescelto di installare la voce ldquoServer Examplesrdquo quindi si
disporranno anche degli esempi e di Pet store
Infine occorre dare un nome al dominio che sia univoco (es mydomain)
Step 9 - Choose Server Type
Tale scelta egrave importante e va fatta consapevolmente tra le seguenti opzioni
Single Server (Standalone Server) crea un Web Logic Server che lavora anche da Admin
Server ed ospita le applicazioni (consigliata per lo sviluppo)
Admin Server with Managed Server(s) crea un Admin Server con uno o piugrave Managed
Server
Admin Server with Clustered Managed Server(s) crea un Admin Server con uno o piugrave
clustred Managed Server
Managed Server (with owning Admin Server configuration) usato a volte per estendere un
un Web Logic domain con un Managed Server
Inizialmente scegliamo Single Server
Step 10 - Domain Container Directory
Occorre specificare la top directory sotto cui mettere il domain container (contenitore dei domini)
Il default egrave user_projects (ad esempio gisp_project) sotto la BEA_HOME (Cbeauser_projects)
Step 11 - Configure
Una volta scelto Single Server occrre dare le seguenti informazioni
Server Name un nome univoco e non puograve essere uguale al nome del dominio altrimenti si
possono ottenere strani errori
4
Server Listen Address l‟IP address o il nome DNS della macchina (anche localhost) Se la
macchina ha un solo IP non va settato tale valore percheacute viene automaticamente scelto il
primary IP Va fatto solo se la macchina ha piugrave di un IP
Server Listen Port le richieste http vengono ricevute sulla porta di default 7001
eventualmente da cambiare se giagrave usata altrove
Server SSL Listen Port le richieste https vengono ricevute sulla porta di default 7002
eventualmente da cambiare se giagrave usata altrove Se non dovesse servire l‟https in sviluppo egrave
consigliabile allora di evitate di abilitare l‟ascolto anche sulla porta 7002 ottenendo migliori
prestazioni
Step 11 - Username e Password
Vanno inserite le username e password di amministrazione
Step 12 - Windows Service e Start Menu Entry
Sotto Windows si puograve settare Web Logic Server in modo che al bootstrap WebLogic Server parte
come servizio della macchina Basta rispondere bdquoYes‟ al Wizard
Inoltre sotto Windows egrave possibile anche avere un Start Menu Entry che generalmente gli
amministratori preferiscono evitare per avere un maggior controllo del prodotto
Step 13 - Configuration Summary
Il Configuration Summary ti ripropone l‟insieme delle scelte fatte precedentemente per chiedere se
procedure oppure no
Procediamo
Step 14 - Configuration Wizard Complete
A questo punto la configurazione egrave terminate e si deve decidere se uscire o meno Se avessimo
configurati solo gli esempi e PetStore qua potremmo decidere di rilanciare il Configuration Wizard
per fare tutti gli step precedenti a partire dallo step 9
Verifiche per lo sviluppo ed il funzionamento di Web Logic Server
Occorre verificare le variabili d‟ambiente sia CLASSPATH che PATH
CLASSPATH egrave una lista di directory e locazioni di java class usate dalle JVM
Come minimo CLASSPATH deve contenere la WL_HOMEserverlibweblogicjar e
JAVA_HOMEjrelibrtjar
Inoltre se avete usato la JVM Jrockit egrave necessario modificare il puntamento di PATH ad essa Vi
consiglio di farla dopo l‟installazione di Web Logic percheacute il giusto puntamento vi verragrave suggerito
dallo stesso script startWebLogiccmd
Inoltre in PATH vi conviene puntare anche a BEA_HOMEjrockit81sp1_141_03console per
poter sfruttare la console per il controllo della JVM JRockit
5
Alberatura del prodotto Web Logic
BEA HOME DIRECTORY
Directory o File Description Jdkxxx Egrave la directory contenente il jdk che fornisce la JVM ed I tools per compilare e
debuggare
logs Una directory che contiene history file delle installazioni e de-installazioni
user_projects Il domain container
utils Contiene utilitograve tra cui utilsjar che supporta l‟UpdateLicense utility
weblogic81 La directory che contiene la Web Logic Platform
licensebea File delle licenze in formato XML
registryxml E‟ un file in formato XML che contiene un record E‟ raccomandato di non editarlo
UpdateLicense Un file batch (Windows) o uno shell script (Unix) che aggiorna il file licensebea
DOMAIN CONTAINER DIRECTORY
Precedentemente abbiamo usato user_projects come ldquodomain container directoryrdquo
Directory Description applications Directory che contiene l‟applicazione sottoposta a deploying (ear war jar htm) Solo se egrave settato
l‟autodeploy Web Logic Server esegue un controllo per verificare se esistono nuove applicazioni
da sottoporre a deploying
userConfig Una directory in cui memorizzare informazioni per la sicurezza del dominio
logs Contiene i log file del dominio
myserver Una directory create per ogni Web Logic Server
Nella directory sono contenuti anche
I SetEnv script Questo script generalmente lancia poi un altro cmd per settare l‟ambiente
necessario
Script startxxxcmd per startare Web Logic nel dominio
Il file configxml per il dominio (anche questo egrave sconsigliato editare)
Il file fileRealmproperties che memorizza username e access control list per il dominio
Il file SerializedSystemInidat che egrave un salt(hash) che egrave usato per criptare la password
dell‟user del dominio Il salt egrave una stringa che randomicamente viene concatenata alla
password
WEB LOGIC HOME DIRECTORY
Directory o File Description common Una directory che condivide file e risorse con tutta la Web Logic Platform anche i jar usati
per il Configuration Wizard
samples Una directory che contiene esempi Dovrebbe contenere examples e Petstore
server Contiene software di Web Logic compreso driver terze parti JDBC
uninstall Contiene software per disinstallare componenti di Web Logic Platform
workshop Contiene Web Logic Workshop e documentazione
6
Start di Web Logic Server
Esistono almeno tre metodi
Sotto Windows Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt User Projects
--gt myDomain --gt Start myserver (Solo se avete creato il Windows Start Menu durante la
configurazione per chi sviluppa forse conviene)
Sotto WindowsUNIX Andare nella root del dominio ed eseguire a mano
startWebLogiccmd e viene richiesta la password di amministrazione
Sotto WindowsUNIX lanciare webLogicServerclass da linea di comando
Il metodo da dover per forza sapere egrave il lancio di startWebLogiccmd che egrave valido per tutte le
seguenti situazioni
Va bene per ogni sistema operativo
La conoscenza di come funzione tale script dagrave all‟amministratore un controllo maggiore del
prodotto
Lo script egrave copiabile e modificabile per ogni dominio
STARTWEBLOGICCMD
Il file egrave nel dominio creato Generalmente tale file si copia in startltdomaingtcmd
LE VARIABILI
WLS_USER quello di amministrazione
WLS_PW quello di amministrazione
JAVA_OPTIONS le opzioni passate alla JVM
JAVA_VM la modalitagrave con cui egrave lanciata la JVM (server classic hotspot)
MEM_ARGS regola l‟heap memory Regola i valori minimo e massimo che egrave consigliato di
tenere uguali (esempio -Xms200 e ndashXmx200) ed espressi in magabyte
DOMAIN_NAME il nome del dominio dove Web Logic Server risiede
SERVER_NAME il nome del server da startare
JAVA_HOME la directory della JVM
CLASSPATH la directory contente I class ejar necessary al funzionamento del server
Nello script si nota che viene usato il comando
java Argument [Optional Argument] webLogcServer
In genere gli Argument sono $JAVA_VM $MEM_ARGS $JAVA_OPTIONS Solo dopo gli
Argument si possono trovare istruzioni del tipo ndashDparametro=valore che possono essere
ldquoWebLogic specificrdquo (-Dweblogicltattributogt=ltvaloregt) oppure ldquoJava specificrdquo (-
Djavaltattributogt=ltvaloregt)
-Xms e ndashXmx
Fissano la dimensione minima e massima dell‟heap di memoria Un valore basso a 100 egrave possibile
ma la JVM saragrave lenta Un valore migliore egrave 200 consigliabile anche 512 o piugrave a seconda della
memoria disponibile sul sistema Se volete lavorare con Java seriamente dovreste avere almeno
512 Mbyte meglio 1 Gbyte
7
-Dweblogicmanagementdiscover
Se si lavora con una situazione Single Server (Admin Server e Web Server sono la stessa cosa)
allora porre a false tale JAVA_OPTIONS permette ad un Admin Server di evitare di scoprire se
esistono dei Managed Server In questo caso si evita un overhead inutile Tale opzione va aggiunta
manualmente
-DweblogicProductionModeEnabled
Se si ipotizza di lavorare in un ambiente di sviluppo vale false e viene anche configurato
l‟autodeploy
Administration Console
Da browser fare
httphostnameportconsole
esempio httplocalhost7001console
Inserire username e password dell‟amministratore e appariragrave una finestra divisa in due parti verticali
per l‟amministrazione del dominio mydomain
Il logout puograve avvenire su tale pagina nella parte alta a destra
Boot Identify File
Per una questione di sicurezza per evitare di dare al boot username e password la prima volta dopo
la configurazione e prima di startare Web Logic Server compilate un file di testo bootproperties
con due righe
username=username
password=password
Al primo boot il file viene soprascritto con una versione criptata e non verragrave piugrave richiesta username
e password
Considerazione si puograve farne a meno percheacute dopo la prima installazioneconfigurazione il file
criptato viene automaticamente creato
Shutdown con lrsquoAdministration Console
All‟ingresso nella consolle nella parte ad albero a sinistra scegliere la voce ldquoServersrdquo e scegliere il
nome del server su cui bisogna eseguire lo shutdown Il Click destro del mouse sul nome del server
fa aprire un menugrave da cui scegliere la voce ldquoStartStop this server helliprdquo E‟ consigliabile l‟uso di tale
metodo
Shutdown con weblogicAdmin utility
In mancanza di browser tale metodo egrave l‟unico valido ed egrave costituito dal comando
java weblogicAdmin [-url URL] [-username username] [-password password] COMAND arguments
8
dove COMAND deve valere SHUTDOWN (occorre per sicurezza passare anche ndashurl ndashusername ndash
password)
SHUTDOWN richiede come arguments [seconds] [ldquomessagerdquo]
Esempio
java weblogicAdmin -url httpmyhost7001 -username webgs9856 -password mahf1ncheduralungo SHUTDOWN 60
ldquoshutdowm tra 60 secondirdquo
ALTRI VALORI DI COMAND
SHUTDOWN come nel precedente
START richiede Node Manager
STARTINSTANDBY richiede Node Manager
RESUME
FORCESHUTDOWN
GETSTATE
PING
SERVERLOG
HELP
LICENSES
VERSION
In STANDBY un WebLogic Server ha scartato tutti i servizi ma accetta solo comandi da consolle Solitamente
WebLogic egrave in RUNNING mode
LA sintassi dei comandi egrave di seguito mostrata
java weblogicAdmin [-url URL] [-username username] [-password password] FORCESHUTDOWN [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] GETSTATE [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] PING [round-trip] [message-length]
java weblogicAdmin [-url URL] [-username username] [-password password] SERVERLOG [[starttime] [endtime]]
java weblogicAdmin HELP [COMMAND]
java weblogicAdmin [-url URL] [-username username] [-password password] LICENSES
java weblogicAdmin [-url URL] [-username username] [-password password] VERSION
JROCKIT ADMINISTATION CONSOLE
In startWebLogiccmd occorre settare JAVA_OPTIONS nel seguente modo
set JAVA_OPTIONS = -Djrockitmanagementserver=true
Allo start del server si deve vedere una riga del tipo
[JRockit] Management Server starter on port 7090
Sebbene ciograve funziona correttamente egrave da tener presente anche che il comando egrave diventato
deprecated Su questo punto non si comprende percheacute dato che al momento egrave l‟unico modo per
essere sicuri che si sta usando la JVM JRockit
Per vedere l‟andamento della JVM JRockit egrave possibile lanciare la sua consolle col comando
java ndashjar ManagementConsolejar
9
Con esso si ottiene una piccola finestra dove occorre dare il server name la porta (default 7090) il
connection name (localhost) In questo modo si puograve monitorare la Memoria il processore il sistema
etc per ogni porta in gioco
Deployment Tools
Una tipica applicazione web ha html class jar war in gioco La Administration Console fornisce
le stesse utilitagrave a meno di qualche piccola differenza per il deployment (webLogicDeployer) E‟
necessario perograve che il file system dove sono EAR WAR JAR RAR sia accessibile da WebLogic
Nel seguito per directory root si intende quella sotto applications
CREARE LA WEB APPLICATION DIRECTORY
Una Web Application si basa come sempre su un‟alberatura standard per tutti i Java Web Server
(vedi Tomcat ad esempio)
Directory Descrizione ltrootgt La document root dove risiedono html e le jsp che vengono accedute da browser
ltrootgtWEB-INF Qui risiedono webxml e weblogicxml deployment descriptors E‟ necessario che WEB-
INF sia scritto in tale modo (uppercase) Weblogicxml correla tutte le risorse necessarie
all‟applicazione per il suo funzionamento (es http session parameters https cookie
parameters JSP parameters resource reference security role container attributes etc)
ltrootgtWEB-INFclasses Qui risiedono i file class
ltrootgtWEB-INFlib Directory dove saranno posti i jar
Preferibilmente il nome della document-root (ltrootgt) egrave uguale a quella dell‟applicazione (Es
HelloWorldApp )
Se stiamo sviluppando dobbiamo crearci l‟alberatura per la prima volta manualmente
Se state sviluppando i sorgenti java depositateli nella root HelloWorldApp
Se stiamo effettuando un deploy basta mettere il WAR sotto la directory applications e avviare Web
Logic
Tale alberatura permette di poter fare l‟autodeploying di un‟applicazione war Naturalmente il
CLASSPATH deve prevedere la ltrootgtWEB-INFlib
CREARE UNA PAGINA HTML DI WELCOME
Creiamo un indexhtml nella root (HelloWorldApp directory)
lthtmlgt
ltheadgt
lttitlegtWelcome to my HelloWorldApplttitlegt
ltheadgt
ltbodygt
ltpgtWelcome to my HelloWorldApp
ltpgtlta href=rdquoMyServletrdquogtClick hereltagtto call my servlet
ltbodygt
10
lthtmlgt
CREARE UNA SERVLET
Creiamo la servlet MyServletjava in HelloWorldApp directory
package objectmindservlets
import javaxservlet
import javaxservlethttp
import javaio
public class MyServlet extends HttpServlet
public void service(HttpServletRequest req
HttpServletResponse res) throws IOException
ressetContentType(ldquotexthtmlrdquo)
PrinterWriter out = resgetWriter()
outprintln(ldquolthtmlgtltheadgtlttitlegtrdquo +
ldquoHello Worldlttitlegtltheadgtrdquo)
outprintln(ldquoltbodygtlth1gtHello Worldlth1gtltbodygtlthtmlgtrdquo)
Da linea di commando compiliamo
javac ndashd WEB-INFclasses MyServletjava
In tal modo sotto classes vi viene creato il package richiesto objectmindservlet che contiene
MyServletclass
STARTARE WEB LOGIC BUILDER
Per assemblare e deplorare l‟applicazione effettuiamo lo start di Web Logic Builder
Per fare ciograve egrave possibile lanciarlo da Windows con Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt Other Development Tools -gt WebLogic Builder
Altrimenti sotto WL_HOMEserverbin occorre effettuare da linea di comando
startWLBuildercmd
Dall‟editor effettuare File Open e cercare la directory HelloWorldApp e fare Open Al dialog box
d‟errore richiedere di creare per voi i deployment descriptor
Rimuovere indexjsp e indexhtm e selezionare il file indexhtml che fa parte dell‟applicazione
appena creata
11
Selezionare nella parte sinistra Servlets e verificare che MyServlet sia presente Poi nella parte
destra assicurarsi che nel campo URL Mapps sia presente MyServlet saltrimente usare il tasto
dolete e poi inserire MyServlet e fare Add
CREARE IL WAR PER IL DEPLOYING
Un primo metodo egrave creare il war a mano come al solito L‟altro egrave con la consolle
Colleghiamoci dalla Administration Console e scegliere ldquoHelpfuls Toolsrdquo Your deployed
resources
Scegliere ldquoWeb Application Modulesrdquo poi ldquoDeploy a new Web Application Modulerdquo poi cliccare
su applications e segnare (check) HelloWorldApp
Ora cliccare ldquoTarget Modulerdquo Infine cercare il bottone ldquoDeployrdquo e cliccarlo
TESTARE LrsquoAPPLICAZIONE
Per testare da browser egrave sufficiente digitare
httpltmachine_namegt7001HelloWorldAppindexhtml
httplocalhost7001HelloWorldAppindexhtml
In alternativa da Administration Console nella parte sinistra cliccare su Deployment Web
Applications Modules HelloWordApp
Spostarsi ora nella parte destra selezionando la voce ldquoTestingrdquo e cliccare su indexhtml
Esercitazioni Finisce qui la parte I Si consiglia di esercitarsi su tale parte osservando sempre di piugrave la
Administration Console
Provate a verificare che modificando la servlet funziona l‟auto-deploy
Create una JSP e verificate dove Web Logic Server compila la JSP e la trasforma in una servlet
Provate a creare il WAR e farne il deploy da Administration Console
Ringraziamenti Ringraziamo coloro che intenderanno fornire ulteriori indicazioni e suggerimenti
2
Installazione di Web Logic Server L‟installazione permette di installare WLS (Web Logic Server) WLI (Web Logic Integration)
WLP (Web Logic Portal) Web Logic Workshop
Step 1 - BEA NET INSTALLER BEA INSTALLER
Occorre disporre di Net Installer Lo si puograve scaricare da
httpcommercebeacomdownloadsweblogic_platformjsp
Oppure del BEA Installer su CD
Step 2 - BEA HOME DIRECTORY
Si esegue il programma selezionato e si sceglie la BEA Home Directory Il valore di default BEA
dovrebbe andar bene a meno che non esista giagrave o esiste uno standard aziendale da seguire In tal
caso cambiatelo Su Windows ad esempio egrave CBEA
Step 3 - INSTALLATION TYPE
Si potrebbe eseguire quella Typical o Complete ma il nostro obiettivo egrave imparare e comprendere e
non c‟egrave niente di meglio che fare una installazione Custom
Step 4 - CHOOSE COMPONENTS
Occorre scegliere le componenti da installare Selezionando una macro area nell‟albero a sinistra si
ottiene una breve descrizione a destra
D‟altra parte prima di installare provate a giocherellare a cliccare per vedere quali sono le
dipendenze delle macro aree Si puograve installare Web Logic Workshop senza Web Logic Server ad
esempio o solo Web Logic Server senza Workshop Si puograve installare Web Logic Integration da
solo Si puograve installare Web Logic Platform da solo
Ora per esercizio installiamo invece solo Web Logic Server ed anche Workshop
Step 5 - DOWNLOAD OPTION
Occorre indicare una directory d‟appoggio (Storage Directory) dove viene messo il prodotto per
spacchettarlo Inoltre va indicato se rimuovere il pacchetto dopo l‟installazione o meno Per
esperienza so che egrave meglio lasciare il pacchetto di installazione percheacute potrebbe essere necessario
installare poi dopo altre componenti o ri-installare eventualmente
Se in produzione si egrave dietro un firewall vanno indicati Host e Port dell‟http Proxy server Ciograve in un
ambiente di sviluppo non serve
Step 6 - Autoinstallation
A questo punto inizia l‟installazione Si consiglia di segnare la casellina dell‟autoinstallazione
Altrimenti si deve conoscere ogni tool sin dall‟inizio e lanciarlo manualmente Non egrave il caso
all‟inizio
Step 7 - Web Logic Server Product Directory
Va indicate la directory sotto la BEA Home directory dove fisicamente viene installato Web Logic
Su Windows ad esempio egrave CBEAWebLogic81
3
Step 8 - Domain Configuration Wizard
Web Logic Server esiste all‟interno di un contesto di dominio Un dominio egrave un insieme correlato di
risorse per Web Logic
Questo step tende quindi a definire il tipo ed il nome del dominio Vengono suggeriti diversi
template tipologie di dominio
WLS Examples Questo template crea un nuovo dominio nel quale Web Logic Server egrave
preconfigurato per lanciare le applicazioni di esempio Non si usa
WLS Petstore Questo template crea un nuovo dominio nel quale Web Logic Server egrave
preconfigurato per lanciare l‟applicazione Petstore Non si usa
WLS Domain Questo template crea un nuovo dominio a cui si dovragrave associare una nuova
applicazione E‟ questo template che si usa quando si sviluppano nuove applicazioni
Web Logic Workshop Questo template crea un nuovo dominio a cui si dovragrave associare una
nuova applicazione che utilizza web services ad esempio
In generale nella installazione giagrave si era prescelto di installare la voce ldquoServer Examplesrdquo quindi si
disporranno anche degli esempi e di Pet store
Infine occorre dare un nome al dominio che sia univoco (es mydomain)
Step 9 - Choose Server Type
Tale scelta egrave importante e va fatta consapevolmente tra le seguenti opzioni
Single Server (Standalone Server) crea un Web Logic Server che lavora anche da Admin
Server ed ospita le applicazioni (consigliata per lo sviluppo)
Admin Server with Managed Server(s) crea un Admin Server con uno o piugrave Managed
Server
Admin Server with Clustered Managed Server(s) crea un Admin Server con uno o piugrave
clustred Managed Server
Managed Server (with owning Admin Server configuration) usato a volte per estendere un
un Web Logic domain con un Managed Server
Inizialmente scegliamo Single Server
Step 10 - Domain Container Directory
Occorre specificare la top directory sotto cui mettere il domain container (contenitore dei domini)
Il default egrave user_projects (ad esempio gisp_project) sotto la BEA_HOME (Cbeauser_projects)
Step 11 - Configure
Una volta scelto Single Server occrre dare le seguenti informazioni
Server Name un nome univoco e non puograve essere uguale al nome del dominio altrimenti si
possono ottenere strani errori
4
Server Listen Address l‟IP address o il nome DNS della macchina (anche localhost) Se la
macchina ha un solo IP non va settato tale valore percheacute viene automaticamente scelto il
primary IP Va fatto solo se la macchina ha piugrave di un IP
Server Listen Port le richieste http vengono ricevute sulla porta di default 7001
eventualmente da cambiare se giagrave usata altrove
Server SSL Listen Port le richieste https vengono ricevute sulla porta di default 7002
eventualmente da cambiare se giagrave usata altrove Se non dovesse servire l‟https in sviluppo egrave
consigliabile allora di evitate di abilitare l‟ascolto anche sulla porta 7002 ottenendo migliori
prestazioni
Step 11 - Username e Password
Vanno inserite le username e password di amministrazione
Step 12 - Windows Service e Start Menu Entry
Sotto Windows si puograve settare Web Logic Server in modo che al bootstrap WebLogic Server parte
come servizio della macchina Basta rispondere bdquoYes‟ al Wizard
Inoltre sotto Windows egrave possibile anche avere un Start Menu Entry che generalmente gli
amministratori preferiscono evitare per avere un maggior controllo del prodotto
Step 13 - Configuration Summary
Il Configuration Summary ti ripropone l‟insieme delle scelte fatte precedentemente per chiedere se
procedure oppure no
Procediamo
Step 14 - Configuration Wizard Complete
A questo punto la configurazione egrave terminate e si deve decidere se uscire o meno Se avessimo
configurati solo gli esempi e PetStore qua potremmo decidere di rilanciare il Configuration Wizard
per fare tutti gli step precedenti a partire dallo step 9
Verifiche per lo sviluppo ed il funzionamento di Web Logic Server
Occorre verificare le variabili d‟ambiente sia CLASSPATH che PATH
CLASSPATH egrave una lista di directory e locazioni di java class usate dalle JVM
Come minimo CLASSPATH deve contenere la WL_HOMEserverlibweblogicjar e
JAVA_HOMEjrelibrtjar
Inoltre se avete usato la JVM Jrockit egrave necessario modificare il puntamento di PATH ad essa Vi
consiglio di farla dopo l‟installazione di Web Logic percheacute il giusto puntamento vi verragrave suggerito
dallo stesso script startWebLogiccmd
Inoltre in PATH vi conviene puntare anche a BEA_HOMEjrockit81sp1_141_03console per
poter sfruttare la console per il controllo della JVM JRockit
5
Alberatura del prodotto Web Logic
BEA HOME DIRECTORY
Directory o File Description Jdkxxx Egrave la directory contenente il jdk che fornisce la JVM ed I tools per compilare e
debuggare
logs Una directory che contiene history file delle installazioni e de-installazioni
user_projects Il domain container
utils Contiene utilitograve tra cui utilsjar che supporta l‟UpdateLicense utility
weblogic81 La directory che contiene la Web Logic Platform
licensebea File delle licenze in formato XML
registryxml E‟ un file in formato XML che contiene un record E‟ raccomandato di non editarlo
UpdateLicense Un file batch (Windows) o uno shell script (Unix) che aggiorna il file licensebea
DOMAIN CONTAINER DIRECTORY
Precedentemente abbiamo usato user_projects come ldquodomain container directoryrdquo
Directory Description applications Directory che contiene l‟applicazione sottoposta a deploying (ear war jar htm) Solo se egrave settato
l‟autodeploy Web Logic Server esegue un controllo per verificare se esistono nuove applicazioni
da sottoporre a deploying
userConfig Una directory in cui memorizzare informazioni per la sicurezza del dominio
logs Contiene i log file del dominio
myserver Una directory create per ogni Web Logic Server
Nella directory sono contenuti anche
I SetEnv script Questo script generalmente lancia poi un altro cmd per settare l‟ambiente
necessario
Script startxxxcmd per startare Web Logic nel dominio
Il file configxml per il dominio (anche questo egrave sconsigliato editare)
Il file fileRealmproperties che memorizza username e access control list per il dominio
Il file SerializedSystemInidat che egrave un salt(hash) che egrave usato per criptare la password
dell‟user del dominio Il salt egrave una stringa che randomicamente viene concatenata alla
password
WEB LOGIC HOME DIRECTORY
Directory o File Description common Una directory che condivide file e risorse con tutta la Web Logic Platform anche i jar usati
per il Configuration Wizard
samples Una directory che contiene esempi Dovrebbe contenere examples e Petstore
server Contiene software di Web Logic compreso driver terze parti JDBC
uninstall Contiene software per disinstallare componenti di Web Logic Platform
workshop Contiene Web Logic Workshop e documentazione
6
Start di Web Logic Server
Esistono almeno tre metodi
Sotto Windows Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt User Projects
--gt myDomain --gt Start myserver (Solo se avete creato il Windows Start Menu durante la
configurazione per chi sviluppa forse conviene)
Sotto WindowsUNIX Andare nella root del dominio ed eseguire a mano
startWebLogiccmd e viene richiesta la password di amministrazione
Sotto WindowsUNIX lanciare webLogicServerclass da linea di comando
Il metodo da dover per forza sapere egrave il lancio di startWebLogiccmd che egrave valido per tutte le
seguenti situazioni
Va bene per ogni sistema operativo
La conoscenza di come funzione tale script dagrave all‟amministratore un controllo maggiore del
prodotto
Lo script egrave copiabile e modificabile per ogni dominio
STARTWEBLOGICCMD
Il file egrave nel dominio creato Generalmente tale file si copia in startltdomaingtcmd
LE VARIABILI
WLS_USER quello di amministrazione
WLS_PW quello di amministrazione
JAVA_OPTIONS le opzioni passate alla JVM
JAVA_VM la modalitagrave con cui egrave lanciata la JVM (server classic hotspot)
MEM_ARGS regola l‟heap memory Regola i valori minimo e massimo che egrave consigliato di
tenere uguali (esempio -Xms200 e ndashXmx200) ed espressi in magabyte
DOMAIN_NAME il nome del dominio dove Web Logic Server risiede
SERVER_NAME il nome del server da startare
JAVA_HOME la directory della JVM
CLASSPATH la directory contente I class ejar necessary al funzionamento del server
Nello script si nota che viene usato il comando
java Argument [Optional Argument] webLogcServer
In genere gli Argument sono $JAVA_VM $MEM_ARGS $JAVA_OPTIONS Solo dopo gli
Argument si possono trovare istruzioni del tipo ndashDparametro=valore che possono essere
ldquoWebLogic specificrdquo (-Dweblogicltattributogt=ltvaloregt) oppure ldquoJava specificrdquo (-
Djavaltattributogt=ltvaloregt)
-Xms e ndashXmx
Fissano la dimensione minima e massima dell‟heap di memoria Un valore basso a 100 egrave possibile
ma la JVM saragrave lenta Un valore migliore egrave 200 consigliabile anche 512 o piugrave a seconda della
memoria disponibile sul sistema Se volete lavorare con Java seriamente dovreste avere almeno
512 Mbyte meglio 1 Gbyte
7
-Dweblogicmanagementdiscover
Se si lavora con una situazione Single Server (Admin Server e Web Server sono la stessa cosa)
allora porre a false tale JAVA_OPTIONS permette ad un Admin Server di evitare di scoprire se
esistono dei Managed Server In questo caso si evita un overhead inutile Tale opzione va aggiunta
manualmente
-DweblogicProductionModeEnabled
Se si ipotizza di lavorare in un ambiente di sviluppo vale false e viene anche configurato
l‟autodeploy
Administration Console
Da browser fare
httphostnameportconsole
esempio httplocalhost7001console
Inserire username e password dell‟amministratore e appariragrave una finestra divisa in due parti verticali
per l‟amministrazione del dominio mydomain
Il logout puograve avvenire su tale pagina nella parte alta a destra
Boot Identify File
Per una questione di sicurezza per evitare di dare al boot username e password la prima volta dopo
la configurazione e prima di startare Web Logic Server compilate un file di testo bootproperties
con due righe
username=username
password=password
Al primo boot il file viene soprascritto con una versione criptata e non verragrave piugrave richiesta username
e password
Considerazione si puograve farne a meno percheacute dopo la prima installazioneconfigurazione il file
criptato viene automaticamente creato
Shutdown con lrsquoAdministration Console
All‟ingresso nella consolle nella parte ad albero a sinistra scegliere la voce ldquoServersrdquo e scegliere il
nome del server su cui bisogna eseguire lo shutdown Il Click destro del mouse sul nome del server
fa aprire un menugrave da cui scegliere la voce ldquoStartStop this server helliprdquo E‟ consigliabile l‟uso di tale
metodo
Shutdown con weblogicAdmin utility
In mancanza di browser tale metodo egrave l‟unico valido ed egrave costituito dal comando
java weblogicAdmin [-url URL] [-username username] [-password password] COMAND arguments
8
dove COMAND deve valere SHUTDOWN (occorre per sicurezza passare anche ndashurl ndashusername ndash
password)
SHUTDOWN richiede come arguments [seconds] [ldquomessagerdquo]
Esempio
java weblogicAdmin -url httpmyhost7001 -username webgs9856 -password mahf1ncheduralungo SHUTDOWN 60
ldquoshutdowm tra 60 secondirdquo
ALTRI VALORI DI COMAND
SHUTDOWN come nel precedente
START richiede Node Manager
STARTINSTANDBY richiede Node Manager
RESUME
FORCESHUTDOWN
GETSTATE
PING
SERVERLOG
HELP
LICENSES
VERSION
In STANDBY un WebLogic Server ha scartato tutti i servizi ma accetta solo comandi da consolle Solitamente
WebLogic egrave in RUNNING mode
LA sintassi dei comandi egrave di seguito mostrata
java weblogicAdmin [-url URL] [-username username] [-password password] FORCESHUTDOWN [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] GETSTATE [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] PING [round-trip] [message-length]
java weblogicAdmin [-url URL] [-username username] [-password password] SERVERLOG [[starttime] [endtime]]
java weblogicAdmin HELP [COMMAND]
java weblogicAdmin [-url URL] [-username username] [-password password] LICENSES
java weblogicAdmin [-url URL] [-username username] [-password password] VERSION
JROCKIT ADMINISTATION CONSOLE
In startWebLogiccmd occorre settare JAVA_OPTIONS nel seguente modo
set JAVA_OPTIONS = -Djrockitmanagementserver=true
Allo start del server si deve vedere una riga del tipo
[JRockit] Management Server starter on port 7090
Sebbene ciograve funziona correttamente egrave da tener presente anche che il comando egrave diventato
deprecated Su questo punto non si comprende percheacute dato che al momento egrave l‟unico modo per
essere sicuri che si sta usando la JVM JRockit
Per vedere l‟andamento della JVM JRockit egrave possibile lanciare la sua consolle col comando
java ndashjar ManagementConsolejar
9
Con esso si ottiene una piccola finestra dove occorre dare il server name la porta (default 7090) il
connection name (localhost) In questo modo si puograve monitorare la Memoria il processore il sistema
etc per ogni porta in gioco
Deployment Tools
Una tipica applicazione web ha html class jar war in gioco La Administration Console fornisce
le stesse utilitagrave a meno di qualche piccola differenza per il deployment (webLogicDeployer) E‟
necessario perograve che il file system dove sono EAR WAR JAR RAR sia accessibile da WebLogic
Nel seguito per directory root si intende quella sotto applications
CREARE LA WEB APPLICATION DIRECTORY
Una Web Application si basa come sempre su un‟alberatura standard per tutti i Java Web Server
(vedi Tomcat ad esempio)
Directory Descrizione ltrootgt La document root dove risiedono html e le jsp che vengono accedute da browser
ltrootgtWEB-INF Qui risiedono webxml e weblogicxml deployment descriptors E‟ necessario che WEB-
INF sia scritto in tale modo (uppercase) Weblogicxml correla tutte le risorse necessarie
all‟applicazione per il suo funzionamento (es http session parameters https cookie
parameters JSP parameters resource reference security role container attributes etc)
ltrootgtWEB-INFclasses Qui risiedono i file class
ltrootgtWEB-INFlib Directory dove saranno posti i jar
Preferibilmente il nome della document-root (ltrootgt) egrave uguale a quella dell‟applicazione (Es
HelloWorldApp )
Se stiamo sviluppando dobbiamo crearci l‟alberatura per la prima volta manualmente
Se state sviluppando i sorgenti java depositateli nella root HelloWorldApp
Se stiamo effettuando un deploy basta mettere il WAR sotto la directory applications e avviare Web
Logic
Tale alberatura permette di poter fare l‟autodeploying di un‟applicazione war Naturalmente il
CLASSPATH deve prevedere la ltrootgtWEB-INFlib
CREARE UNA PAGINA HTML DI WELCOME
Creiamo un indexhtml nella root (HelloWorldApp directory)
lthtmlgt
ltheadgt
lttitlegtWelcome to my HelloWorldApplttitlegt
ltheadgt
ltbodygt
ltpgtWelcome to my HelloWorldApp
ltpgtlta href=rdquoMyServletrdquogtClick hereltagtto call my servlet
ltbodygt
10
lthtmlgt
CREARE UNA SERVLET
Creiamo la servlet MyServletjava in HelloWorldApp directory
package objectmindservlets
import javaxservlet
import javaxservlethttp
import javaio
public class MyServlet extends HttpServlet
public void service(HttpServletRequest req
HttpServletResponse res) throws IOException
ressetContentType(ldquotexthtmlrdquo)
PrinterWriter out = resgetWriter()
outprintln(ldquolthtmlgtltheadgtlttitlegtrdquo +
ldquoHello Worldlttitlegtltheadgtrdquo)
outprintln(ldquoltbodygtlth1gtHello Worldlth1gtltbodygtlthtmlgtrdquo)
Da linea di commando compiliamo
javac ndashd WEB-INFclasses MyServletjava
In tal modo sotto classes vi viene creato il package richiesto objectmindservlet che contiene
MyServletclass
STARTARE WEB LOGIC BUILDER
Per assemblare e deplorare l‟applicazione effettuiamo lo start di Web Logic Builder
Per fare ciograve egrave possibile lanciarlo da Windows con Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt Other Development Tools -gt WebLogic Builder
Altrimenti sotto WL_HOMEserverbin occorre effettuare da linea di comando
startWLBuildercmd
Dall‟editor effettuare File Open e cercare la directory HelloWorldApp e fare Open Al dialog box
d‟errore richiedere di creare per voi i deployment descriptor
Rimuovere indexjsp e indexhtm e selezionare il file indexhtml che fa parte dell‟applicazione
appena creata
11
Selezionare nella parte sinistra Servlets e verificare che MyServlet sia presente Poi nella parte
destra assicurarsi che nel campo URL Mapps sia presente MyServlet saltrimente usare il tasto
dolete e poi inserire MyServlet e fare Add
CREARE IL WAR PER IL DEPLOYING
Un primo metodo egrave creare il war a mano come al solito L‟altro egrave con la consolle
Colleghiamoci dalla Administration Console e scegliere ldquoHelpfuls Toolsrdquo Your deployed
resources
Scegliere ldquoWeb Application Modulesrdquo poi ldquoDeploy a new Web Application Modulerdquo poi cliccare
su applications e segnare (check) HelloWorldApp
Ora cliccare ldquoTarget Modulerdquo Infine cercare il bottone ldquoDeployrdquo e cliccarlo
TESTARE LrsquoAPPLICAZIONE
Per testare da browser egrave sufficiente digitare
httpltmachine_namegt7001HelloWorldAppindexhtml
httplocalhost7001HelloWorldAppindexhtml
In alternativa da Administration Console nella parte sinistra cliccare su Deployment Web
Applications Modules HelloWordApp
Spostarsi ora nella parte destra selezionando la voce ldquoTestingrdquo e cliccare su indexhtml
Esercitazioni Finisce qui la parte I Si consiglia di esercitarsi su tale parte osservando sempre di piugrave la
Administration Console
Provate a verificare che modificando la servlet funziona l‟auto-deploy
Create una JSP e verificate dove Web Logic Server compila la JSP e la trasforma in una servlet
Provate a creare il WAR e farne il deploy da Administration Console
Ringraziamenti Ringraziamo coloro che intenderanno fornire ulteriori indicazioni e suggerimenti
3
Step 8 - Domain Configuration Wizard
Web Logic Server esiste all‟interno di un contesto di dominio Un dominio egrave un insieme correlato di
risorse per Web Logic
Questo step tende quindi a definire il tipo ed il nome del dominio Vengono suggeriti diversi
template tipologie di dominio
WLS Examples Questo template crea un nuovo dominio nel quale Web Logic Server egrave
preconfigurato per lanciare le applicazioni di esempio Non si usa
WLS Petstore Questo template crea un nuovo dominio nel quale Web Logic Server egrave
preconfigurato per lanciare l‟applicazione Petstore Non si usa
WLS Domain Questo template crea un nuovo dominio a cui si dovragrave associare una nuova
applicazione E‟ questo template che si usa quando si sviluppano nuove applicazioni
Web Logic Workshop Questo template crea un nuovo dominio a cui si dovragrave associare una
nuova applicazione che utilizza web services ad esempio
In generale nella installazione giagrave si era prescelto di installare la voce ldquoServer Examplesrdquo quindi si
disporranno anche degli esempi e di Pet store
Infine occorre dare un nome al dominio che sia univoco (es mydomain)
Step 9 - Choose Server Type
Tale scelta egrave importante e va fatta consapevolmente tra le seguenti opzioni
Single Server (Standalone Server) crea un Web Logic Server che lavora anche da Admin
Server ed ospita le applicazioni (consigliata per lo sviluppo)
Admin Server with Managed Server(s) crea un Admin Server con uno o piugrave Managed
Server
Admin Server with Clustered Managed Server(s) crea un Admin Server con uno o piugrave
clustred Managed Server
Managed Server (with owning Admin Server configuration) usato a volte per estendere un
un Web Logic domain con un Managed Server
Inizialmente scegliamo Single Server
Step 10 - Domain Container Directory
Occorre specificare la top directory sotto cui mettere il domain container (contenitore dei domini)
Il default egrave user_projects (ad esempio gisp_project) sotto la BEA_HOME (Cbeauser_projects)
Step 11 - Configure
Una volta scelto Single Server occrre dare le seguenti informazioni
Server Name un nome univoco e non puograve essere uguale al nome del dominio altrimenti si
possono ottenere strani errori
4
Server Listen Address l‟IP address o il nome DNS della macchina (anche localhost) Se la
macchina ha un solo IP non va settato tale valore percheacute viene automaticamente scelto il
primary IP Va fatto solo se la macchina ha piugrave di un IP
Server Listen Port le richieste http vengono ricevute sulla porta di default 7001
eventualmente da cambiare se giagrave usata altrove
Server SSL Listen Port le richieste https vengono ricevute sulla porta di default 7002
eventualmente da cambiare se giagrave usata altrove Se non dovesse servire l‟https in sviluppo egrave
consigliabile allora di evitate di abilitare l‟ascolto anche sulla porta 7002 ottenendo migliori
prestazioni
Step 11 - Username e Password
Vanno inserite le username e password di amministrazione
Step 12 - Windows Service e Start Menu Entry
Sotto Windows si puograve settare Web Logic Server in modo che al bootstrap WebLogic Server parte
come servizio della macchina Basta rispondere bdquoYes‟ al Wizard
Inoltre sotto Windows egrave possibile anche avere un Start Menu Entry che generalmente gli
amministratori preferiscono evitare per avere un maggior controllo del prodotto
Step 13 - Configuration Summary
Il Configuration Summary ti ripropone l‟insieme delle scelte fatte precedentemente per chiedere se
procedure oppure no
Procediamo
Step 14 - Configuration Wizard Complete
A questo punto la configurazione egrave terminate e si deve decidere se uscire o meno Se avessimo
configurati solo gli esempi e PetStore qua potremmo decidere di rilanciare il Configuration Wizard
per fare tutti gli step precedenti a partire dallo step 9
Verifiche per lo sviluppo ed il funzionamento di Web Logic Server
Occorre verificare le variabili d‟ambiente sia CLASSPATH che PATH
CLASSPATH egrave una lista di directory e locazioni di java class usate dalle JVM
Come minimo CLASSPATH deve contenere la WL_HOMEserverlibweblogicjar e
JAVA_HOMEjrelibrtjar
Inoltre se avete usato la JVM Jrockit egrave necessario modificare il puntamento di PATH ad essa Vi
consiglio di farla dopo l‟installazione di Web Logic percheacute il giusto puntamento vi verragrave suggerito
dallo stesso script startWebLogiccmd
Inoltre in PATH vi conviene puntare anche a BEA_HOMEjrockit81sp1_141_03console per
poter sfruttare la console per il controllo della JVM JRockit
5
Alberatura del prodotto Web Logic
BEA HOME DIRECTORY
Directory o File Description Jdkxxx Egrave la directory contenente il jdk che fornisce la JVM ed I tools per compilare e
debuggare
logs Una directory che contiene history file delle installazioni e de-installazioni
user_projects Il domain container
utils Contiene utilitograve tra cui utilsjar che supporta l‟UpdateLicense utility
weblogic81 La directory che contiene la Web Logic Platform
licensebea File delle licenze in formato XML
registryxml E‟ un file in formato XML che contiene un record E‟ raccomandato di non editarlo
UpdateLicense Un file batch (Windows) o uno shell script (Unix) che aggiorna il file licensebea
DOMAIN CONTAINER DIRECTORY
Precedentemente abbiamo usato user_projects come ldquodomain container directoryrdquo
Directory Description applications Directory che contiene l‟applicazione sottoposta a deploying (ear war jar htm) Solo se egrave settato
l‟autodeploy Web Logic Server esegue un controllo per verificare se esistono nuove applicazioni
da sottoporre a deploying
userConfig Una directory in cui memorizzare informazioni per la sicurezza del dominio
logs Contiene i log file del dominio
myserver Una directory create per ogni Web Logic Server
Nella directory sono contenuti anche
I SetEnv script Questo script generalmente lancia poi un altro cmd per settare l‟ambiente
necessario
Script startxxxcmd per startare Web Logic nel dominio
Il file configxml per il dominio (anche questo egrave sconsigliato editare)
Il file fileRealmproperties che memorizza username e access control list per il dominio
Il file SerializedSystemInidat che egrave un salt(hash) che egrave usato per criptare la password
dell‟user del dominio Il salt egrave una stringa che randomicamente viene concatenata alla
password
WEB LOGIC HOME DIRECTORY
Directory o File Description common Una directory che condivide file e risorse con tutta la Web Logic Platform anche i jar usati
per il Configuration Wizard
samples Una directory che contiene esempi Dovrebbe contenere examples e Petstore
server Contiene software di Web Logic compreso driver terze parti JDBC
uninstall Contiene software per disinstallare componenti di Web Logic Platform
workshop Contiene Web Logic Workshop e documentazione
6
Start di Web Logic Server
Esistono almeno tre metodi
Sotto Windows Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt User Projects
--gt myDomain --gt Start myserver (Solo se avete creato il Windows Start Menu durante la
configurazione per chi sviluppa forse conviene)
Sotto WindowsUNIX Andare nella root del dominio ed eseguire a mano
startWebLogiccmd e viene richiesta la password di amministrazione
Sotto WindowsUNIX lanciare webLogicServerclass da linea di comando
Il metodo da dover per forza sapere egrave il lancio di startWebLogiccmd che egrave valido per tutte le
seguenti situazioni
Va bene per ogni sistema operativo
La conoscenza di come funzione tale script dagrave all‟amministratore un controllo maggiore del
prodotto
Lo script egrave copiabile e modificabile per ogni dominio
STARTWEBLOGICCMD
Il file egrave nel dominio creato Generalmente tale file si copia in startltdomaingtcmd
LE VARIABILI
WLS_USER quello di amministrazione
WLS_PW quello di amministrazione
JAVA_OPTIONS le opzioni passate alla JVM
JAVA_VM la modalitagrave con cui egrave lanciata la JVM (server classic hotspot)
MEM_ARGS regola l‟heap memory Regola i valori minimo e massimo che egrave consigliato di
tenere uguali (esempio -Xms200 e ndashXmx200) ed espressi in magabyte
DOMAIN_NAME il nome del dominio dove Web Logic Server risiede
SERVER_NAME il nome del server da startare
JAVA_HOME la directory della JVM
CLASSPATH la directory contente I class ejar necessary al funzionamento del server
Nello script si nota che viene usato il comando
java Argument [Optional Argument] webLogcServer
In genere gli Argument sono $JAVA_VM $MEM_ARGS $JAVA_OPTIONS Solo dopo gli
Argument si possono trovare istruzioni del tipo ndashDparametro=valore che possono essere
ldquoWebLogic specificrdquo (-Dweblogicltattributogt=ltvaloregt) oppure ldquoJava specificrdquo (-
Djavaltattributogt=ltvaloregt)
-Xms e ndashXmx
Fissano la dimensione minima e massima dell‟heap di memoria Un valore basso a 100 egrave possibile
ma la JVM saragrave lenta Un valore migliore egrave 200 consigliabile anche 512 o piugrave a seconda della
memoria disponibile sul sistema Se volete lavorare con Java seriamente dovreste avere almeno
512 Mbyte meglio 1 Gbyte
7
-Dweblogicmanagementdiscover
Se si lavora con una situazione Single Server (Admin Server e Web Server sono la stessa cosa)
allora porre a false tale JAVA_OPTIONS permette ad un Admin Server di evitare di scoprire se
esistono dei Managed Server In questo caso si evita un overhead inutile Tale opzione va aggiunta
manualmente
-DweblogicProductionModeEnabled
Se si ipotizza di lavorare in un ambiente di sviluppo vale false e viene anche configurato
l‟autodeploy
Administration Console
Da browser fare
httphostnameportconsole
esempio httplocalhost7001console
Inserire username e password dell‟amministratore e appariragrave una finestra divisa in due parti verticali
per l‟amministrazione del dominio mydomain
Il logout puograve avvenire su tale pagina nella parte alta a destra
Boot Identify File
Per una questione di sicurezza per evitare di dare al boot username e password la prima volta dopo
la configurazione e prima di startare Web Logic Server compilate un file di testo bootproperties
con due righe
username=username
password=password
Al primo boot il file viene soprascritto con una versione criptata e non verragrave piugrave richiesta username
e password
Considerazione si puograve farne a meno percheacute dopo la prima installazioneconfigurazione il file
criptato viene automaticamente creato
Shutdown con lrsquoAdministration Console
All‟ingresso nella consolle nella parte ad albero a sinistra scegliere la voce ldquoServersrdquo e scegliere il
nome del server su cui bisogna eseguire lo shutdown Il Click destro del mouse sul nome del server
fa aprire un menugrave da cui scegliere la voce ldquoStartStop this server helliprdquo E‟ consigliabile l‟uso di tale
metodo
Shutdown con weblogicAdmin utility
In mancanza di browser tale metodo egrave l‟unico valido ed egrave costituito dal comando
java weblogicAdmin [-url URL] [-username username] [-password password] COMAND arguments
8
dove COMAND deve valere SHUTDOWN (occorre per sicurezza passare anche ndashurl ndashusername ndash
password)
SHUTDOWN richiede come arguments [seconds] [ldquomessagerdquo]
Esempio
java weblogicAdmin -url httpmyhost7001 -username webgs9856 -password mahf1ncheduralungo SHUTDOWN 60
ldquoshutdowm tra 60 secondirdquo
ALTRI VALORI DI COMAND
SHUTDOWN come nel precedente
START richiede Node Manager
STARTINSTANDBY richiede Node Manager
RESUME
FORCESHUTDOWN
GETSTATE
PING
SERVERLOG
HELP
LICENSES
VERSION
In STANDBY un WebLogic Server ha scartato tutti i servizi ma accetta solo comandi da consolle Solitamente
WebLogic egrave in RUNNING mode
LA sintassi dei comandi egrave di seguito mostrata
java weblogicAdmin [-url URL] [-username username] [-password password] FORCESHUTDOWN [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] GETSTATE [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] PING [round-trip] [message-length]
java weblogicAdmin [-url URL] [-username username] [-password password] SERVERLOG [[starttime] [endtime]]
java weblogicAdmin HELP [COMMAND]
java weblogicAdmin [-url URL] [-username username] [-password password] LICENSES
java weblogicAdmin [-url URL] [-username username] [-password password] VERSION
JROCKIT ADMINISTATION CONSOLE
In startWebLogiccmd occorre settare JAVA_OPTIONS nel seguente modo
set JAVA_OPTIONS = -Djrockitmanagementserver=true
Allo start del server si deve vedere una riga del tipo
[JRockit] Management Server starter on port 7090
Sebbene ciograve funziona correttamente egrave da tener presente anche che il comando egrave diventato
deprecated Su questo punto non si comprende percheacute dato che al momento egrave l‟unico modo per
essere sicuri che si sta usando la JVM JRockit
Per vedere l‟andamento della JVM JRockit egrave possibile lanciare la sua consolle col comando
java ndashjar ManagementConsolejar
9
Con esso si ottiene una piccola finestra dove occorre dare il server name la porta (default 7090) il
connection name (localhost) In questo modo si puograve monitorare la Memoria il processore il sistema
etc per ogni porta in gioco
Deployment Tools
Una tipica applicazione web ha html class jar war in gioco La Administration Console fornisce
le stesse utilitagrave a meno di qualche piccola differenza per il deployment (webLogicDeployer) E‟
necessario perograve che il file system dove sono EAR WAR JAR RAR sia accessibile da WebLogic
Nel seguito per directory root si intende quella sotto applications
CREARE LA WEB APPLICATION DIRECTORY
Una Web Application si basa come sempre su un‟alberatura standard per tutti i Java Web Server
(vedi Tomcat ad esempio)
Directory Descrizione ltrootgt La document root dove risiedono html e le jsp che vengono accedute da browser
ltrootgtWEB-INF Qui risiedono webxml e weblogicxml deployment descriptors E‟ necessario che WEB-
INF sia scritto in tale modo (uppercase) Weblogicxml correla tutte le risorse necessarie
all‟applicazione per il suo funzionamento (es http session parameters https cookie
parameters JSP parameters resource reference security role container attributes etc)
ltrootgtWEB-INFclasses Qui risiedono i file class
ltrootgtWEB-INFlib Directory dove saranno posti i jar
Preferibilmente il nome della document-root (ltrootgt) egrave uguale a quella dell‟applicazione (Es
HelloWorldApp )
Se stiamo sviluppando dobbiamo crearci l‟alberatura per la prima volta manualmente
Se state sviluppando i sorgenti java depositateli nella root HelloWorldApp
Se stiamo effettuando un deploy basta mettere il WAR sotto la directory applications e avviare Web
Logic
Tale alberatura permette di poter fare l‟autodeploying di un‟applicazione war Naturalmente il
CLASSPATH deve prevedere la ltrootgtWEB-INFlib
CREARE UNA PAGINA HTML DI WELCOME
Creiamo un indexhtml nella root (HelloWorldApp directory)
lthtmlgt
ltheadgt
lttitlegtWelcome to my HelloWorldApplttitlegt
ltheadgt
ltbodygt
ltpgtWelcome to my HelloWorldApp
ltpgtlta href=rdquoMyServletrdquogtClick hereltagtto call my servlet
ltbodygt
10
lthtmlgt
CREARE UNA SERVLET
Creiamo la servlet MyServletjava in HelloWorldApp directory
package objectmindservlets
import javaxservlet
import javaxservlethttp
import javaio
public class MyServlet extends HttpServlet
public void service(HttpServletRequest req
HttpServletResponse res) throws IOException
ressetContentType(ldquotexthtmlrdquo)
PrinterWriter out = resgetWriter()
outprintln(ldquolthtmlgtltheadgtlttitlegtrdquo +
ldquoHello Worldlttitlegtltheadgtrdquo)
outprintln(ldquoltbodygtlth1gtHello Worldlth1gtltbodygtlthtmlgtrdquo)
Da linea di commando compiliamo
javac ndashd WEB-INFclasses MyServletjava
In tal modo sotto classes vi viene creato il package richiesto objectmindservlet che contiene
MyServletclass
STARTARE WEB LOGIC BUILDER
Per assemblare e deplorare l‟applicazione effettuiamo lo start di Web Logic Builder
Per fare ciograve egrave possibile lanciarlo da Windows con Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt Other Development Tools -gt WebLogic Builder
Altrimenti sotto WL_HOMEserverbin occorre effettuare da linea di comando
startWLBuildercmd
Dall‟editor effettuare File Open e cercare la directory HelloWorldApp e fare Open Al dialog box
d‟errore richiedere di creare per voi i deployment descriptor
Rimuovere indexjsp e indexhtm e selezionare il file indexhtml che fa parte dell‟applicazione
appena creata
11
Selezionare nella parte sinistra Servlets e verificare che MyServlet sia presente Poi nella parte
destra assicurarsi che nel campo URL Mapps sia presente MyServlet saltrimente usare il tasto
dolete e poi inserire MyServlet e fare Add
CREARE IL WAR PER IL DEPLOYING
Un primo metodo egrave creare il war a mano come al solito L‟altro egrave con la consolle
Colleghiamoci dalla Administration Console e scegliere ldquoHelpfuls Toolsrdquo Your deployed
resources
Scegliere ldquoWeb Application Modulesrdquo poi ldquoDeploy a new Web Application Modulerdquo poi cliccare
su applications e segnare (check) HelloWorldApp
Ora cliccare ldquoTarget Modulerdquo Infine cercare il bottone ldquoDeployrdquo e cliccarlo
TESTARE LrsquoAPPLICAZIONE
Per testare da browser egrave sufficiente digitare
httpltmachine_namegt7001HelloWorldAppindexhtml
httplocalhost7001HelloWorldAppindexhtml
In alternativa da Administration Console nella parte sinistra cliccare su Deployment Web
Applications Modules HelloWordApp
Spostarsi ora nella parte destra selezionando la voce ldquoTestingrdquo e cliccare su indexhtml
Esercitazioni Finisce qui la parte I Si consiglia di esercitarsi su tale parte osservando sempre di piugrave la
Administration Console
Provate a verificare che modificando la servlet funziona l‟auto-deploy
Create una JSP e verificate dove Web Logic Server compila la JSP e la trasforma in una servlet
Provate a creare il WAR e farne il deploy da Administration Console
Ringraziamenti Ringraziamo coloro che intenderanno fornire ulteriori indicazioni e suggerimenti
4
Server Listen Address l‟IP address o il nome DNS della macchina (anche localhost) Se la
macchina ha un solo IP non va settato tale valore percheacute viene automaticamente scelto il
primary IP Va fatto solo se la macchina ha piugrave di un IP
Server Listen Port le richieste http vengono ricevute sulla porta di default 7001
eventualmente da cambiare se giagrave usata altrove
Server SSL Listen Port le richieste https vengono ricevute sulla porta di default 7002
eventualmente da cambiare se giagrave usata altrove Se non dovesse servire l‟https in sviluppo egrave
consigliabile allora di evitate di abilitare l‟ascolto anche sulla porta 7002 ottenendo migliori
prestazioni
Step 11 - Username e Password
Vanno inserite le username e password di amministrazione
Step 12 - Windows Service e Start Menu Entry
Sotto Windows si puograve settare Web Logic Server in modo che al bootstrap WebLogic Server parte
come servizio della macchina Basta rispondere bdquoYes‟ al Wizard
Inoltre sotto Windows egrave possibile anche avere un Start Menu Entry che generalmente gli
amministratori preferiscono evitare per avere un maggior controllo del prodotto
Step 13 - Configuration Summary
Il Configuration Summary ti ripropone l‟insieme delle scelte fatte precedentemente per chiedere se
procedure oppure no
Procediamo
Step 14 - Configuration Wizard Complete
A questo punto la configurazione egrave terminate e si deve decidere se uscire o meno Se avessimo
configurati solo gli esempi e PetStore qua potremmo decidere di rilanciare il Configuration Wizard
per fare tutti gli step precedenti a partire dallo step 9
Verifiche per lo sviluppo ed il funzionamento di Web Logic Server
Occorre verificare le variabili d‟ambiente sia CLASSPATH che PATH
CLASSPATH egrave una lista di directory e locazioni di java class usate dalle JVM
Come minimo CLASSPATH deve contenere la WL_HOMEserverlibweblogicjar e
JAVA_HOMEjrelibrtjar
Inoltre se avete usato la JVM Jrockit egrave necessario modificare il puntamento di PATH ad essa Vi
consiglio di farla dopo l‟installazione di Web Logic percheacute il giusto puntamento vi verragrave suggerito
dallo stesso script startWebLogiccmd
Inoltre in PATH vi conviene puntare anche a BEA_HOMEjrockit81sp1_141_03console per
poter sfruttare la console per il controllo della JVM JRockit
5
Alberatura del prodotto Web Logic
BEA HOME DIRECTORY
Directory o File Description Jdkxxx Egrave la directory contenente il jdk che fornisce la JVM ed I tools per compilare e
debuggare
logs Una directory che contiene history file delle installazioni e de-installazioni
user_projects Il domain container
utils Contiene utilitograve tra cui utilsjar che supporta l‟UpdateLicense utility
weblogic81 La directory che contiene la Web Logic Platform
licensebea File delle licenze in formato XML
registryxml E‟ un file in formato XML che contiene un record E‟ raccomandato di non editarlo
UpdateLicense Un file batch (Windows) o uno shell script (Unix) che aggiorna il file licensebea
DOMAIN CONTAINER DIRECTORY
Precedentemente abbiamo usato user_projects come ldquodomain container directoryrdquo
Directory Description applications Directory che contiene l‟applicazione sottoposta a deploying (ear war jar htm) Solo se egrave settato
l‟autodeploy Web Logic Server esegue un controllo per verificare se esistono nuove applicazioni
da sottoporre a deploying
userConfig Una directory in cui memorizzare informazioni per la sicurezza del dominio
logs Contiene i log file del dominio
myserver Una directory create per ogni Web Logic Server
Nella directory sono contenuti anche
I SetEnv script Questo script generalmente lancia poi un altro cmd per settare l‟ambiente
necessario
Script startxxxcmd per startare Web Logic nel dominio
Il file configxml per il dominio (anche questo egrave sconsigliato editare)
Il file fileRealmproperties che memorizza username e access control list per il dominio
Il file SerializedSystemInidat che egrave un salt(hash) che egrave usato per criptare la password
dell‟user del dominio Il salt egrave una stringa che randomicamente viene concatenata alla
password
WEB LOGIC HOME DIRECTORY
Directory o File Description common Una directory che condivide file e risorse con tutta la Web Logic Platform anche i jar usati
per il Configuration Wizard
samples Una directory che contiene esempi Dovrebbe contenere examples e Petstore
server Contiene software di Web Logic compreso driver terze parti JDBC
uninstall Contiene software per disinstallare componenti di Web Logic Platform
workshop Contiene Web Logic Workshop e documentazione
6
Start di Web Logic Server
Esistono almeno tre metodi
Sotto Windows Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt User Projects
--gt myDomain --gt Start myserver (Solo se avete creato il Windows Start Menu durante la
configurazione per chi sviluppa forse conviene)
Sotto WindowsUNIX Andare nella root del dominio ed eseguire a mano
startWebLogiccmd e viene richiesta la password di amministrazione
Sotto WindowsUNIX lanciare webLogicServerclass da linea di comando
Il metodo da dover per forza sapere egrave il lancio di startWebLogiccmd che egrave valido per tutte le
seguenti situazioni
Va bene per ogni sistema operativo
La conoscenza di come funzione tale script dagrave all‟amministratore un controllo maggiore del
prodotto
Lo script egrave copiabile e modificabile per ogni dominio
STARTWEBLOGICCMD
Il file egrave nel dominio creato Generalmente tale file si copia in startltdomaingtcmd
LE VARIABILI
WLS_USER quello di amministrazione
WLS_PW quello di amministrazione
JAVA_OPTIONS le opzioni passate alla JVM
JAVA_VM la modalitagrave con cui egrave lanciata la JVM (server classic hotspot)
MEM_ARGS regola l‟heap memory Regola i valori minimo e massimo che egrave consigliato di
tenere uguali (esempio -Xms200 e ndashXmx200) ed espressi in magabyte
DOMAIN_NAME il nome del dominio dove Web Logic Server risiede
SERVER_NAME il nome del server da startare
JAVA_HOME la directory della JVM
CLASSPATH la directory contente I class ejar necessary al funzionamento del server
Nello script si nota che viene usato il comando
java Argument [Optional Argument] webLogcServer
In genere gli Argument sono $JAVA_VM $MEM_ARGS $JAVA_OPTIONS Solo dopo gli
Argument si possono trovare istruzioni del tipo ndashDparametro=valore che possono essere
ldquoWebLogic specificrdquo (-Dweblogicltattributogt=ltvaloregt) oppure ldquoJava specificrdquo (-
Djavaltattributogt=ltvaloregt)
-Xms e ndashXmx
Fissano la dimensione minima e massima dell‟heap di memoria Un valore basso a 100 egrave possibile
ma la JVM saragrave lenta Un valore migliore egrave 200 consigliabile anche 512 o piugrave a seconda della
memoria disponibile sul sistema Se volete lavorare con Java seriamente dovreste avere almeno
512 Mbyte meglio 1 Gbyte
7
-Dweblogicmanagementdiscover
Se si lavora con una situazione Single Server (Admin Server e Web Server sono la stessa cosa)
allora porre a false tale JAVA_OPTIONS permette ad un Admin Server di evitare di scoprire se
esistono dei Managed Server In questo caso si evita un overhead inutile Tale opzione va aggiunta
manualmente
-DweblogicProductionModeEnabled
Se si ipotizza di lavorare in un ambiente di sviluppo vale false e viene anche configurato
l‟autodeploy
Administration Console
Da browser fare
httphostnameportconsole
esempio httplocalhost7001console
Inserire username e password dell‟amministratore e appariragrave una finestra divisa in due parti verticali
per l‟amministrazione del dominio mydomain
Il logout puograve avvenire su tale pagina nella parte alta a destra
Boot Identify File
Per una questione di sicurezza per evitare di dare al boot username e password la prima volta dopo
la configurazione e prima di startare Web Logic Server compilate un file di testo bootproperties
con due righe
username=username
password=password
Al primo boot il file viene soprascritto con una versione criptata e non verragrave piugrave richiesta username
e password
Considerazione si puograve farne a meno percheacute dopo la prima installazioneconfigurazione il file
criptato viene automaticamente creato
Shutdown con lrsquoAdministration Console
All‟ingresso nella consolle nella parte ad albero a sinistra scegliere la voce ldquoServersrdquo e scegliere il
nome del server su cui bisogna eseguire lo shutdown Il Click destro del mouse sul nome del server
fa aprire un menugrave da cui scegliere la voce ldquoStartStop this server helliprdquo E‟ consigliabile l‟uso di tale
metodo
Shutdown con weblogicAdmin utility
In mancanza di browser tale metodo egrave l‟unico valido ed egrave costituito dal comando
java weblogicAdmin [-url URL] [-username username] [-password password] COMAND arguments
8
dove COMAND deve valere SHUTDOWN (occorre per sicurezza passare anche ndashurl ndashusername ndash
password)
SHUTDOWN richiede come arguments [seconds] [ldquomessagerdquo]
Esempio
java weblogicAdmin -url httpmyhost7001 -username webgs9856 -password mahf1ncheduralungo SHUTDOWN 60
ldquoshutdowm tra 60 secondirdquo
ALTRI VALORI DI COMAND
SHUTDOWN come nel precedente
START richiede Node Manager
STARTINSTANDBY richiede Node Manager
RESUME
FORCESHUTDOWN
GETSTATE
PING
SERVERLOG
HELP
LICENSES
VERSION
In STANDBY un WebLogic Server ha scartato tutti i servizi ma accetta solo comandi da consolle Solitamente
WebLogic egrave in RUNNING mode
LA sintassi dei comandi egrave di seguito mostrata
java weblogicAdmin [-url URL] [-username username] [-password password] FORCESHUTDOWN [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] GETSTATE [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] PING [round-trip] [message-length]
java weblogicAdmin [-url URL] [-username username] [-password password] SERVERLOG [[starttime] [endtime]]
java weblogicAdmin HELP [COMMAND]
java weblogicAdmin [-url URL] [-username username] [-password password] LICENSES
java weblogicAdmin [-url URL] [-username username] [-password password] VERSION
JROCKIT ADMINISTATION CONSOLE
In startWebLogiccmd occorre settare JAVA_OPTIONS nel seguente modo
set JAVA_OPTIONS = -Djrockitmanagementserver=true
Allo start del server si deve vedere una riga del tipo
[JRockit] Management Server starter on port 7090
Sebbene ciograve funziona correttamente egrave da tener presente anche che il comando egrave diventato
deprecated Su questo punto non si comprende percheacute dato che al momento egrave l‟unico modo per
essere sicuri che si sta usando la JVM JRockit
Per vedere l‟andamento della JVM JRockit egrave possibile lanciare la sua consolle col comando
java ndashjar ManagementConsolejar
9
Con esso si ottiene una piccola finestra dove occorre dare il server name la porta (default 7090) il
connection name (localhost) In questo modo si puograve monitorare la Memoria il processore il sistema
etc per ogni porta in gioco
Deployment Tools
Una tipica applicazione web ha html class jar war in gioco La Administration Console fornisce
le stesse utilitagrave a meno di qualche piccola differenza per il deployment (webLogicDeployer) E‟
necessario perograve che il file system dove sono EAR WAR JAR RAR sia accessibile da WebLogic
Nel seguito per directory root si intende quella sotto applications
CREARE LA WEB APPLICATION DIRECTORY
Una Web Application si basa come sempre su un‟alberatura standard per tutti i Java Web Server
(vedi Tomcat ad esempio)
Directory Descrizione ltrootgt La document root dove risiedono html e le jsp che vengono accedute da browser
ltrootgtWEB-INF Qui risiedono webxml e weblogicxml deployment descriptors E‟ necessario che WEB-
INF sia scritto in tale modo (uppercase) Weblogicxml correla tutte le risorse necessarie
all‟applicazione per il suo funzionamento (es http session parameters https cookie
parameters JSP parameters resource reference security role container attributes etc)
ltrootgtWEB-INFclasses Qui risiedono i file class
ltrootgtWEB-INFlib Directory dove saranno posti i jar
Preferibilmente il nome della document-root (ltrootgt) egrave uguale a quella dell‟applicazione (Es
HelloWorldApp )
Se stiamo sviluppando dobbiamo crearci l‟alberatura per la prima volta manualmente
Se state sviluppando i sorgenti java depositateli nella root HelloWorldApp
Se stiamo effettuando un deploy basta mettere il WAR sotto la directory applications e avviare Web
Logic
Tale alberatura permette di poter fare l‟autodeploying di un‟applicazione war Naturalmente il
CLASSPATH deve prevedere la ltrootgtWEB-INFlib
CREARE UNA PAGINA HTML DI WELCOME
Creiamo un indexhtml nella root (HelloWorldApp directory)
lthtmlgt
ltheadgt
lttitlegtWelcome to my HelloWorldApplttitlegt
ltheadgt
ltbodygt
ltpgtWelcome to my HelloWorldApp
ltpgtlta href=rdquoMyServletrdquogtClick hereltagtto call my servlet
ltbodygt
10
lthtmlgt
CREARE UNA SERVLET
Creiamo la servlet MyServletjava in HelloWorldApp directory
package objectmindservlets
import javaxservlet
import javaxservlethttp
import javaio
public class MyServlet extends HttpServlet
public void service(HttpServletRequest req
HttpServletResponse res) throws IOException
ressetContentType(ldquotexthtmlrdquo)
PrinterWriter out = resgetWriter()
outprintln(ldquolthtmlgtltheadgtlttitlegtrdquo +
ldquoHello Worldlttitlegtltheadgtrdquo)
outprintln(ldquoltbodygtlth1gtHello Worldlth1gtltbodygtlthtmlgtrdquo)
Da linea di commando compiliamo
javac ndashd WEB-INFclasses MyServletjava
In tal modo sotto classes vi viene creato il package richiesto objectmindservlet che contiene
MyServletclass
STARTARE WEB LOGIC BUILDER
Per assemblare e deplorare l‟applicazione effettuiamo lo start di Web Logic Builder
Per fare ciograve egrave possibile lanciarlo da Windows con Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt Other Development Tools -gt WebLogic Builder
Altrimenti sotto WL_HOMEserverbin occorre effettuare da linea di comando
startWLBuildercmd
Dall‟editor effettuare File Open e cercare la directory HelloWorldApp e fare Open Al dialog box
d‟errore richiedere di creare per voi i deployment descriptor
Rimuovere indexjsp e indexhtm e selezionare il file indexhtml che fa parte dell‟applicazione
appena creata
11
Selezionare nella parte sinistra Servlets e verificare che MyServlet sia presente Poi nella parte
destra assicurarsi che nel campo URL Mapps sia presente MyServlet saltrimente usare il tasto
dolete e poi inserire MyServlet e fare Add
CREARE IL WAR PER IL DEPLOYING
Un primo metodo egrave creare il war a mano come al solito L‟altro egrave con la consolle
Colleghiamoci dalla Administration Console e scegliere ldquoHelpfuls Toolsrdquo Your deployed
resources
Scegliere ldquoWeb Application Modulesrdquo poi ldquoDeploy a new Web Application Modulerdquo poi cliccare
su applications e segnare (check) HelloWorldApp
Ora cliccare ldquoTarget Modulerdquo Infine cercare il bottone ldquoDeployrdquo e cliccarlo
TESTARE LrsquoAPPLICAZIONE
Per testare da browser egrave sufficiente digitare
httpltmachine_namegt7001HelloWorldAppindexhtml
httplocalhost7001HelloWorldAppindexhtml
In alternativa da Administration Console nella parte sinistra cliccare su Deployment Web
Applications Modules HelloWordApp
Spostarsi ora nella parte destra selezionando la voce ldquoTestingrdquo e cliccare su indexhtml
Esercitazioni Finisce qui la parte I Si consiglia di esercitarsi su tale parte osservando sempre di piugrave la
Administration Console
Provate a verificare che modificando la servlet funziona l‟auto-deploy
Create una JSP e verificate dove Web Logic Server compila la JSP e la trasforma in una servlet
Provate a creare il WAR e farne il deploy da Administration Console
Ringraziamenti Ringraziamo coloro che intenderanno fornire ulteriori indicazioni e suggerimenti
5
Alberatura del prodotto Web Logic
BEA HOME DIRECTORY
Directory o File Description Jdkxxx Egrave la directory contenente il jdk che fornisce la JVM ed I tools per compilare e
debuggare
logs Una directory che contiene history file delle installazioni e de-installazioni
user_projects Il domain container
utils Contiene utilitograve tra cui utilsjar che supporta l‟UpdateLicense utility
weblogic81 La directory che contiene la Web Logic Platform
licensebea File delle licenze in formato XML
registryxml E‟ un file in formato XML che contiene un record E‟ raccomandato di non editarlo
UpdateLicense Un file batch (Windows) o uno shell script (Unix) che aggiorna il file licensebea
DOMAIN CONTAINER DIRECTORY
Precedentemente abbiamo usato user_projects come ldquodomain container directoryrdquo
Directory Description applications Directory che contiene l‟applicazione sottoposta a deploying (ear war jar htm) Solo se egrave settato
l‟autodeploy Web Logic Server esegue un controllo per verificare se esistono nuove applicazioni
da sottoporre a deploying
userConfig Una directory in cui memorizzare informazioni per la sicurezza del dominio
logs Contiene i log file del dominio
myserver Una directory create per ogni Web Logic Server
Nella directory sono contenuti anche
I SetEnv script Questo script generalmente lancia poi un altro cmd per settare l‟ambiente
necessario
Script startxxxcmd per startare Web Logic nel dominio
Il file configxml per il dominio (anche questo egrave sconsigliato editare)
Il file fileRealmproperties che memorizza username e access control list per il dominio
Il file SerializedSystemInidat che egrave un salt(hash) che egrave usato per criptare la password
dell‟user del dominio Il salt egrave una stringa che randomicamente viene concatenata alla
password
WEB LOGIC HOME DIRECTORY
Directory o File Description common Una directory che condivide file e risorse con tutta la Web Logic Platform anche i jar usati
per il Configuration Wizard
samples Una directory che contiene esempi Dovrebbe contenere examples e Petstore
server Contiene software di Web Logic compreso driver terze parti JDBC
uninstall Contiene software per disinstallare componenti di Web Logic Platform
workshop Contiene Web Logic Workshop e documentazione
6
Start di Web Logic Server
Esistono almeno tre metodi
Sotto Windows Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt User Projects
--gt myDomain --gt Start myserver (Solo se avete creato il Windows Start Menu durante la
configurazione per chi sviluppa forse conviene)
Sotto WindowsUNIX Andare nella root del dominio ed eseguire a mano
startWebLogiccmd e viene richiesta la password di amministrazione
Sotto WindowsUNIX lanciare webLogicServerclass da linea di comando
Il metodo da dover per forza sapere egrave il lancio di startWebLogiccmd che egrave valido per tutte le
seguenti situazioni
Va bene per ogni sistema operativo
La conoscenza di come funzione tale script dagrave all‟amministratore un controllo maggiore del
prodotto
Lo script egrave copiabile e modificabile per ogni dominio
STARTWEBLOGICCMD
Il file egrave nel dominio creato Generalmente tale file si copia in startltdomaingtcmd
LE VARIABILI
WLS_USER quello di amministrazione
WLS_PW quello di amministrazione
JAVA_OPTIONS le opzioni passate alla JVM
JAVA_VM la modalitagrave con cui egrave lanciata la JVM (server classic hotspot)
MEM_ARGS regola l‟heap memory Regola i valori minimo e massimo che egrave consigliato di
tenere uguali (esempio -Xms200 e ndashXmx200) ed espressi in magabyte
DOMAIN_NAME il nome del dominio dove Web Logic Server risiede
SERVER_NAME il nome del server da startare
JAVA_HOME la directory della JVM
CLASSPATH la directory contente I class ejar necessary al funzionamento del server
Nello script si nota che viene usato il comando
java Argument [Optional Argument] webLogcServer
In genere gli Argument sono $JAVA_VM $MEM_ARGS $JAVA_OPTIONS Solo dopo gli
Argument si possono trovare istruzioni del tipo ndashDparametro=valore che possono essere
ldquoWebLogic specificrdquo (-Dweblogicltattributogt=ltvaloregt) oppure ldquoJava specificrdquo (-
Djavaltattributogt=ltvaloregt)
-Xms e ndashXmx
Fissano la dimensione minima e massima dell‟heap di memoria Un valore basso a 100 egrave possibile
ma la JVM saragrave lenta Un valore migliore egrave 200 consigliabile anche 512 o piugrave a seconda della
memoria disponibile sul sistema Se volete lavorare con Java seriamente dovreste avere almeno
512 Mbyte meglio 1 Gbyte
7
-Dweblogicmanagementdiscover
Se si lavora con una situazione Single Server (Admin Server e Web Server sono la stessa cosa)
allora porre a false tale JAVA_OPTIONS permette ad un Admin Server di evitare di scoprire se
esistono dei Managed Server In questo caso si evita un overhead inutile Tale opzione va aggiunta
manualmente
-DweblogicProductionModeEnabled
Se si ipotizza di lavorare in un ambiente di sviluppo vale false e viene anche configurato
l‟autodeploy
Administration Console
Da browser fare
httphostnameportconsole
esempio httplocalhost7001console
Inserire username e password dell‟amministratore e appariragrave una finestra divisa in due parti verticali
per l‟amministrazione del dominio mydomain
Il logout puograve avvenire su tale pagina nella parte alta a destra
Boot Identify File
Per una questione di sicurezza per evitare di dare al boot username e password la prima volta dopo
la configurazione e prima di startare Web Logic Server compilate un file di testo bootproperties
con due righe
username=username
password=password
Al primo boot il file viene soprascritto con una versione criptata e non verragrave piugrave richiesta username
e password
Considerazione si puograve farne a meno percheacute dopo la prima installazioneconfigurazione il file
criptato viene automaticamente creato
Shutdown con lrsquoAdministration Console
All‟ingresso nella consolle nella parte ad albero a sinistra scegliere la voce ldquoServersrdquo e scegliere il
nome del server su cui bisogna eseguire lo shutdown Il Click destro del mouse sul nome del server
fa aprire un menugrave da cui scegliere la voce ldquoStartStop this server helliprdquo E‟ consigliabile l‟uso di tale
metodo
Shutdown con weblogicAdmin utility
In mancanza di browser tale metodo egrave l‟unico valido ed egrave costituito dal comando
java weblogicAdmin [-url URL] [-username username] [-password password] COMAND arguments
8
dove COMAND deve valere SHUTDOWN (occorre per sicurezza passare anche ndashurl ndashusername ndash
password)
SHUTDOWN richiede come arguments [seconds] [ldquomessagerdquo]
Esempio
java weblogicAdmin -url httpmyhost7001 -username webgs9856 -password mahf1ncheduralungo SHUTDOWN 60
ldquoshutdowm tra 60 secondirdquo
ALTRI VALORI DI COMAND
SHUTDOWN come nel precedente
START richiede Node Manager
STARTINSTANDBY richiede Node Manager
RESUME
FORCESHUTDOWN
GETSTATE
PING
SERVERLOG
HELP
LICENSES
VERSION
In STANDBY un WebLogic Server ha scartato tutti i servizi ma accetta solo comandi da consolle Solitamente
WebLogic egrave in RUNNING mode
LA sintassi dei comandi egrave di seguito mostrata
java weblogicAdmin [-url URL] [-username username] [-password password] FORCESHUTDOWN [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] GETSTATE [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] PING [round-trip] [message-length]
java weblogicAdmin [-url URL] [-username username] [-password password] SERVERLOG [[starttime] [endtime]]
java weblogicAdmin HELP [COMMAND]
java weblogicAdmin [-url URL] [-username username] [-password password] LICENSES
java weblogicAdmin [-url URL] [-username username] [-password password] VERSION
JROCKIT ADMINISTATION CONSOLE
In startWebLogiccmd occorre settare JAVA_OPTIONS nel seguente modo
set JAVA_OPTIONS = -Djrockitmanagementserver=true
Allo start del server si deve vedere una riga del tipo
[JRockit] Management Server starter on port 7090
Sebbene ciograve funziona correttamente egrave da tener presente anche che il comando egrave diventato
deprecated Su questo punto non si comprende percheacute dato che al momento egrave l‟unico modo per
essere sicuri che si sta usando la JVM JRockit
Per vedere l‟andamento della JVM JRockit egrave possibile lanciare la sua consolle col comando
java ndashjar ManagementConsolejar
9
Con esso si ottiene una piccola finestra dove occorre dare il server name la porta (default 7090) il
connection name (localhost) In questo modo si puograve monitorare la Memoria il processore il sistema
etc per ogni porta in gioco
Deployment Tools
Una tipica applicazione web ha html class jar war in gioco La Administration Console fornisce
le stesse utilitagrave a meno di qualche piccola differenza per il deployment (webLogicDeployer) E‟
necessario perograve che il file system dove sono EAR WAR JAR RAR sia accessibile da WebLogic
Nel seguito per directory root si intende quella sotto applications
CREARE LA WEB APPLICATION DIRECTORY
Una Web Application si basa come sempre su un‟alberatura standard per tutti i Java Web Server
(vedi Tomcat ad esempio)
Directory Descrizione ltrootgt La document root dove risiedono html e le jsp che vengono accedute da browser
ltrootgtWEB-INF Qui risiedono webxml e weblogicxml deployment descriptors E‟ necessario che WEB-
INF sia scritto in tale modo (uppercase) Weblogicxml correla tutte le risorse necessarie
all‟applicazione per il suo funzionamento (es http session parameters https cookie
parameters JSP parameters resource reference security role container attributes etc)
ltrootgtWEB-INFclasses Qui risiedono i file class
ltrootgtWEB-INFlib Directory dove saranno posti i jar
Preferibilmente il nome della document-root (ltrootgt) egrave uguale a quella dell‟applicazione (Es
HelloWorldApp )
Se stiamo sviluppando dobbiamo crearci l‟alberatura per la prima volta manualmente
Se state sviluppando i sorgenti java depositateli nella root HelloWorldApp
Se stiamo effettuando un deploy basta mettere il WAR sotto la directory applications e avviare Web
Logic
Tale alberatura permette di poter fare l‟autodeploying di un‟applicazione war Naturalmente il
CLASSPATH deve prevedere la ltrootgtWEB-INFlib
CREARE UNA PAGINA HTML DI WELCOME
Creiamo un indexhtml nella root (HelloWorldApp directory)
lthtmlgt
ltheadgt
lttitlegtWelcome to my HelloWorldApplttitlegt
ltheadgt
ltbodygt
ltpgtWelcome to my HelloWorldApp
ltpgtlta href=rdquoMyServletrdquogtClick hereltagtto call my servlet
ltbodygt
10
lthtmlgt
CREARE UNA SERVLET
Creiamo la servlet MyServletjava in HelloWorldApp directory
package objectmindservlets
import javaxservlet
import javaxservlethttp
import javaio
public class MyServlet extends HttpServlet
public void service(HttpServletRequest req
HttpServletResponse res) throws IOException
ressetContentType(ldquotexthtmlrdquo)
PrinterWriter out = resgetWriter()
outprintln(ldquolthtmlgtltheadgtlttitlegtrdquo +
ldquoHello Worldlttitlegtltheadgtrdquo)
outprintln(ldquoltbodygtlth1gtHello Worldlth1gtltbodygtlthtmlgtrdquo)
Da linea di commando compiliamo
javac ndashd WEB-INFclasses MyServletjava
In tal modo sotto classes vi viene creato il package richiesto objectmindservlet che contiene
MyServletclass
STARTARE WEB LOGIC BUILDER
Per assemblare e deplorare l‟applicazione effettuiamo lo start di Web Logic Builder
Per fare ciograve egrave possibile lanciarlo da Windows con Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt Other Development Tools -gt WebLogic Builder
Altrimenti sotto WL_HOMEserverbin occorre effettuare da linea di comando
startWLBuildercmd
Dall‟editor effettuare File Open e cercare la directory HelloWorldApp e fare Open Al dialog box
d‟errore richiedere di creare per voi i deployment descriptor
Rimuovere indexjsp e indexhtm e selezionare il file indexhtml che fa parte dell‟applicazione
appena creata
11
Selezionare nella parte sinistra Servlets e verificare che MyServlet sia presente Poi nella parte
destra assicurarsi che nel campo URL Mapps sia presente MyServlet saltrimente usare il tasto
dolete e poi inserire MyServlet e fare Add
CREARE IL WAR PER IL DEPLOYING
Un primo metodo egrave creare il war a mano come al solito L‟altro egrave con la consolle
Colleghiamoci dalla Administration Console e scegliere ldquoHelpfuls Toolsrdquo Your deployed
resources
Scegliere ldquoWeb Application Modulesrdquo poi ldquoDeploy a new Web Application Modulerdquo poi cliccare
su applications e segnare (check) HelloWorldApp
Ora cliccare ldquoTarget Modulerdquo Infine cercare il bottone ldquoDeployrdquo e cliccarlo
TESTARE LrsquoAPPLICAZIONE
Per testare da browser egrave sufficiente digitare
httpltmachine_namegt7001HelloWorldAppindexhtml
httplocalhost7001HelloWorldAppindexhtml
In alternativa da Administration Console nella parte sinistra cliccare su Deployment Web
Applications Modules HelloWordApp
Spostarsi ora nella parte destra selezionando la voce ldquoTestingrdquo e cliccare su indexhtml
Esercitazioni Finisce qui la parte I Si consiglia di esercitarsi su tale parte osservando sempre di piugrave la
Administration Console
Provate a verificare che modificando la servlet funziona l‟auto-deploy
Create una JSP e verificate dove Web Logic Server compila la JSP e la trasforma in una servlet
Provate a creare il WAR e farne il deploy da Administration Console
Ringraziamenti Ringraziamo coloro che intenderanno fornire ulteriori indicazioni e suggerimenti
6
Start di Web Logic Server
Esistono almeno tre metodi
Sotto Windows Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt User Projects
--gt myDomain --gt Start myserver (Solo se avete creato il Windows Start Menu durante la
configurazione per chi sviluppa forse conviene)
Sotto WindowsUNIX Andare nella root del dominio ed eseguire a mano
startWebLogiccmd e viene richiesta la password di amministrazione
Sotto WindowsUNIX lanciare webLogicServerclass da linea di comando
Il metodo da dover per forza sapere egrave il lancio di startWebLogiccmd che egrave valido per tutte le
seguenti situazioni
Va bene per ogni sistema operativo
La conoscenza di come funzione tale script dagrave all‟amministratore un controllo maggiore del
prodotto
Lo script egrave copiabile e modificabile per ogni dominio
STARTWEBLOGICCMD
Il file egrave nel dominio creato Generalmente tale file si copia in startltdomaingtcmd
LE VARIABILI
WLS_USER quello di amministrazione
WLS_PW quello di amministrazione
JAVA_OPTIONS le opzioni passate alla JVM
JAVA_VM la modalitagrave con cui egrave lanciata la JVM (server classic hotspot)
MEM_ARGS regola l‟heap memory Regola i valori minimo e massimo che egrave consigliato di
tenere uguali (esempio -Xms200 e ndashXmx200) ed espressi in magabyte
DOMAIN_NAME il nome del dominio dove Web Logic Server risiede
SERVER_NAME il nome del server da startare
JAVA_HOME la directory della JVM
CLASSPATH la directory contente I class ejar necessary al funzionamento del server
Nello script si nota che viene usato il comando
java Argument [Optional Argument] webLogcServer
In genere gli Argument sono $JAVA_VM $MEM_ARGS $JAVA_OPTIONS Solo dopo gli
Argument si possono trovare istruzioni del tipo ndashDparametro=valore che possono essere
ldquoWebLogic specificrdquo (-Dweblogicltattributogt=ltvaloregt) oppure ldquoJava specificrdquo (-
Djavaltattributogt=ltvaloregt)
-Xms e ndashXmx
Fissano la dimensione minima e massima dell‟heap di memoria Un valore basso a 100 egrave possibile
ma la JVM saragrave lenta Un valore migliore egrave 200 consigliabile anche 512 o piugrave a seconda della
memoria disponibile sul sistema Se volete lavorare con Java seriamente dovreste avere almeno
512 Mbyte meglio 1 Gbyte
7
-Dweblogicmanagementdiscover
Se si lavora con una situazione Single Server (Admin Server e Web Server sono la stessa cosa)
allora porre a false tale JAVA_OPTIONS permette ad un Admin Server di evitare di scoprire se
esistono dei Managed Server In questo caso si evita un overhead inutile Tale opzione va aggiunta
manualmente
-DweblogicProductionModeEnabled
Se si ipotizza di lavorare in un ambiente di sviluppo vale false e viene anche configurato
l‟autodeploy
Administration Console
Da browser fare
httphostnameportconsole
esempio httplocalhost7001console
Inserire username e password dell‟amministratore e appariragrave una finestra divisa in due parti verticali
per l‟amministrazione del dominio mydomain
Il logout puograve avvenire su tale pagina nella parte alta a destra
Boot Identify File
Per una questione di sicurezza per evitare di dare al boot username e password la prima volta dopo
la configurazione e prima di startare Web Logic Server compilate un file di testo bootproperties
con due righe
username=username
password=password
Al primo boot il file viene soprascritto con una versione criptata e non verragrave piugrave richiesta username
e password
Considerazione si puograve farne a meno percheacute dopo la prima installazioneconfigurazione il file
criptato viene automaticamente creato
Shutdown con lrsquoAdministration Console
All‟ingresso nella consolle nella parte ad albero a sinistra scegliere la voce ldquoServersrdquo e scegliere il
nome del server su cui bisogna eseguire lo shutdown Il Click destro del mouse sul nome del server
fa aprire un menugrave da cui scegliere la voce ldquoStartStop this server helliprdquo E‟ consigliabile l‟uso di tale
metodo
Shutdown con weblogicAdmin utility
In mancanza di browser tale metodo egrave l‟unico valido ed egrave costituito dal comando
java weblogicAdmin [-url URL] [-username username] [-password password] COMAND arguments
8
dove COMAND deve valere SHUTDOWN (occorre per sicurezza passare anche ndashurl ndashusername ndash
password)
SHUTDOWN richiede come arguments [seconds] [ldquomessagerdquo]
Esempio
java weblogicAdmin -url httpmyhost7001 -username webgs9856 -password mahf1ncheduralungo SHUTDOWN 60
ldquoshutdowm tra 60 secondirdquo
ALTRI VALORI DI COMAND
SHUTDOWN come nel precedente
START richiede Node Manager
STARTINSTANDBY richiede Node Manager
RESUME
FORCESHUTDOWN
GETSTATE
PING
SERVERLOG
HELP
LICENSES
VERSION
In STANDBY un WebLogic Server ha scartato tutti i servizi ma accetta solo comandi da consolle Solitamente
WebLogic egrave in RUNNING mode
LA sintassi dei comandi egrave di seguito mostrata
java weblogicAdmin [-url URL] [-username username] [-password password] FORCESHUTDOWN [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] GETSTATE [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] PING [round-trip] [message-length]
java weblogicAdmin [-url URL] [-username username] [-password password] SERVERLOG [[starttime] [endtime]]
java weblogicAdmin HELP [COMMAND]
java weblogicAdmin [-url URL] [-username username] [-password password] LICENSES
java weblogicAdmin [-url URL] [-username username] [-password password] VERSION
JROCKIT ADMINISTATION CONSOLE
In startWebLogiccmd occorre settare JAVA_OPTIONS nel seguente modo
set JAVA_OPTIONS = -Djrockitmanagementserver=true
Allo start del server si deve vedere una riga del tipo
[JRockit] Management Server starter on port 7090
Sebbene ciograve funziona correttamente egrave da tener presente anche che il comando egrave diventato
deprecated Su questo punto non si comprende percheacute dato che al momento egrave l‟unico modo per
essere sicuri che si sta usando la JVM JRockit
Per vedere l‟andamento della JVM JRockit egrave possibile lanciare la sua consolle col comando
java ndashjar ManagementConsolejar
9
Con esso si ottiene una piccola finestra dove occorre dare il server name la porta (default 7090) il
connection name (localhost) In questo modo si puograve monitorare la Memoria il processore il sistema
etc per ogni porta in gioco
Deployment Tools
Una tipica applicazione web ha html class jar war in gioco La Administration Console fornisce
le stesse utilitagrave a meno di qualche piccola differenza per il deployment (webLogicDeployer) E‟
necessario perograve che il file system dove sono EAR WAR JAR RAR sia accessibile da WebLogic
Nel seguito per directory root si intende quella sotto applications
CREARE LA WEB APPLICATION DIRECTORY
Una Web Application si basa come sempre su un‟alberatura standard per tutti i Java Web Server
(vedi Tomcat ad esempio)
Directory Descrizione ltrootgt La document root dove risiedono html e le jsp che vengono accedute da browser
ltrootgtWEB-INF Qui risiedono webxml e weblogicxml deployment descriptors E‟ necessario che WEB-
INF sia scritto in tale modo (uppercase) Weblogicxml correla tutte le risorse necessarie
all‟applicazione per il suo funzionamento (es http session parameters https cookie
parameters JSP parameters resource reference security role container attributes etc)
ltrootgtWEB-INFclasses Qui risiedono i file class
ltrootgtWEB-INFlib Directory dove saranno posti i jar
Preferibilmente il nome della document-root (ltrootgt) egrave uguale a quella dell‟applicazione (Es
HelloWorldApp )
Se stiamo sviluppando dobbiamo crearci l‟alberatura per la prima volta manualmente
Se state sviluppando i sorgenti java depositateli nella root HelloWorldApp
Se stiamo effettuando un deploy basta mettere il WAR sotto la directory applications e avviare Web
Logic
Tale alberatura permette di poter fare l‟autodeploying di un‟applicazione war Naturalmente il
CLASSPATH deve prevedere la ltrootgtWEB-INFlib
CREARE UNA PAGINA HTML DI WELCOME
Creiamo un indexhtml nella root (HelloWorldApp directory)
lthtmlgt
ltheadgt
lttitlegtWelcome to my HelloWorldApplttitlegt
ltheadgt
ltbodygt
ltpgtWelcome to my HelloWorldApp
ltpgtlta href=rdquoMyServletrdquogtClick hereltagtto call my servlet
ltbodygt
10
lthtmlgt
CREARE UNA SERVLET
Creiamo la servlet MyServletjava in HelloWorldApp directory
package objectmindservlets
import javaxservlet
import javaxservlethttp
import javaio
public class MyServlet extends HttpServlet
public void service(HttpServletRequest req
HttpServletResponse res) throws IOException
ressetContentType(ldquotexthtmlrdquo)
PrinterWriter out = resgetWriter()
outprintln(ldquolthtmlgtltheadgtlttitlegtrdquo +
ldquoHello Worldlttitlegtltheadgtrdquo)
outprintln(ldquoltbodygtlth1gtHello Worldlth1gtltbodygtlthtmlgtrdquo)
Da linea di commando compiliamo
javac ndashd WEB-INFclasses MyServletjava
In tal modo sotto classes vi viene creato il package richiesto objectmindservlet che contiene
MyServletclass
STARTARE WEB LOGIC BUILDER
Per assemblare e deplorare l‟applicazione effettuiamo lo start di Web Logic Builder
Per fare ciograve egrave possibile lanciarlo da Windows con Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt Other Development Tools -gt WebLogic Builder
Altrimenti sotto WL_HOMEserverbin occorre effettuare da linea di comando
startWLBuildercmd
Dall‟editor effettuare File Open e cercare la directory HelloWorldApp e fare Open Al dialog box
d‟errore richiedere di creare per voi i deployment descriptor
Rimuovere indexjsp e indexhtm e selezionare il file indexhtml che fa parte dell‟applicazione
appena creata
11
Selezionare nella parte sinistra Servlets e verificare che MyServlet sia presente Poi nella parte
destra assicurarsi che nel campo URL Mapps sia presente MyServlet saltrimente usare il tasto
dolete e poi inserire MyServlet e fare Add
CREARE IL WAR PER IL DEPLOYING
Un primo metodo egrave creare il war a mano come al solito L‟altro egrave con la consolle
Colleghiamoci dalla Administration Console e scegliere ldquoHelpfuls Toolsrdquo Your deployed
resources
Scegliere ldquoWeb Application Modulesrdquo poi ldquoDeploy a new Web Application Modulerdquo poi cliccare
su applications e segnare (check) HelloWorldApp
Ora cliccare ldquoTarget Modulerdquo Infine cercare il bottone ldquoDeployrdquo e cliccarlo
TESTARE LrsquoAPPLICAZIONE
Per testare da browser egrave sufficiente digitare
httpltmachine_namegt7001HelloWorldAppindexhtml
httplocalhost7001HelloWorldAppindexhtml
In alternativa da Administration Console nella parte sinistra cliccare su Deployment Web
Applications Modules HelloWordApp
Spostarsi ora nella parte destra selezionando la voce ldquoTestingrdquo e cliccare su indexhtml
Esercitazioni Finisce qui la parte I Si consiglia di esercitarsi su tale parte osservando sempre di piugrave la
Administration Console
Provate a verificare che modificando la servlet funziona l‟auto-deploy
Create una JSP e verificate dove Web Logic Server compila la JSP e la trasforma in una servlet
Provate a creare il WAR e farne il deploy da Administration Console
Ringraziamenti Ringraziamo coloro che intenderanno fornire ulteriori indicazioni e suggerimenti
7
-Dweblogicmanagementdiscover
Se si lavora con una situazione Single Server (Admin Server e Web Server sono la stessa cosa)
allora porre a false tale JAVA_OPTIONS permette ad un Admin Server di evitare di scoprire se
esistono dei Managed Server In questo caso si evita un overhead inutile Tale opzione va aggiunta
manualmente
-DweblogicProductionModeEnabled
Se si ipotizza di lavorare in un ambiente di sviluppo vale false e viene anche configurato
l‟autodeploy
Administration Console
Da browser fare
httphostnameportconsole
esempio httplocalhost7001console
Inserire username e password dell‟amministratore e appariragrave una finestra divisa in due parti verticali
per l‟amministrazione del dominio mydomain
Il logout puograve avvenire su tale pagina nella parte alta a destra
Boot Identify File
Per una questione di sicurezza per evitare di dare al boot username e password la prima volta dopo
la configurazione e prima di startare Web Logic Server compilate un file di testo bootproperties
con due righe
username=username
password=password
Al primo boot il file viene soprascritto con una versione criptata e non verragrave piugrave richiesta username
e password
Considerazione si puograve farne a meno percheacute dopo la prima installazioneconfigurazione il file
criptato viene automaticamente creato
Shutdown con lrsquoAdministration Console
All‟ingresso nella consolle nella parte ad albero a sinistra scegliere la voce ldquoServersrdquo e scegliere il
nome del server su cui bisogna eseguire lo shutdown Il Click destro del mouse sul nome del server
fa aprire un menugrave da cui scegliere la voce ldquoStartStop this server helliprdquo E‟ consigliabile l‟uso di tale
metodo
Shutdown con weblogicAdmin utility
In mancanza di browser tale metodo egrave l‟unico valido ed egrave costituito dal comando
java weblogicAdmin [-url URL] [-username username] [-password password] COMAND arguments
8
dove COMAND deve valere SHUTDOWN (occorre per sicurezza passare anche ndashurl ndashusername ndash
password)
SHUTDOWN richiede come arguments [seconds] [ldquomessagerdquo]
Esempio
java weblogicAdmin -url httpmyhost7001 -username webgs9856 -password mahf1ncheduralungo SHUTDOWN 60
ldquoshutdowm tra 60 secondirdquo
ALTRI VALORI DI COMAND
SHUTDOWN come nel precedente
START richiede Node Manager
STARTINSTANDBY richiede Node Manager
RESUME
FORCESHUTDOWN
GETSTATE
PING
SERVERLOG
HELP
LICENSES
VERSION
In STANDBY un WebLogic Server ha scartato tutti i servizi ma accetta solo comandi da consolle Solitamente
WebLogic egrave in RUNNING mode
LA sintassi dei comandi egrave di seguito mostrata
java weblogicAdmin [-url URL] [-username username] [-password password] FORCESHUTDOWN [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] GETSTATE [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] PING [round-trip] [message-length]
java weblogicAdmin [-url URL] [-username username] [-password password] SERVERLOG [[starttime] [endtime]]
java weblogicAdmin HELP [COMMAND]
java weblogicAdmin [-url URL] [-username username] [-password password] LICENSES
java weblogicAdmin [-url URL] [-username username] [-password password] VERSION
JROCKIT ADMINISTATION CONSOLE
In startWebLogiccmd occorre settare JAVA_OPTIONS nel seguente modo
set JAVA_OPTIONS = -Djrockitmanagementserver=true
Allo start del server si deve vedere una riga del tipo
[JRockit] Management Server starter on port 7090
Sebbene ciograve funziona correttamente egrave da tener presente anche che il comando egrave diventato
deprecated Su questo punto non si comprende percheacute dato che al momento egrave l‟unico modo per
essere sicuri che si sta usando la JVM JRockit
Per vedere l‟andamento della JVM JRockit egrave possibile lanciare la sua consolle col comando
java ndashjar ManagementConsolejar
9
Con esso si ottiene una piccola finestra dove occorre dare il server name la porta (default 7090) il
connection name (localhost) In questo modo si puograve monitorare la Memoria il processore il sistema
etc per ogni porta in gioco
Deployment Tools
Una tipica applicazione web ha html class jar war in gioco La Administration Console fornisce
le stesse utilitagrave a meno di qualche piccola differenza per il deployment (webLogicDeployer) E‟
necessario perograve che il file system dove sono EAR WAR JAR RAR sia accessibile da WebLogic
Nel seguito per directory root si intende quella sotto applications
CREARE LA WEB APPLICATION DIRECTORY
Una Web Application si basa come sempre su un‟alberatura standard per tutti i Java Web Server
(vedi Tomcat ad esempio)
Directory Descrizione ltrootgt La document root dove risiedono html e le jsp che vengono accedute da browser
ltrootgtWEB-INF Qui risiedono webxml e weblogicxml deployment descriptors E‟ necessario che WEB-
INF sia scritto in tale modo (uppercase) Weblogicxml correla tutte le risorse necessarie
all‟applicazione per il suo funzionamento (es http session parameters https cookie
parameters JSP parameters resource reference security role container attributes etc)
ltrootgtWEB-INFclasses Qui risiedono i file class
ltrootgtWEB-INFlib Directory dove saranno posti i jar
Preferibilmente il nome della document-root (ltrootgt) egrave uguale a quella dell‟applicazione (Es
HelloWorldApp )
Se stiamo sviluppando dobbiamo crearci l‟alberatura per la prima volta manualmente
Se state sviluppando i sorgenti java depositateli nella root HelloWorldApp
Se stiamo effettuando un deploy basta mettere il WAR sotto la directory applications e avviare Web
Logic
Tale alberatura permette di poter fare l‟autodeploying di un‟applicazione war Naturalmente il
CLASSPATH deve prevedere la ltrootgtWEB-INFlib
CREARE UNA PAGINA HTML DI WELCOME
Creiamo un indexhtml nella root (HelloWorldApp directory)
lthtmlgt
ltheadgt
lttitlegtWelcome to my HelloWorldApplttitlegt
ltheadgt
ltbodygt
ltpgtWelcome to my HelloWorldApp
ltpgtlta href=rdquoMyServletrdquogtClick hereltagtto call my servlet
ltbodygt
10
lthtmlgt
CREARE UNA SERVLET
Creiamo la servlet MyServletjava in HelloWorldApp directory
package objectmindservlets
import javaxservlet
import javaxservlethttp
import javaio
public class MyServlet extends HttpServlet
public void service(HttpServletRequest req
HttpServletResponse res) throws IOException
ressetContentType(ldquotexthtmlrdquo)
PrinterWriter out = resgetWriter()
outprintln(ldquolthtmlgtltheadgtlttitlegtrdquo +
ldquoHello Worldlttitlegtltheadgtrdquo)
outprintln(ldquoltbodygtlth1gtHello Worldlth1gtltbodygtlthtmlgtrdquo)
Da linea di commando compiliamo
javac ndashd WEB-INFclasses MyServletjava
In tal modo sotto classes vi viene creato il package richiesto objectmindservlet che contiene
MyServletclass
STARTARE WEB LOGIC BUILDER
Per assemblare e deplorare l‟applicazione effettuiamo lo start di Web Logic Builder
Per fare ciograve egrave possibile lanciarlo da Windows con Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt Other Development Tools -gt WebLogic Builder
Altrimenti sotto WL_HOMEserverbin occorre effettuare da linea di comando
startWLBuildercmd
Dall‟editor effettuare File Open e cercare la directory HelloWorldApp e fare Open Al dialog box
d‟errore richiedere di creare per voi i deployment descriptor
Rimuovere indexjsp e indexhtm e selezionare il file indexhtml che fa parte dell‟applicazione
appena creata
11
Selezionare nella parte sinistra Servlets e verificare che MyServlet sia presente Poi nella parte
destra assicurarsi che nel campo URL Mapps sia presente MyServlet saltrimente usare il tasto
dolete e poi inserire MyServlet e fare Add
CREARE IL WAR PER IL DEPLOYING
Un primo metodo egrave creare il war a mano come al solito L‟altro egrave con la consolle
Colleghiamoci dalla Administration Console e scegliere ldquoHelpfuls Toolsrdquo Your deployed
resources
Scegliere ldquoWeb Application Modulesrdquo poi ldquoDeploy a new Web Application Modulerdquo poi cliccare
su applications e segnare (check) HelloWorldApp
Ora cliccare ldquoTarget Modulerdquo Infine cercare il bottone ldquoDeployrdquo e cliccarlo
TESTARE LrsquoAPPLICAZIONE
Per testare da browser egrave sufficiente digitare
httpltmachine_namegt7001HelloWorldAppindexhtml
httplocalhost7001HelloWorldAppindexhtml
In alternativa da Administration Console nella parte sinistra cliccare su Deployment Web
Applications Modules HelloWordApp
Spostarsi ora nella parte destra selezionando la voce ldquoTestingrdquo e cliccare su indexhtml
Esercitazioni Finisce qui la parte I Si consiglia di esercitarsi su tale parte osservando sempre di piugrave la
Administration Console
Provate a verificare che modificando la servlet funziona l‟auto-deploy
Create una JSP e verificate dove Web Logic Server compila la JSP e la trasforma in una servlet
Provate a creare il WAR e farne il deploy da Administration Console
Ringraziamenti Ringraziamo coloro che intenderanno fornire ulteriori indicazioni e suggerimenti
8
dove COMAND deve valere SHUTDOWN (occorre per sicurezza passare anche ndashurl ndashusername ndash
password)
SHUTDOWN richiede come arguments [seconds] [ldquomessagerdquo]
Esempio
java weblogicAdmin -url httpmyhost7001 -username webgs9856 -password mahf1ncheduralungo SHUTDOWN 60
ldquoshutdowm tra 60 secondirdquo
ALTRI VALORI DI COMAND
SHUTDOWN come nel precedente
START richiede Node Manager
STARTINSTANDBY richiede Node Manager
RESUME
FORCESHUTDOWN
GETSTATE
PING
SERVERLOG
HELP
LICENSES
VERSION
In STANDBY un WebLogic Server ha scartato tutti i servizi ma accetta solo comandi da consolle Solitamente
WebLogic egrave in RUNNING mode
LA sintassi dei comandi egrave di seguito mostrata
java weblogicAdmin [-url URL] [-username username] [-password password] FORCESHUTDOWN [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] GETSTATE [targetserver]
java weblogicAdmin [-url URL] [-username username] [-password password] PING [round-trip] [message-length]
java weblogicAdmin [-url URL] [-username username] [-password password] SERVERLOG [[starttime] [endtime]]
java weblogicAdmin HELP [COMMAND]
java weblogicAdmin [-url URL] [-username username] [-password password] LICENSES
java weblogicAdmin [-url URL] [-username username] [-password password] VERSION
JROCKIT ADMINISTATION CONSOLE
In startWebLogiccmd occorre settare JAVA_OPTIONS nel seguente modo
set JAVA_OPTIONS = -Djrockitmanagementserver=true
Allo start del server si deve vedere una riga del tipo
[JRockit] Management Server starter on port 7090
Sebbene ciograve funziona correttamente egrave da tener presente anche che il comando egrave diventato
deprecated Su questo punto non si comprende percheacute dato che al momento egrave l‟unico modo per
essere sicuri che si sta usando la JVM JRockit
Per vedere l‟andamento della JVM JRockit egrave possibile lanciare la sua consolle col comando
java ndashjar ManagementConsolejar
9
Con esso si ottiene una piccola finestra dove occorre dare il server name la porta (default 7090) il
connection name (localhost) In questo modo si puograve monitorare la Memoria il processore il sistema
etc per ogni porta in gioco
Deployment Tools
Una tipica applicazione web ha html class jar war in gioco La Administration Console fornisce
le stesse utilitagrave a meno di qualche piccola differenza per il deployment (webLogicDeployer) E‟
necessario perograve che il file system dove sono EAR WAR JAR RAR sia accessibile da WebLogic
Nel seguito per directory root si intende quella sotto applications
CREARE LA WEB APPLICATION DIRECTORY
Una Web Application si basa come sempre su un‟alberatura standard per tutti i Java Web Server
(vedi Tomcat ad esempio)
Directory Descrizione ltrootgt La document root dove risiedono html e le jsp che vengono accedute da browser
ltrootgtWEB-INF Qui risiedono webxml e weblogicxml deployment descriptors E‟ necessario che WEB-
INF sia scritto in tale modo (uppercase) Weblogicxml correla tutte le risorse necessarie
all‟applicazione per il suo funzionamento (es http session parameters https cookie
parameters JSP parameters resource reference security role container attributes etc)
ltrootgtWEB-INFclasses Qui risiedono i file class
ltrootgtWEB-INFlib Directory dove saranno posti i jar
Preferibilmente il nome della document-root (ltrootgt) egrave uguale a quella dell‟applicazione (Es
HelloWorldApp )
Se stiamo sviluppando dobbiamo crearci l‟alberatura per la prima volta manualmente
Se state sviluppando i sorgenti java depositateli nella root HelloWorldApp
Se stiamo effettuando un deploy basta mettere il WAR sotto la directory applications e avviare Web
Logic
Tale alberatura permette di poter fare l‟autodeploying di un‟applicazione war Naturalmente il
CLASSPATH deve prevedere la ltrootgtWEB-INFlib
CREARE UNA PAGINA HTML DI WELCOME
Creiamo un indexhtml nella root (HelloWorldApp directory)
lthtmlgt
ltheadgt
lttitlegtWelcome to my HelloWorldApplttitlegt
ltheadgt
ltbodygt
ltpgtWelcome to my HelloWorldApp
ltpgtlta href=rdquoMyServletrdquogtClick hereltagtto call my servlet
ltbodygt
10
lthtmlgt
CREARE UNA SERVLET
Creiamo la servlet MyServletjava in HelloWorldApp directory
package objectmindservlets
import javaxservlet
import javaxservlethttp
import javaio
public class MyServlet extends HttpServlet
public void service(HttpServletRequest req
HttpServletResponse res) throws IOException
ressetContentType(ldquotexthtmlrdquo)
PrinterWriter out = resgetWriter()
outprintln(ldquolthtmlgtltheadgtlttitlegtrdquo +
ldquoHello Worldlttitlegtltheadgtrdquo)
outprintln(ldquoltbodygtlth1gtHello Worldlth1gtltbodygtlthtmlgtrdquo)
Da linea di commando compiliamo
javac ndashd WEB-INFclasses MyServletjava
In tal modo sotto classes vi viene creato il package richiesto objectmindservlet che contiene
MyServletclass
STARTARE WEB LOGIC BUILDER
Per assemblare e deplorare l‟applicazione effettuiamo lo start di Web Logic Builder
Per fare ciograve egrave possibile lanciarlo da Windows con Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt Other Development Tools -gt WebLogic Builder
Altrimenti sotto WL_HOMEserverbin occorre effettuare da linea di comando
startWLBuildercmd
Dall‟editor effettuare File Open e cercare la directory HelloWorldApp e fare Open Al dialog box
d‟errore richiedere di creare per voi i deployment descriptor
Rimuovere indexjsp e indexhtm e selezionare il file indexhtml che fa parte dell‟applicazione
appena creata
11
Selezionare nella parte sinistra Servlets e verificare che MyServlet sia presente Poi nella parte
destra assicurarsi che nel campo URL Mapps sia presente MyServlet saltrimente usare il tasto
dolete e poi inserire MyServlet e fare Add
CREARE IL WAR PER IL DEPLOYING
Un primo metodo egrave creare il war a mano come al solito L‟altro egrave con la consolle
Colleghiamoci dalla Administration Console e scegliere ldquoHelpfuls Toolsrdquo Your deployed
resources
Scegliere ldquoWeb Application Modulesrdquo poi ldquoDeploy a new Web Application Modulerdquo poi cliccare
su applications e segnare (check) HelloWorldApp
Ora cliccare ldquoTarget Modulerdquo Infine cercare il bottone ldquoDeployrdquo e cliccarlo
TESTARE LrsquoAPPLICAZIONE
Per testare da browser egrave sufficiente digitare
httpltmachine_namegt7001HelloWorldAppindexhtml
httplocalhost7001HelloWorldAppindexhtml
In alternativa da Administration Console nella parte sinistra cliccare su Deployment Web
Applications Modules HelloWordApp
Spostarsi ora nella parte destra selezionando la voce ldquoTestingrdquo e cliccare su indexhtml
Esercitazioni Finisce qui la parte I Si consiglia di esercitarsi su tale parte osservando sempre di piugrave la
Administration Console
Provate a verificare che modificando la servlet funziona l‟auto-deploy
Create una JSP e verificate dove Web Logic Server compila la JSP e la trasforma in una servlet
Provate a creare il WAR e farne il deploy da Administration Console
Ringraziamenti Ringraziamo coloro che intenderanno fornire ulteriori indicazioni e suggerimenti
9
Con esso si ottiene una piccola finestra dove occorre dare il server name la porta (default 7090) il
connection name (localhost) In questo modo si puograve monitorare la Memoria il processore il sistema
etc per ogni porta in gioco
Deployment Tools
Una tipica applicazione web ha html class jar war in gioco La Administration Console fornisce
le stesse utilitagrave a meno di qualche piccola differenza per il deployment (webLogicDeployer) E‟
necessario perograve che il file system dove sono EAR WAR JAR RAR sia accessibile da WebLogic
Nel seguito per directory root si intende quella sotto applications
CREARE LA WEB APPLICATION DIRECTORY
Una Web Application si basa come sempre su un‟alberatura standard per tutti i Java Web Server
(vedi Tomcat ad esempio)
Directory Descrizione ltrootgt La document root dove risiedono html e le jsp che vengono accedute da browser
ltrootgtWEB-INF Qui risiedono webxml e weblogicxml deployment descriptors E‟ necessario che WEB-
INF sia scritto in tale modo (uppercase) Weblogicxml correla tutte le risorse necessarie
all‟applicazione per il suo funzionamento (es http session parameters https cookie
parameters JSP parameters resource reference security role container attributes etc)
ltrootgtWEB-INFclasses Qui risiedono i file class
ltrootgtWEB-INFlib Directory dove saranno posti i jar
Preferibilmente il nome della document-root (ltrootgt) egrave uguale a quella dell‟applicazione (Es
HelloWorldApp )
Se stiamo sviluppando dobbiamo crearci l‟alberatura per la prima volta manualmente
Se state sviluppando i sorgenti java depositateli nella root HelloWorldApp
Se stiamo effettuando un deploy basta mettere il WAR sotto la directory applications e avviare Web
Logic
Tale alberatura permette di poter fare l‟autodeploying di un‟applicazione war Naturalmente il
CLASSPATH deve prevedere la ltrootgtWEB-INFlib
CREARE UNA PAGINA HTML DI WELCOME
Creiamo un indexhtml nella root (HelloWorldApp directory)
lthtmlgt
ltheadgt
lttitlegtWelcome to my HelloWorldApplttitlegt
ltheadgt
ltbodygt
ltpgtWelcome to my HelloWorldApp
ltpgtlta href=rdquoMyServletrdquogtClick hereltagtto call my servlet
ltbodygt
10
lthtmlgt
CREARE UNA SERVLET
Creiamo la servlet MyServletjava in HelloWorldApp directory
package objectmindservlets
import javaxservlet
import javaxservlethttp
import javaio
public class MyServlet extends HttpServlet
public void service(HttpServletRequest req
HttpServletResponse res) throws IOException
ressetContentType(ldquotexthtmlrdquo)
PrinterWriter out = resgetWriter()
outprintln(ldquolthtmlgtltheadgtlttitlegtrdquo +
ldquoHello Worldlttitlegtltheadgtrdquo)
outprintln(ldquoltbodygtlth1gtHello Worldlth1gtltbodygtlthtmlgtrdquo)
Da linea di commando compiliamo
javac ndashd WEB-INFclasses MyServletjava
In tal modo sotto classes vi viene creato il package richiesto objectmindservlet che contiene
MyServletclass
STARTARE WEB LOGIC BUILDER
Per assemblare e deplorare l‟applicazione effettuiamo lo start di Web Logic Builder
Per fare ciograve egrave possibile lanciarlo da Windows con Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt Other Development Tools -gt WebLogic Builder
Altrimenti sotto WL_HOMEserverbin occorre effettuare da linea di comando
startWLBuildercmd
Dall‟editor effettuare File Open e cercare la directory HelloWorldApp e fare Open Al dialog box
d‟errore richiedere di creare per voi i deployment descriptor
Rimuovere indexjsp e indexhtm e selezionare il file indexhtml che fa parte dell‟applicazione
appena creata
11
Selezionare nella parte sinistra Servlets e verificare che MyServlet sia presente Poi nella parte
destra assicurarsi che nel campo URL Mapps sia presente MyServlet saltrimente usare il tasto
dolete e poi inserire MyServlet e fare Add
CREARE IL WAR PER IL DEPLOYING
Un primo metodo egrave creare il war a mano come al solito L‟altro egrave con la consolle
Colleghiamoci dalla Administration Console e scegliere ldquoHelpfuls Toolsrdquo Your deployed
resources
Scegliere ldquoWeb Application Modulesrdquo poi ldquoDeploy a new Web Application Modulerdquo poi cliccare
su applications e segnare (check) HelloWorldApp
Ora cliccare ldquoTarget Modulerdquo Infine cercare il bottone ldquoDeployrdquo e cliccarlo
TESTARE LrsquoAPPLICAZIONE
Per testare da browser egrave sufficiente digitare
httpltmachine_namegt7001HelloWorldAppindexhtml
httplocalhost7001HelloWorldAppindexhtml
In alternativa da Administration Console nella parte sinistra cliccare su Deployment Web
Applications Modules HelloWordApp
Spostarsi ora nella parte destra selezionando la voce ldquoTestingrdquo e cliccare su indexhtml
Esercitazioni Finisce qui la parte I Si consiglia di esercitarsi su tale parte osservando sempre di piugrave la
Administration Console
Provate a verificare che modificando la servlet funziona l‟auto-deploy
Create una JSP e verificate dove Web Logic Server compila la JSP e la trasforma in una servlet
Provate a creare il WAR e farne il deploy da Administration Console
Ringraziamenti Ringraziamo coloro che intenderanno fornire ulteriori indicazioni e suggerimenti
10
lthtmlgt
CREARE UNA SERVLET
Creiamo la servlet MyServletjava in HelloWorldApp directory
package objectmindservlets
import javaxservlet
import javaxservlethttp
import javaio
public class MyServlet extends HttpServlet
public void service(HttpServletRequest req
HttpServletResponse res) throws IOException
ressetContentType(ldquotexthtmlrdquo)
PrinterWriter out = resgetWriter()
outprintln(ldquolthtmlgtltheadgtlttitlegtrdquo +
ldquoHello Worldlttitlegtltheadgtrdquo)
outprintln(ldquoltbodygtlth1gtHello Worldlth1gtltbodygtlthtmlgtrdquo)
Da linea di commando compiliamo
javac ndashd WEB-INFclasses MyServletjava
In tal modo sotto classes vi viene creato il package richiesto objectmindservlet che contiene
MyServletclass
STARTARE WEB LOGIC BUILDER
Per assemblare e deplorare l‟applicazione effettuiamo lo start di Web Logic Builder
Per fare ciograve egrave possibile lanciarlo da Windows con Start -gt Tutti i programmi -gt BEA WebLogic Platform 81 -gt Other Development Tools -gt WebLogic Builder
Altrimenti sotto WL_HOMEserverbin occorre effettuare da linea di comando
startWLBuildercmd
Dall‟editor effettuare File Open e cercare la directory HelloWorldApp e fare Open Al dialog box
d‟errore richiedere di creare per voi i deployment descriptor
Rimuovere indexjsp e indexhtm e selezionare il file indexhtml che fa parte dell‟applicazione
appena creata
11
Selezionare nella parte sinistra Servlets e verificare che MyServlet sia presente Poi nella parte
destra assicurarsi che nel campo URL Mapps sia presente MyServlet saltrimente usare il tasto
dolete e poi inserire MyServlet e fare Add
CREARE IL WAR PER IL DEPLOYING
Un primo metodo egrave creare il war a mano come al solito L‟altro egrave con la consolle
Colleghiamoci dalla Administration Console e scegliere ldquoHelpfuls Toolsrdquo Your deployed
resources
Scegliere ldquoWeb Application Modulesrdquo poi ldquoDeploy a new Web Application Modulerdquo poi cliccare
su applications e segnare (check) HelloWorldApp
Ora cliccare ldquoTarget Modulerdquo Infine cercare il bottone ldquoDeployrdquo e cliccarlo
TESTARE LrsquoAPPLICAZIONE
Per testare da browser egrave sufficiente digitare
httpltmachine_namegt7001HelloWorldAppindexhtml
httplocalhost7001HelloWorldAppindexhtml
In alternativa da Administration Console nella parte sinistra cliccare su Deployment Web
Applications Modules HelloWordApp
Spostarsi ora nella parte destra selezionando la voce ldquoTestingrdquo e cliccare su indexhtml
Esercitazioni Finisce qui la parte I Si consiglia di esercitarsi su tale parte osservando sempre di piugrave la
Administration Console
Provate a verificare che modificando la servlet funziona l‟auto-deploy
Create una JSP e verificate dove Web Logic Server compila la JSP e la trasforma in una servlet
Provate a creare il WAR e farne il deploy da Administration Console
Ringraziamenti Ringraziamo coloro che intenderanno fornire ulteriori indicazioni e suggerimenti
11
Selezionare nella parte sinistra Servlets e verificare che MyServlet sia presente Poi nella parte
destra assicurarsi che nel campo URL Mapps sia presente MyServlet saltrimente usare il tasto
dolete e poi inserire MyServlet e fare Add
CREARE IL WAR PER IL DEPLOYING
Un primo metodo egrave creare il war a mano come al solito L‟altro egrave con la consolle
Colleghiamoci dalla Administration Console e scegliere ldquoHelpfuls Toolsrdquo Your deployed
resources
Scegliere ldquoWeb Application Modulesrdquo poi ldquoDeploy a new Web Application Modulerdquo poi cliccare
su applications e segnare (check) HelloWorldApp
Ora cliccare ldquoTarget Modulerdquo Infine cercare il bottone ldquoDeployrdquo e cliccarlo
TESTARE LrsquoAPPLICAZIONE
Per testare da browser egrave sufficiente digitare
httpltmachine_namegt7001HelloWorldAppindexhtml
httplocalhost7001HelloWorldAppindexhtml
In alternativa da Administration Console nella parte sinistra cliccare su Deployment Web
Applications Modules HelloWordApp
Spostarsi ora nella parte destra selezionando la voce ldquoTestingrdquo e cliccare su indexhtml
Esercitazioni Finisce qui la parte I Si consiglia di esercitarsi su tale parte osservando sempre di piugrave la
Administration Console
Provate a verificare che modificando la servlet funziona l‟auto-deploy
Create una JSP e verificate dove Web Logic Server compila la JSP e la trasforma in una servlet
Provate a creare il WAR e farne il deploy da Administration Console
Ringraziamenti Ringraziamo coloro che intenderanno fornire ulteriori indicazioni e suggerimenti