You are on page 1of 12

AMPLIACIN DE BASES DE DATOS

INSTALACIN Y CONFIGURACIN DE TOMCAT


Soporte de Oracle a Aplicaciones

Orlando Alem n Orti!


"# In$% In&orm tica C'rso ())*+),

Licencia
Esta obra ha sido publicada bajo licencia "ReconocimientoNoComercial-CompartirIgual 2.5 Spain" de Creative Commons la cual implica !ue" #sted es libre de" copiar distribuir $ comunicar p%blicamente la obra hacer obras derivadas &ajo las condiciones siguientes"

Reconocimiento. 'ebe reconocer los cr(ditos de la obra de la manera especi)icada por el autor o el licenciador.

No comercial. No puede utili*ar esta obra para )ines comerciales.

Compartir bajo la misma licencia. Si altera o trans)orma esta obra o genera una obra derivada s+lo puede distribuir la obra generada bajo una licencia id(ntica a (sta.

, adem-s" .l reutili*ar o distribuir la obra tiene !ue dejar bien claro los t(rminos de la licencia de esta obra. .lguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor /os derechos derivados de usos leg0timos u otras limitaciones reconocidas por le$ no se ven a)ectados por lo anterior. 1ara ver una copia de esta licencia visite http"22creativecommons.org2licenses2b$-nc-sa22.52es2 o envie una carta a Creative Commons 553 Nathan .bbott 4a$ Stan)ord Cali)ornia 35675 #S..

8 2779. :rlando .lem-n :rti* /as 1almas de ;ran Canaria Espa<a. orlando=pi6>5.es http"22orlando.pi6>5.es
(

ndice de contenido
O-.eti/os%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" Introd'cci0n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" Re1'isitos del entorno de instalaci0n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" So&t2are 'tili!ado%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%* Instalaci0n de Tomcat%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%* Compro-aci0n3 4'esta en &'ncionamiento%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%, Con&i$'raci0n - sica de Tomcat%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%, Compro-aci0n3 E.ec'ci0n de 'na aplicaci0n 5S4%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%6 Instalaci0n del dri/er 5D7C%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%6 Ane8o I%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%9) Ane8o II%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%9(

Objetivos
Instalaci0n ; con&i$'raci0n de Apache Tomcat como ser/idor <eInstalaci0n del dri/er Oracle para 5D7C

Introduccin
El presente doc'mento pretende a-ordar de manera sencilla la instalaci0n de 'n ser/idor de aplicaciones - sico 1'e d= soporte para acceder a 'n sistema de $esti0n de -ases de datos% En este conte8to> Apache Tomcat aparece como 'na opci0n m s 1'e interesante> ;a 1'e soporta JavaServer Pages ; el est ndar de acceso JDBC. Apache Tomcat, o simplemente Tomcat, es 'n contenedor de servlets o pro$ramas 1'e o&recen &'nciones s'plementarias a 'n ser/idor% Incl';e el compilador Jasper> 1'e compila las JSPs con/irti=ndolas en servlets% A men'do se presenta como motor de servlets en com-inaci0n con 'n ser/idor <e- ?$eneralmente Apache@> a'n1'e tam-i=n p'ede &'ncionar como ser/idor <e- por sA mismo> eso sA> con peor rendimiento% Dado 1'e Tomcat &'e escrito en Java> &'nciona en c'al1'ier sistema operati/o 1'e dispon$a de la m 1'ina /irt'al% Las JavaServer Pages son los elementos - sicos de 'na tecnolo$Aa desarrollada por Sun Microsystems, -asada en el procesamiento de scripts Java y 1'e permite a los desarrolladores $enerar din micamente p $inas 2e- ?HTML> ML ' de otro tipo@% 4ara posi-ilitar el acceso a 'na -ase de datos desde 'na p $ina JSP Baciendo 'so de JDBC se necesita de 'n !river o controlador> 1'e de no estar estar ;a incl'ido en las li-rerAas de la m 1'ina /irt'al> p'diera Bacer necesaria s' ad1'isici0n%

Requisitos del entorno de instalacin


Las caracterAsticas del entorno donde se /a a lle/ar a ca-o la instalaci0n son3

M 1'ina3 Comp'tador 4ersonal ?86,@ Sistema Operati/o3 Microso&t <indo2s C4 So&t2are Instalado3 5(SE 9%* DImprescindi-leE

So&t2are de compresi0n+descompresi0n3 F!ip Ds0lo en el caso de -a.ar -inarios comprimidosE

El BecBo de e.ec'tar Tomcat so-re la m 1'ina /irt'al de Java posi-ilita s' instalaci0n en la ma;orAa de plata&ormas e8istentes Bo; dAa> pese a 1'e en n'estro caso lo Ba$amos so-re el sistema operati/o de Microso"t%

Re1'isitos del entorno de instalaci0n

"

Software utilizado

ApacBe Tomcat "%9 ?Bttp3++tomcat%apacBe%or$+do2nloadG"9%c$i@ 5D7C Dri/er para Oracle 9)$ ?Bttp3++222%oracle%com+tecBnolo$;+so&t2are+tecB+.a/a+s1l.H.d-c+inde8%Btml@

Instalacin de Tomcat
4on$amos por caso 1'e Bemos descar$ado Tomcat en el &ormato comprimido TAR%GI% Jaciendo 'so de 'na Berramienta de descompresi0n> e8traemos el contenido Bacia el directorio donde se /a a montar el ser/idor> denominado en Tomcat con la denominaci0n CATALINAHJOME% En n'estro caso s' r'ta ser KC3LtomcatK% Como consec'encia del proceso> en KC3LtomcatK podremos encontrar la si$'iente estr'ct'ra de directorios3

-in G arran1'e> cierre> ; otros scripts ; e.ec'ta-les common G clases com'nes 1'e p'eden 'tili!ar Catalina ; las aplicaciones 2econ& R &icBeros ML ; los correspondientes DTDs para la con&i$'raci0n de Tomcat lo$s G lo$s de Catalina ; de las aplicaciones ser/er G clases 'tili!adas solamente por Catalina sBared G clases compartidas por todas las aplicaciones 2etemp R almacenamiento temporal para la m 1'ina 5a/a 2e-apps G directorio 1'e contiene las aplicaciones 2e2orS G almacenamiento temporal de &icBeros ; directorios
?&'ente3 <iSipedia@

4ero no -asta simplemente con sit'ar los arcBi/os> tam-i=n es necesario indicar de &orma $lo-al s' locali!aci0n &inal% Msto se Bace mediante la de&inici0n de la /aria-le $lo-al CATALINAHJOME> 1'e e/identemente contendr el path del ser/idor de aplicaciones% 4ara de&inir 'na /aria-le $lo-al en #in!o$s disponemos de /arias posi-ilidades% La primera es Bacer 'so del comando KSETK en el terminal desde el 1'e l'e$o se arrancar el ser/idor% N=ase3 C3LO set CATALINAHJOMEPKC3LtomcatK La des/enta.a de este m=todo es 1'e s' e&ecto d'ra lo 1'e d're la sesi0n en el terminal donde se e.ec't0 la instr'cci0n% S' 'tili!aci0n en 'n arcBi/o de e.ec'ci0n por lotes ?%-at@ podrAa ser la me.or salida Una se$'nda &orma> ; posi-lemente la me.or> es de&inir CATALINAHJOME como 'na /aria-le $lo-al de 's'ario o de sistema% 4ara ello> accedemos a KInicio O 4anel de Control O Mi 4C O 4ropiedades O Opciones a/an!adas O Naria-les de entornoK ; aQadimos 'na
Instalaci0n de Tomcat *

entrada para la n'e/a de&inici0n% Un detalle a compro-ar antes de aca-ar con primera &ase es si la /aria-le 5ANAHJOME se enc'entra de&inida ; ap'nta correctamente al directorio raA! de la instalaci0n de la J%S& Development 'it% 4ara ello> e.ec'tamos KsetK sin par metros en 'na consola% Como res'ltado o-tendremos la lista de /aria-les de&inidas act'almente% En caso de 1'e no se enc'entre de&inida o no posea la r'ta completa> procedemos como en la de&inici0n de CATALINAHJOME%

Comprobacin: uesta en funcionamiento


El me.or m=todo para conocer si el proceso marcBa -ien es e.ec'tar el Tomcat% 4or de&ecto est con&i$'rado para o&recer 'na p $ina de pr'e-a m'; sencilla% AsA 1'e> si nos encontramos al$Tn pro-lema d'rante esta &ase> se$'ro ser de n'estra cosecBa% La orden para iniciar la e.ec'ci0n es3 UCATALINAHJOMEUL-inLstart'p Como consec'encia> el ser/idor arrancar esc'cBando peticiones so-re 'no o /arios p'ertos% En este caso> o-ser/amos 1'e 'no de ellos es el 6)6)% Si tecleamos aBora en 'n na/e$ador la direcci0n KBttp3++localBost36)6)K o-tendremos la p $ina de pr'e-a 1'e Ba-Aamos dicBo% Antes de pasar a la si$'iente etapa con/iene detener la e.ec'ci0n del ser/idor% Msto lo conse$'iremos e.ec'tando UCATALINAHJOMEUL-inLsB'tdo2n

Confi!uracin b"sica de Tomcat


Los aspectos de con&i$'raci0n m s importantes para n'estros prop0sitos act'ales se enc'entran reco$idos en dos &icBeros sit'ados -a.o KUCATALINAHJOMEULcon&K% K2e-%8mlK reco$e los /alores por de&ecto a 'tili!ar por todas las aplicaciones 2ecar$adas en la instancia de Tomcat, como p'diera ser por e.emplo la p $ina a car$ar por de&ecto% Kser/er%8mlK> por contra> contiene la de&inici0n estr'ct'ral del ser/idor3 Nom-re del host> ser/icios> conectores> etc% En principio> nos con&ormamos con el contenido act'al de K2e-%8mlK ; pasamos a e8plicar al$'nos detalles de Kser/er%8mlK%
Componentes Del Fichero "server. ml"
Eti!"et# <server> </server> E plic#ci$n E%emplo ?Vnico ; en$lo-a toda la con&i$'raci0n@ <Server port="8005" De&ine el elemento de con&i$'raci0n - sico shutdown="SHUTDOWN"> del &icBero ser/er%8ml Es Tnico ; contiene 'no o m s ser/icios ?KSer/iceK@% El atri-'to KportK indica el p'erto destinado a la esc'cBa del comando de cierre> indicado por KsB'tdo2nK o cierre% ?Vnico@ 4ermiten de&inir las clases 5MC 1'e <Listener !"ssN"#e="or$%"p" he% "t"!in"%#&e"n ,

<Listener/>

Con&i$'raci0n - sica de Tomcat

Componentes Del Fichero "server. ml"


permitir esc'cBar Tomcat% <)!o&"!N"#in$ *esour es> </)!o&"!N"#in$ *esour es> <Servi e> </Servi e> ?Vnico@ 4ermite de&inir elementos 5NDI para ser 'tili!ados $lo-almente% Estas eti1'etas permiten a$r'par 'no o m s conectores de &orma 1'e compartan 'n Tnico contenedor de aplicaciones% 4oseen 'n Tnico atri-'to> KnameK> 1'e &i.a los identi&icadores indi/id'ales% Si KnameK se &i.a como KCatalinaK o KTomcatG StandaloneK> se Ba-ilitar a Tomcat como ser/idor 2e- independiente% ?dentro de KSer/iceK@ Conecta 'n contenedor de datos con el e8terior> de&iniendo el elemento &inal a tra/=s del c'al se reali!ar n las peticiones de 's'ario ; se en/iar n las resp'estas% Entre s's par metros de con&i$'raci0n est n el p'erto de esc'cBa> KportK> la clase encar$ada de s' de&inici0n> KclassNameK ; el nTmero m 8imo de cone8iones sim'lt neas permitidas> KacceptCo'ntK% ?dentro de KSer/iceK@ 4'nto donde se procesan las peticiones 1'e lle$an a los KConnectorK 1'e posean en la ca-ecera el /alor de Kde&a'ltJostK como destino% s%ServerLi'e ( !eListener" />

[VER ANEXO]
<Servi e n"#e="To# "t+ St"nd"!one"></Servi e>

<,onne tor />

<,onne tor !"ssN"#e="or$%"p" he% o(ote%to# "t%,o(ote,onne tor" port="8080" #in.ro essors="5" #"/.ro essors="05" en"&!eLoo1ups="true" " ept,ount="200" onne tionTi#eout="30000" useU*45"!id"tionH" 1="'"!se" dis"&!eUp!o"dTi#eout="true" /> <6n$ine n"#e="St"nd"!one" de'"u!tHost="!o "!host">

<6n$ine> </6n$ine>

<Lo$$er/>

?dentro de KSer/iceK o de KJostK@ <Lo$$er 4ermite esta-lecer el nom-re del &icBero de !"ssN"#e="or$%"p" he% "t"!in"%!o$$er lo$s% Como par metros tiene la clase %7i!eLo$$er" pre'i/=" "t"!in"8!o$%" encar$ada de s' de&inici0n> KclassNameK> su''i/="%t/t" ti#est"#p="true"/> el &ormato nom-re del arcBi/o> como la 'ni0n de 'n pre&i.o> Kpre&&i8K> ; 'n s'&i.o> Ks'&&i8K% Con estas eti1'etas podemos de&inir 'no o <Host n"#e="!o "!host" de&u$="0" m s elementos Jost /irt'ales para atender "pp9"se="we&"pps" a las peticiones% unp" 1W:*s="true" "utoDep!o(="true"> ?dentro de KJostK@ Se 'tili!a para indicar la r'ta ?Kdoc7aseK@ a partir de la c'al se enc'entran las aplicaciones a ser e.ec'tadas en Tomcat ?a partir de KUCATALINAHJOMEUL2e-appsK ; el patB 'rl ?KpatBK@ a partir del c'al acceder a los ser/icios%

<Host></Host>

WConte8tO W+Conte8tO

[VER ANEXO]

En -ase a estas e8plicaciones> tomamos por -ase el mismo &icBero 1'e nos proporciona el &a-ricante ; so-re =l reali!amos las modi&icaciones necesarias para adaptarlo a n'estras necesidades% En el Ane8o I> se m'estra el &icBero de e.emplo 1'e Bemos con&eccionado para esta pr'e-a%

Con&i$'raci0n - sica de Tomcat

Comprobacin: #jecucin de una aplicacin $S


Una /e! Bemos con&i$'rado Tomcat a n'estro $'sto> pasamos a e.ec'tar 'na sencilla aplicaci0n 2e- en 5S4> ;a 1'e es este tipo de aplicaciones la &inalidad Tltima de n'estra tarea% En el Ane8o II ?p $ina @ disponemos del fichero correspondiente. Debemos situarlo ba o !"#A$A%&NA'(O)E"*+ebapps*practica!, -ue es la ruta -ue hemos establecido en !ser.er./ml! como ra01 de nuestras aplicaciones.

)lustraci*n +, &-ecuci*n !e aplicaci*n ./sica

Instalacin del driver $%&C


4ara aca-ar> procedemos a instalar el dri/er (racle para JDBC. E8isten dos posi-ilidades> instalarlo como li-rerAa de la m 1'ina /irt'al de Java o ponerlo como rec'rso Tnico para el conte8to 1'e nos oc'pa% 4ara n'estros prop0sitos -asta con la se$'nda% El primer paso> ; Tnico> es crear el r-ol de directorios K<E7GINF+li-K -a.o el directorio 1'e &i.amos como Kdoc7aseK en conte8to del ser/idor ; copiar el &icBero X%.ar correspondiente al dri/er a esa n'e/a '-icaci0n% 4ara 'tili!arlo desde 'na JavaServer Page -asta con incl'ir en n'estro c0di$o script 'n &ra$mento como el si$'iente3

Instalaci0n del dri/er 5D7C

tr( ; // ,"r$"#os e! driver <D9, p"r" Or" !e ,!"ss%'orN"#e="or" !e%>d& %driver%Or" !eDriver"?@ A "t h=,!"ssNot7ound6/ eption e? ; S(ste#%out%print!n="Driver no en ontr"do%"?@ S(ste#%out%print!n=e%toStrin$=??@ throw new Un"v"i!"&!e6/ eption=thisB ",!"se no en ontr"d"%"?@ A

Y asA podremos tener acceso a n'estra -ase de datos remota desde n'estro ser/icio 2e- ; diseQar aplicaciones como la si$'iente3

)lustraci*n %, Aplicaci*n 0ue con la con"iguraci*n actual, usa JDBC

Instalaci0n del dri/er 5D7C

'ne(o I
FicBero de con&i$'raci0n Kser/er%8mlK creado para la demo% S' &'ncionamiento Ba sido pro-ado%

SERVER.XML

Ane8o I

9)

Ane8o I

99

'ne(o II
FicBero de demo> Kinde8%.spK% S' &'ncionamiento Ba sido pro-ado en apartados anteriores3

Ane8o II

9(

You might also like