Enterprise Java Linuxra HOGYAN

Greg Wilkins [email protected] az eredeti Gary Meyert�l [email protected] sz�rmazik.

v0.2, 2001.11.07
Ez a dokumentum le�rja, hogyan telep�ts�nk Enterprise Java k�rnyezetet Linuxra, amely tartalmaz egy Java Development Kitet, egy Web szervert, t�mogatja a Java szervleteket, adatb�zis hozz�f�r�st biztos�t JDBC-n kereszt�l, �s t�mogatja az Enterprise Java Beaneket (EJB).

1. Bevezet�s

1.1 H�tt�r

Ezt a dokumentumot 1999 janu�rj�ban kezdte el �rni Gary Meyer ( [email protected]), n�h�ny h�ttel azut�n, hogy k�l�nb�z� ny�lt forr�sk�d� �s v�dett Enterprise Java term�ket telep�tett Linuxra. Itt az "Enterprise Java" �gy �rtelmezend�, mint a Java Enterprise API-k haszn�lata.

A dokumentumhoz, n�h�ny friss�t�st Greg Wilkins ( [email protected]) tett hozz� 2001 november�ben, mindazon�ltal a dokumentum egyes r�szei nem aktu�lisak.

1.2 Kinek sz�l?

Ez a HOGYAN azoknak a szoftvereseknek pr�b�l seg�ts�get ny�jtani, akik �rdekeltek az Enterprise Java kipr�b�l�s�ban, fejleszt�s�ben vagy terjeszt�s�ben Linuxon. Meghat�rozott tud�s vagy tapasztalat Linuxban vagy a Java ter�let�n felt�telezett.

1.3 �j verzi�k

A dokumentum �jabb verzi�i megtal�lhat�k a Linux Documentation Project honlapj�n: http://tldp.org/HOWTO/Enterprise-Java-for-Linux-HOWTO.html

1.4 Szerz�i jog �s licenc

Gary Meyer �s Greg Wilkins ezen �r�s�t a szerz�i jog v�di. M�sol�s�hoz hozz�j�rul�s sz�ks�ges, a dokumentum sokszoros�t�sa �s m�dos�t�sa a GNU szabad dokument�ci�s licenc�nek 1.1-es verzi�j�nak felt�teleihez k�t�tt, vagy b�rmely k�s�bbi verzi��hoz, amit a Szabad Programok�rt Alap�tv�ny adott ki, �lland� r�szek, fed�lap �s h�toldal sz�vegek n�lk�l. A licenc m�solata el�rhet� a http://www.gnu.org/copyleft/fdl.html weboldalon.

1.5 Nyilatkozatok

A dokumentum aj�nl�sai abban seg�tenek, hogy amilyen gyorsan csak lehet egy Enterprise Java k�rnyezetet �ll�thass be Linux alatt. Ezek a javaslatok nem term�k aj�nl�sok vagy j�v�hagy�sok. Ahogy k�zelebbr�l megismered a rendelkez�sre �ll� lehet�s�geket, k�pes leszel saj�t k�rnyezeteket k�sz�teni, �s megtal�lni a legmegfelel�bb megold�st a saj�t ig�nyeid sz�m�ra.

Ennek a HOGYANnak sz�nd�ka az "Enterprise Java"-t mint a Java Enterprise API-t �rtelmezni. Ez a HOGYAN nem c�lozza meg a sk�l�zhat�s�got, rendelkez�sre �ll�st, menedzselhet�s�get �s egy�b hasonl� szempontjait a programnak, amelyeket az "enterprise" kifejez�ssel gyakran �sszekapcsolnak.

1.6 Lehets�ges j�v�beli r�szek

Ez a HOGYAN az Enterprise Java legn�pszer�bb r�szeire koncentr�l. Az k�vetkez�k lehetn�nek r�szei ennek a HOGYANnak.

�rdekel egy r�sz meg�r�sa? Akkor vedd fel a kapcsolatot a szerz�vel, Greg Meyerrel a ( [email protected]) c�men.

1.7 Egy�b forr�sok

Az App-Serv Center (Alkalmaz�s-kiszolg�l� K�zpont) honlapj�t itt tal�lod meg: http://www.app-serv.com/.

Java Enterprise Nutshellhez David Flanagant�l �s m�sokt�l a http://www.oreilly.com/catalog/jentnut/ helyen.

1.8 Visszajelz�s

K�rlek a szerz� c�m�re k�ldd el a hozz�sz�l�sod �s esetleges javaslatod: Gary Meyer ( [email protected]).

1.9 Magyar ford�t�s

A magyar ford�t�st Mink� Mih�ly k�sz�tette (2003.02.27). A lektor�l�st Erd�sz Szabolcs v�gezte el (2003.03.20). B�rmilyen ford�t�ssal kapcsolatos �szrev�telt a [email protected] c�mre k�ldjetek. A dokumentum legfrissebb v�ltozata megtal�lhat� a Magyar Linux Dokument�ci�s Projekt honlapj�n.

2. Hogyan telep�ts�k a Java Development Kitet

Van n�h�ny a Java Development Kit-ek k�z�l, ami Linuxra is el�rhet�:

Ha csak egy JDK-t akarsz kipr�b�lni, akkor azt javasolom, hogy a Sun J2SE-vel kezdd, hacsak nem aj�nlanak m�st, azok a szoftverek amiket haszn�lsz vagy esetleg haszn�lni akarsz a k�s�bbiekben. Tov�bb�, ha ny�lt forr�s� megval�s�t�s �rdekel, akkor Kaffe-ra van sz�ks�ged.

2.1 Blackdown JDK

H�tt�r

A Blackdown JDK a Sun JDK, Linuxhoz �rt v�ltozata. E dokumentum �r�s�nak az id�pontj�ban a Blackdown JDK verzi�sz�ma Intel architekt�r�n, a JDK 1.2.2, PowerPC-n pedig a JDK 1.1.8.

1999 december�ben a Sun bejelentette a Java 2 Platform Standard Edition (J2SE) el�rhet�s�g�t a Linux oper�ci�s rendszerekre. A Sun ezen bejelent�se alapvet� hat�ssal volt a Blackdown-ra, mert ez egy portol�s. Egy sajt�k�zlem�nyben a Sun azt �ll�tja, hogy "Az e heti bejelent�s nem lett volna lehets�ges a Blackdown-nal val� egy�ttm�k�d�s, a vil�g programoz�i �s lelkes seg�t�i n�lk�l. Innen kezdve a Blackdown lett Linux Java technol�gia sz�ll�t�ja. Az �vek folyam�n ennek szentelt f�radoz�saik lefektett�k az alapjait a Java 2 Linux platformra t�rt�n� kiad�s�nak; az � f�radoz�suk n�lk�l�zhetetlen volt a kiad�s siker�hez."

Tov�bb� a Sun kiadv�ny azzal folytatja, hogy " A Blackdown.org tov�bbra is egy �rt�kes forr�s a Java technol�gia Linux platformra t�rt�n� alkalmaz�sa sor�n �s tartalmazva a JDK 1.1.x verzi�kat."

Let�lt�s

A Blackdown JDK el�rhet� a http://www.blackdown.org oldalon.

A Blackdown honlapj�n v�laszd a let�lt�st �s egy t�kr�z�st (van magyar is - a ford.).

V�laszd ki azt a JDK verzi�t, amelyiket akarod. Ha m�s programok, amiket haszn�lni szeretn�l nem futnak egy bizonyos verzi�sz�m� JDK-val, akkor a legfrissebbet aj�nlom, ami a dokumentum �r�s�nak idej�n a JDK 1.2.2-es.

V�laszd ki a megfelel� architekt�r�t, amire telep�teni akarsz. Intel architekt�r�ra v�laszd az i386-ot.

B�rmely verzi�t v�laszthatod, de ha bizonyos programok, amiket haszn�lni akarsz nem t�mogatj�k a kiv�lasztott verzi�t, akkor azt aj�nlom, hogy t�ltsd le a legfrissebb verzi�t, ami el�rhet�.

A Blackdown JDK-hoz, egy csom� f�jlt tal�lsz, k�l�nb�z� f�jl �s csomagform�tumban. Mindazon�ltal biztosnak kell lenned abban, hogy a Linux disztrib�ci�dban l�v� libc t�mogatja azt, amelyiket let�lt�tt�l.

Az el�rhet� f�jlok a k�vetkez�ket tartalmazz�k:

Azt javasolom, hogy csak a jdk for java development angol verzi�j�t t�ltsd le.

Amikor let�lt�tted a Blackdown f�jlokat, v�lasztanod kell a libc5 �s a glibc k�z�tt, mint a lehets�ges glibc verzi�k k�z�tt.

A libc opci�k tartalmazz�k:

Ha a Linuxnak egy �jabb disztrib�ci�j�t haszn�lod, akkor a legval�sz�n�bb, hogy lesz glibc. Azt javasolom kezdetben a glibc-vel pr�b�lkozz.

Telep�t�s

Azt javasolom, telep�tsd a f�jlokat a /usr/local k�nyvt�rba. Miut�n let�lt�tted a f�jlt, futtasd a k�vetkez� parancsokat:

mkdir /usr/local/blackdown
mv jdk* /usr/local/blackdown

Ha a tarball form�tumot t�lt�tted le, akkor futtasd a k�vetkez� parancsot:

tar zxvf [filename].tar.gz

Ahol a [filename] az �llom�ny neve.

A /usr/local/blackdown k�nyvt�rban l�tni fogsz egy olyasmi k�nyvt�rat, hogy jdk1.2.2

A fenti egy JDK1.2.2 release candidate 3 intel architekt�ra p�ld�j�t mutatja. Helyettes�tsd a f�jlnevet, verzi�sz�mot, kiad�st �s az architekt�r�t a megfelel�re. Minden disztrib�ci�s csomagf�jlt a fenti m�dszerrel nyiss meg.

K�rnyezeti be�ll�t�sok

A k�vetkez� k�rnyezeti v�ltoz�kat kell be�ll�tanod:

A JAVA_HOME k�rnyezeti v�ltoz� arra a k�nyvt�rra mutat, ahov� a JDK csomagot telep�tetted. �ll�tsd be a JAVA_HOME k�rnyezeti v�ltoz�t arra a k�nyvt�rra, amelyikbe a Blackdown JDK csomagot telep�tetted.

export JAVA_HOME=/usr/local/blackdown/jdk1.2.2

A $JAVA_HOME/bin k�nyvt�rban van a Java compiler (Java ford�t�; javac) �s a Java Virtual Machine (Java Virtu�lis G�p; java) valamint egy�b, a fejleszt� k�rnyezethez sz�ks�ges programok.

Add hozz� a PATH v�ltoz�hoz a $JAVA_HOME/bin k�nyvt�rat.:

export PATH=$JAVA_HOME/bin:$PATH

Ellen�rizd le, hogy a $JAVA_HOME/bin a PATH elej�hez hozz� lett adva, �gy az �ltalad telep�tett JDK csomagot fogod haszn�lni, nem pedig azt a JDK csomagot, ami a Linuxszal lett felt�ve. A PATH v�ltoz� ellen�rz�s�hez k�rdezd le az alap�rtelmezett Java ford�t� �s JVM (Java Virtual Machine) nev�t:

which javac
which java

A v�lasznak a $JAVA_HOME/bin k�nyvt�radban l�v� javac �s java csomagokkal �sszhangban kell lennie.

A CLASSPATH k�rnyezeti v�ltoz� mutat minden JAR-ra �s azokra a k�nyvt�rakra, amelyekre a Java programok ford�t�s�hoz �s futtat�s�hoz sz�ks�ged lesz.

A JDK1.2.2-es verzi�j�hoz kezdetben nem sz�ks�ges JAR-okat adni a CLASSPATH v�ltoz�hoz. A JAR-ok csomagol�sa lehet jar vagy zip f�jl is.

export CLASSPATH=$CLASSPATH:.

A telep�t�s ellen�rz�se

Most m�r futtathatsz �s ford�thatsz egy egyszer� alkalmaz�st. �rd meg a k�vetkez� programot (egy ak�rmilyen sz�vegszerkeszt�vel, csak a f�jl kiterjeszt�se "java" legyen - a ford.):

class HelloWorld {
  public static void main (String[] args) {
    System.out.println("Hello, World!");
  }
}

Ford�tsd le a programot a Java ford�t�val.

javac HelloWorld.java

Ha a ford�t� hib�t jelez, akkor alaposan n�zd �t a szintaxist, valamint n�zd meg a PATH �s CLASSPATH be�ll�t�sokat, hogy j�k-e.

Futtasd a programot a JVM-mel.

java HelloWorld

Ha a JVM hib�t produk�l, akkor n�zd meg a PATH �s CLASSPATH be�ll�t�sokat.

A k�vetkez� eredm�nyt kell l�tnod a program helyes fut�sa eset�n:

Hello, World!

Gratul�lok, sikeresen telep�tetted, be�ll�tottad �s tesztelted a Blackdown JDK csomagot Linuxon!

Tov�bbi inform�ci�k

A BlackDown JDK csomagr�l tov�bbi inform�ci�t tal�lsz a http://www.blackdown.org honlapon. Itt el�rhet� egy kiv�l� FAQ.

2.2 IBM Java Developer Kit

H�tt�r

Az IBM Java fejleszt�i k�rnyezet �s futtat�si k�rnyezet kompatibilis a Sun Jav�val �s tartalmazza a legfrissebb karbantart� eszk�z�ket. (Az IBM weboldal�r�l.)

Ezen dokument�ci� �r�sakor az IBM Java fejleszt�i k�rnyezet a JDK 1.1.8 verzi�ja aktu�lis, ez csak Intel architekt�r�ra telep�thet�.

Let�lt�s

Az IBM Java Developer Kit let�lthet� a http://www.ibm.com/java/jdk/118/linux c�mr�l.

A let�lt�shez el�sz�r regisztr�lnod kell magad az IBM weboldal�n, �s el kell fogadni a szerz�d�s felt�teleit.

Az let�lthet� f�jlok tartalmazz�k:

Mivel fejleszteni akarsz javasolom, hogy a IBM-JDK csomagot t�ltsd le. :)

Telep�t�s

Azt javasolom, hogy a /usr/local k�nyvt�rba telep�tsd a f�jlokat. A f�jlok let�lt�se ut�n futtasd a k�vetkez� parancsot:

mkdir /usr/local/ibm
mv ibm-jdk-l118-linux-x86.tgz /usr/local/ibm

Most kicsomagolhatod a disztrib�ci�s csomagot. Ezt a k�vetkez� paranccsal teheted meg:

tar zxvf ibm-jdk-l118-linux-x86.tgz

A /usr/local/ibm k�nyvt�rban most m�r l�thatod a jdk.118 k�nyvt�rat.

A fent eml�tett p�ld�k Intel architekt�r�n ny�jtanak seg�ts�get.

Helyettes�tsd a f�jlneveket a megfelel�kkel.

K�rnyezeti be�ll�t�sok

A k�vetkez� k�rnyezeti v�ltoz�kat kell be�ll�tanod:

A JAVA HOME k�rnyezeti v�ltoz� utal a telep�tett JDK csomagod home k�nyvt�r�ra. �ll�tsd be a JAVA HOME v�ltoz�t arra a k�nyvt�rra, amelyikbe telep�tetted az IBM Java fejleszt�i k�szletet.

export JAVA_HOME=/usr/local/ibm/jdk118

A $JAVA_HOME/bin k�nyvt�rban van a Java compiler (Java ford�t�; javac) �s a Java Virtual Machine (Java Virtu�lis G�p; java) �s egy�b, a fejleszt�shez n�lk�l�zhetetlen programok. Add hozz� a $JAVA_HOME/bin k�nyvt�rat a PATH v�ltoz�hoz.

export PATH=$JAVA_HOME/bin:$PATH

Ellen�rizd, hogy a $JAVA_HOME/bin k�nyvt�rat hozz�adtad a PATH elej�hez, �gy az telep�tett JDK csomagot fogja haszn�lni a g�ped, nem pedig azt, ami a Linux disztrib�ci�val j�tt.

A PATH v�ltoz� ellen�rz�s�hez k�rdezd le az alap�rtelmezett Java ford�t� �s JVM (Java Virtual Machine) nev�t:

which javac
which java

A v�laszb�l kider�l melyik javac �s java van a $JAVA HOME/bin k�nyvt�radban. A CLASSPATH k�rnyezeti v�ltoz� utal a JAR-okra �s a k�nyvt�rakra, amelyekre sz�ks�ged lesz ahhoz, hogy Java programokat ford�ts �s futtass.

Javasolom, add hozz� a k�vetkez� JAR-okat a CLASSPATH v�ltoz�hoz. Ezek k�l�nb�z� .jar vagy .zip f�jlokba vannak csomagolva.

P�ld�ul:

export CLASSPATH=$JAVA_HOME/lib/classes.zip
export CLASSPATH=$CLASSPATH:.

A telep�t�s ellen�rz�se

Most m�r ford�thatsz �s futtathatsz egy egyszer� programot. K�sz�tsd el a k�vetkez� programot:

class HelloWorld {
  public static void main (String[] args) {
    System.out.println("Hello, World!");
  }
}

Ford�tsd a programot a Java ford�t�val:

javac HelloWorld.java

Ha a ford�t� hib�t jelez, akkor n�zd meg alaposan a szintaktik�t �s ellen�rizd a PATH �s a CLASSPATH v�ltoz� be�ll�t�sait.

Futtasd a programot JVM-mel.

java HelloWorld

Ha a JVM hib�t jelez ellen�rizd a PATH �s a CLASSPATH be�ll�t�said.

Egy�bk�nt a k�vetkez� kimenetet kell l�tnod:

Hello, World!

Gratul�lok, telep�tetted �s tesztelted az IBM Java Developer Kit csomagot Linuxon!

Tov�bbi inform�ci�k

Tov�bbi inform�ci�t tal�lsz az IBM Java weboldal�n a http://www.ibm.com/java c�men.

2.3 Kaffe

H�tt�r

A Kaffe egy ny�lt forr�sk�d� implement�ci�ja a (Java Virtual Machine) Java Virtu�lis G�pnek �s oszt�lyk�nyvt�raknak. Ezen dokumentum k�sz�t�s�nek idej�n a Kaffe "legink�bb a JDK 1.1-el m�k�d�tt egy�tt, n�h�ny r�szt kiv�ve" �s "egyes r�szei m�r JDK 1.2 (Java2) kompatibilisek". (Id�zet a Kaffe weboldal�r�l.)

El�fordulhat, hogy a Kaffe m�r a Linux disztrib�ci�dban benne van, hiszen a Kaffe is ny�lt forr�sk�d�.

Let�lt�s �s telep�t�s

Azt javasolom, hogy ink�bb azt a Kaffe csomagot haszn�ld, ami a Linux disztrib�ci�ddal �rkezett, mintsem ami let�lthet� a Kaffe honlapr�l.

Alternat�vak�nt a Kaffe megtal�lhat� a http://www.kaffe.org c�men.

A Kaffe weboldal�n v�laszd a legfrissebb kiad�st. Ezen dokumentum �r�sa idej�n ez az 1.0.5-�s verzi� volt. A Kaffe verzi�sz�ma nincs kapcsolatban a JDK egy�b verzi�sz�maival.

K�rnyezeti be�ll�t�sok

A k�vetkez� k�rnyezeti v�ltoz�kat kell be�ll�tanod:

A PATH v�ltoz� ellen�rz�s�hez k�rdezd le az alap�rtelmezett Java ford�t� �s JVM (Java Virtual Machine) nev�t:

which javac
which java

A CLASSPATH k�rnyezeti v�ltoz� mutatja, hogy hol tal�lhat�ak a JAR-ok �s mely k�nyvt�rakra lesz sz�ks�ged, hogy ford�ts �s futtass Java programokat.

Azt javasolom, hogy a JAR csomagokat add hozz� a CLASSPATH v�ltoz�hoz A JAR-ok .jar vagy .zip f�jlokba lehetnek csomagolva:

P�ld�ul:

export CLASSPATH=/usr/local/share/kaffe/Klasses.zip
export CLASSPATH=$CLASSPATH:.

A telep�t�s ellen�rz�se

Most m�r ford�thatsz �s futtathatsz egyszer�bb alkalmaz�sokat. K�sz�tsd el a k�vetkez� programot:

class HelloWorld {
  public static void main (String[] args) {
    System.out.println("Hello, World!");
  }
}

Ford�tsd le a programot a Java ford�t�val:

javac HelloWorld.java

Ha a ford�t� hib�t jelez, alaposan ellen�rizd le a szintaxist �s ellen�rizd a PATH �s CLASSPATH be�ll�t�said.

Futtasd a programot a JVM-mel.

java HelloWorld

Ha a JVM hib�t jelez ellen�rizd a PATH �s a CLASSPATH be�ll�t�sait.

A k�vetkez� �zenetet kell l�tnod:

Hello, World!

Gratul�lok, telep�tetted, be�ll�tottad �s tesztelted a Kaffe csomagot Linux alatt!

Tov�bbi inform�ci�k

Tov�bbi inform�ci�t tal�lsz a Kaffe-r�l a http://www.kaffe.org honlapon.

2.4 Sun J2SE

H�tt�r

A Sun Java 2 Standard Edition (J2SE) a Sun Java 2 platformja Linux oper�ci�s rendszerekre. A dokumentum k�sz�t�sekor a legfrissebb verzi� a JDK 1.2.2, Intel architekt�r�ra.

Let�lt�s

A J2SE let�lthet� a http://developer.java.sun.com/developer/earlyAccess/j2sdk122 oldalr�l.

Regisztr�lnod kell magad a Sunn�l �s el kell fogadnod a licencet, miel�tt let�lt�d a programot.

Telep�t�s

Azt javasolom telep�tsd a f�jlokat a /usr/local k�nyvt�rba. Miut�n let�lt�tted a f�jlokat futtasd a k�vetkez� parancsokat:

mkdir /usr/local/sun
mv jdk1_2_2rc1-linux-i386.tar.gz /usr/local/sun

Most kicsomagolhatod a disztrib�ci�s csomagot. Futtasd a k�vetkez� parancsot:

tar zxvf jdk1_2_2rc1-linux-i386.tar.gz

Az /usr/local/sun k�nyvt�rban most m�r l�thatod a jdk1.2.2 k�nyvt�r�t.

Az al�bbi p�ld�k a JDK 1.2.2 verzi�ra, Intel architekt�r�ra k�sz�ltek. Helyettes�tsd a f�jlneveket, ahol sz�ks�ges.

K�rnyezeti be�ll�t�sok

A k�vetkez� k�rnyezeti v�ltoz�kat kell be�ll�tanod:

A JAVA_HOME arra a k�nyvt�rra mutat, ahol a JDK csomagod van. �ll�tsd be a JAVA_HOME v�ltoz�t arra a k�nyvt�rra, ahov� a J2SE programot telep�tetted:

export JAVA_HOME=/usr/local/sun/jdk1.2.2

A $JAVA_HOME/bin k�nyvt�rban van a Java compiler (Java ford�t�; javac) �s a Java Virtual Machine (J�va Virtu�lis G�p; java) �s egy�b, a fejleszt�shez sz�ks�ges programok. Add hozz� a $JAVA_HOME/bin k�nyvt�rat a PATH v�ltoz�hoz.

export PATH=$JAVA_HOME/bin:$PATH

Ellen�rizd, hogy a $JAVA_HOME/bin k�nyvt�rat hozz�adtad a PATH elej�hez, s �gy a telep�tett JDK verzi�t fogod haszn�lni, nem pedig azt, amelyik a disztrib�ci�ddal j�tt.

A PATH v�ltoz� ellen�rz�s�hez k�rdezd le az alap�rtelmezett Java ford�t� �s JVM (Java Virtual Machine) nev�t:

which javac
which java

Az eredm�nyeknek a $JAVA_HOME/bin k�nyvt�rban tal�lhat� javac �s java verzi�knak kell lenni�k.

A CLASSPATH k�rnyezeti v�ltoz� azokra a JAR-okra �s k�nyvt�rakra mutat, amelyekre sz�ks�ged lesz a Java programok ford�t�s�hoz �s futtat�s�hoz.

A JDK 1.2.2-h�z, alapesetben nem kell JAR-okat adni a CLASSPATH v�ltoz�hoz.

A JAR-ok .jar �s .zip f�jlokba lehetnek csomagolva.

export CLASSPATH=$CLASSPATH:.

A telep�t�s ellen�rz�se

Most m�r ford�thatsz �s futtathatsz egy egyszer� alkalmaz�st. K�sz�tsd el a k�vetkez� kis programot:

class HelloWorld {
  public static void main (String[] args) {
    System.out.println("Hello, World!");
  }
}

Ford�tsd le a programot a Java ford�t�val.

javac HelloWorld.java

Ha a ford�t� hib�t produk�l, ellen�rizd le alaposan a szintaxist, �s ellen�rizd a PATH �s CLASSPATH be�ll�t�sait.

Futtasd a programot a JVM-mel.

java HelloWorld

Ha a JVM hib�t jelez ellen�rizd a PATH �s a CLASSPATH be�ll�t�sait.

A k�vetkez� eredm�nyt kell l�tnod a helyes fut�s eset�n:

Hello, World!

Gratul�lok, telep�tetted, be�ll�tottad �s tesztelted a Sun J2SE csomagot Linux alatt.

Tov�bbi inform�ci�

Tov�bbi inform�ci�t tal�lsz a Sun J2SE jav�r�l a http://java.sun.com honlapon. Itt kiv�l� vitaf�rumokat tal�lhatsz, ahol val�sz�n�leg v�laszt kapsz a k�rd�seidre.

3. Hogyan telep�ts�nk Webszervert?

Sz�mos Webszerver tal�lhat� Linuxra. P�ld�ul:

Ha csak egy Webszervert akarsz kipr�b�lni, azt javasolom, hogy kezdd az Apache-al. Els�sorban az�rt, mert ez benne van a legt�bb Linux disztrib�ci�ban, el�re telep�tve �s tal�n m�r fut a rendszereden.

3.1 Apache

H�tt�r

Az Apache a legelterjedtebb HTTP szerver az Interneten. "Eredetileg az NCSA httpd d�monon alapult, de az�ta teljesen �jra lett �rva. Az Apache ny�lt forr�sk�d�". (Id�zet az Apache weboldal�r�l.)

Let�lt�s, telep�t�s �s a k�rnyezeti be�ll�t�sok

Azt javasolom, hogy azt az Apache csomagot haszn�ld, amelyik a Linux disztrib�ci�ddal �rkezett.

Esetleg let�ltheted a http://www.apache.org webhelyr�l.

A telep�t�s ellen�rz�se

Az Apache m�k�d�k�pess�g�nek ellen�rz�s�hez ind�tsd el a b�ng�sz�d, �s �rd be a k�vetkez�t: "http://127.0.0.1". (ez a localhost IP c�me).

Egy "It Worked!" felirat� weboldalt kell l�tnod, ha m�k�dik.

Ha ez nem �gy van, akkor ellen�rizheted �gy is, hogy be�rod a k�vetkez�t a RedHat Package Manager (RPM) alap� disztrib�ci�ba:

rpm -q | grep apache

Az Apache elind�t�s�hoz, futtasd:

cd /etc/rc.d/init.d
./httpd start

Megjegyz�s: A httpd szkript helye, bootol�skor lehet, hogy m�shol van a k�l�nb�z� Linux diszrib�ci�kn�l.

Tov�bbi seg�ts�g�rt l�togass el az Apache weboldal�ra �s olvasd az Apache FAQ le�r�st a http://www.apache.org/docs/misc/FAQ.html honlapon.

3.2 IBM Domino

Ez a r�sz k�sz�l�ben van.

Tov�bbi inform�ci�k�rt keresd fel a http://www.lotus.com/dominolinux honlapot.

3.3 IBM HTTP Szerver

H�tt�r

Az IBM HTTP kiszolg�l�, egy Apache IBM sz�nekbe �lt�ztetve. Az IBM http kiszolg�l�j�t mindenk�ppen meg kell ismerned, ha IBM WebSphere-el akarsz dolgozni.

A doksi k�sz�l�sekor a naprak�sz verzi� az 1.3.6.1-es.

Let�lt�s

Az IBM HTTP kiszolg�l� let�lthet� a http://www-4.ibm.com/software/webservers/httpservers/download.html c�mr�l.

A let�lt�sre klikkelve v�laszd az 56, vagy 128 bites ssl k�dol�st.

Regisztr�lnod kell magad az IBM-n�l, ki kell t�ltened egy marketing k�rd��vet �s el kell fogadnod a licencet, miel�tt let�lt�d a programot. Az IBM http kiszolg�l� futtat�s�hoz a glibc 2.0-�s vagy 2.1-es verzi�j�ra lesz sz�ks�ged. A glib az �j Linux libc. Ha r�gebbi disztrib�ci�d van, ami libc5-�n alapul, akkor nem fogod tudni haszn�lni az IBM http kiszolg�l�t.

Egy RedHat Package Manager (RPM) alap� Linux disztrib�ci�n futtasd a k�vetkez� parancsot:

rpm -qa | grep libc

Hasonl� eredm�nyt fogsz l�tni:

glibc-2.1.2-11
libc-5.3.12-31

Ebb�l tudhat� meg, hogy melyik libc5 �s glibc verzi� van a g�peden. A k�vetkez� p�ld�ban �n mindkett�t telep�tettem a rendszeremre. A glibc verzi�m 2.1, teh�t a glibc2.1-es verzi�hoz tartoz� csomagot kell let�ltenem.

Javasolom, hogy t�ltsd le az �sszes tar f�jlt a Linuxod glib verzi�j�hoz, mivel viszonylag kis m�ret�ek. Ak�rmennyit is t�ltesz le, a szerver f�jlra sz�ks�ged lesz. RedHat 6.0 �s az ebb�l sz�rmaz� disztrib�ci�khoz csak a RedHat 6.0-ra lesz sz�ks�ged. A glibc 2.0-ra alapul� verzi�khoz sz�ks�ged lesz a libstdc f�jlra is.

Telep�t�s

Javasolom a f�jlokat az /usr/local k�nyvt�rba telep�tsd. A let�lt�s ut�n add ki a k�vetkez� parancsokat:

mkdir /usr/local/ibm
mv HTTPServer.linux.* /usr/local/ibm

Most m�r kicsomagolhatod a tar f�jlt:

tar xvf [filename].tar

Ahol a [filename] az �llom�ny neve.

Az /usr/local/ibm k�nyvt�r alatt most m�r l�tnod kell egy IHS k�nyvt�rat.

Haszn�ld a RedHat Package Manager programot (RPM) az rpm f�jlok telep�t�s�hez, amiket a tar f�jl tartalmazott. Ha sz�ks�ged van a libstdc f�jlra, akkor el�sz�r azt telep�tsd. Azut�n telep�theted a szerver rpm f�jlj�t, valahogy �gy:

cd IHS
rpm -i IBM_HTTP_Server-1.3.6-2.i386.rpm

A fenti p�ld�k 1.3.6-os verzi�ra, Intel architekt�r�ra k�sz�ltek. Helyettes�tsd a f�jlneveket, ahol sz�ks�ges. A telep�t�s ut�n k�nnyen t�r�lheted az rpm f�jlokat.

K�rnyezeti be�ll�t�sok

A k�vetkez� k�rnyezeti v�ltoz�kat kell be�ll�tanod:

Az IBM http kiszolg�l� az /opt/IBMHTTPServer k�nyvt�rba telep�ti mag�t. Ezt az �tvonalat hozz� kell adnod a PATH v�ltoz�hoz.

export PATH=/opt/IBMHTTPServer/bin:$PATH

Ellen�rizd, hogy az /opt/IBMHTTPServer/bin �tvonalat hozz�adtad a PATH v�ltoz�hoz, �gy az a Web-kiszolg�l� indul el, amit telep�tett�l, nem pedig az amelyik a Linux disztrib�ci�ddal �rkezett.

A PATH v�ltoz� be�ll�t�s�nak ellen�rz�s�hez n�zd meg melyik Apache kontrollert haszn�lod:

which apachectl

A v�lasznak az /opt/IBMHTTPServer/bin k�nyvt�rban l�v� apachectl-re kell mutatnia.

Figyelem: mivel az IBM http kiszolg�l� az Apache-on alapul, ez�rt az Apache controllert haszn�lja indul�skor �s le�ll�skor. Ha az IBM http kiszolg�l�t �s az Apache kiszolg�l�t is telep�tetted a g�pedre, akkor k�l�n�sen figyelj a PATH v�ltoz�ra, hogy a megfelel� kiszolg�l�t haszn�ld!

Lehet, hogy m�dos�tanod kell az IBM http kiszolg�l� konfigur�ci�s f�jlj�t. A konfigur�ci�s be�ll�t�sok az /opt/IBMHTTPServer/conf/httpd.conf f�jlban vannak. A k�t legfontosabb v�ltoztat�s amire sz�ks�ged lehet, az a kiszolg�l� nev�nek �s a portnak a be�ll�t�sa. Keresd a "ServerName" �s a "Listen" kulcsszavakat a http.conf f�jlban. A kiszolg�l� nev�nek be�ll�thatod a g�pneved vagy az IP c�med. Ha a sz�m�t�g�ped DHCP szolg�ltat�st haszn�l az IP c�m be�ll�t�s�hoz, akkor a "hostname" megad�sa jobb v�laszt�s lehet.

A sz�m�t�g�p nev�nek haszn�lat�hoz a "hostname"-nek �s az IP c�mnek regisztr�lva kell lennie a DNS-ben.

Azonfel�l, ha m�s web-kiszolg�l�t is futtatsz a g�pen, akkor az IBM http kiszolg�l�nak egy m�sik portot kell adnod, hogy mindkett� p�rhuzamosan �s megfelel�en m�k�dj�n.

�me egy p�lda a httpd.conf f�jl be�ll�t�s�hoz:

ServerName 192.168.0.4
Listen 3000

A telep�t�s ellen�rz�se

Az IBM http kiszolg�l� ind�t�s�hoz �rd be a k�vetkez�t:

/opt/IBMHTTPServer/bin/apachectl start

Az IBM http kiszolg�l� rendesen m�k�d�s�nek ellen�rz�s�hez ind�tsd el a b�ng�sz�d �s �rd be a k�vetkez� URL-t: http://192.168.0.4:3000 (helyettes�tsd a megfelel� IP c�mmel �s port sz�mmal, amiket a saj�t httpd.conf f�jlodba �rt�l.)

Egy "Welcome to the IBM HTTP Server" weboldalt kell l�tnod. Gratul�lok, telep�tetted, be�ll�tottad �s tesztelted az IBM http kiszolg�l�t Linux alatt!

Tov�bbi inform�ci�k

Tov�bbi inform�ci��rt keresd fel az IBM http kiszolg�l� http://www-4.ibm.com/software/webservers/httpservers/support.html honlapj�t.

3.4 Jetty HTTP kiszolg�l� �s szervlet kont�ner

H�tt�r

A Jetty egy ny�lt forr�sk�d�, 100%-ban Javaban �rt http szervlet szerver. Egy teljes http/1.1 �s szervlet kont�ner egyszerre. Egyszer� kezelhet�s�g, nagy hat�konys�g, be�gyazhat�s�g, kiterjeszthet�s�g �s rugalmass�g jellemzi, �gy ide�lis platform dinamikus http k�r�sek kiszolg�l�s�ra b�rmilyen Java program sz�m�ra.

A Jetty haszn�lhat� �nmag�ban http kiszolg�l�k�nt �s Servlet kont�nerk�nt, vagy be�gyazhat� egy m�sik Java alkalmaz�sba (pl: a JBoss EJB kont�ner a Jetty-t haszn�lja, mint prefer�lt kiszolg�l�t �s kont�nert.)

Mint kombin�lt kiszolg�l� �s servlet kont�ner, mindk�t funkci� hat�konyan fut egy egy Unix folyamatban. A telep�t�se �s a be�ll�t�sa olyan egyszer�, mint egy kis alkalmaz�s�.

Let�lt�s

A Jetty http kiszolg�l� �s Servlet kont�ner let�lthet� a

http://jetty.mortbay.org honlapr�l.

A Jetty az artistic liszenc al� tartozik, a teljes k�dot tartalmazza �s kereskedelemben terjeszthet�.

Telep�t�s

A csomag egy gzippelt tar f�jlban van, ami kicsomagolhat� a k�vetkez� paranccsal:

gunzip < Jetty-x.x.x.tgz | tar xf - 

Ez l�trehoz egy Jetty-x.x.x. k�nyvt�rat, ahol is az x.x.x a verzi�sz�mot jelenti.

A dem� kiszolg�l� futtat�s�hoz haszn�ld a k�vetkez� parancsokat:

export JETTY_HOME=<jetty install directory>
export JAVA_HOME=<JRE install directory>
$JETTY_HOME/bin/jetty.sh run 

A Jetty dem�j�nak ind�t�s�hoz �rd be a b�ng�sz�be: http://localhost:8080.

A Jetty, JMX vagy JBoss k�rnyezet r�szek�nt is telep�thet�. Tov�bbi inform�ci�k�rt l�togass el a http://jetty.mortbay.org honlapra, vagy olvasd el a README.TXT f�jlt.

4. Java szervlet t�mogat�s telep�t�se

Van n�h�ny WEB kiszolg�l�-b�v�tm�ny �s alkalmaz�s-kiszolg�l� Linuxon, amely t�mogatja a szervleteket. Ilyenek a k�vetkez�k:

4.1 Allaire JRun

A le�r�s elk�sz�t�se folyamatban van.

Tov�bbi inform�ci�k a http://www.allaire.com/products/jrun/ oldalon.

4.2 Apache Tomcat

H�tt�r

A JServ-et helyettes�tett�k az Apache Jakarta projektben Tomcat-el: http://jakarta.apache.org/. Ez a r�sz csak a JServvel foglalkozik �s friss�t�sre szorul.

Az Apache JServ egy 100%-osan tiszta Java szervlet motor, amely teljesen egy�ttm�k�dik a Java Servlet 2.0 specifik�ci�val. Az Apache JServ a Java Apache Project r�sze. (Az Apache Java Project weboldal�r�l.)

Let�lt�s

Apache JServ let�lthet� a http://java.apache.org/jserv/index.html oldalr�l.

Az Apache JServ Project weboldal�r�l indulva k�vesd a Download Apache JServ linket.

Jelenleg RPM csomagok �llnak rendelkez�sre RedHat Linuxra. M�s Linux disztrib�ci�khoz neked kell be�p�tened a forr�st. A k�vetkez� p�lda megmutatja, hogy hogyan telep�tsd az RPM-et RedHat 6x verzi�ra.

A doksi �r�sakor a legfrissebb verzi� az 1.1b3-as.

Telep�t�s

Az javasolom, hogy telep�tsd a f�jlokat az /usr/local k�nyvt�raba. Miut�n let�lt�tted �ket, futtasd a k�vetkez� parancsot:

mkdir /usr/local/apachejserv  
mv ApacheJServ*.rpm /usr/local/apachejserv 

RedHat �s RedHat alap� disztrib�ci�k eset�n haszn�ld az RPM-et a csomag telep�t�s�hez, valahogy �gy:

rpm -i ApacheJServ-1.1-b2_RH6x.i386.rpm  

A fenti p�ld�k az 1.1-b2 verzi�ra k�sz�ltek RedHat 6x al�, Intel architekt�r�ra.

K�rnyezeti be�ll�t�sok

Le kell �ll�tanod, hogy be�ll�thasd a k�rnyezeti v�ltoz�kat, majd �jra kell ind�tanod az Apache kiszolg�l�d az Apache Jserv-ed regisztr�l�s�hoz.

Az Apache le�ll�t�s�hoz, �rd be:

cd /etc/rc.d/init.d
./httpd stop

Megjegyz�s: A httpd szkript bootol�skor lehet, hogy m�shol tal�lhat� a k�l�nb�z� Linux diszrib�ci�kn�l.

A Java k�rnyezet be�ll�t�s�hoz n�zd meg a Hogyan telep�ts�nk JDK-t r�szt ebben a le�r�sban, az �ltalad haszn�lt JDK-ra val� tekintettel. Be kell �ll�tanod n�h�ny tulajdons�got a jserv f�jlban, ami az /etc/httpd/conf/jserv k�nyvt�rban tal�lhat�.

K�l�n�s tekintettel az al�bbiakra:

Az Apache �jraind�t�s�hoz, �rd be:

cd /etc/rc.d/init.d
./httpd start

Telep�t�s ellen�rz�se

Az Apache JServ telep�t�s�nek �s m�k�d�s�nek ellen�rz�s�hez nyisd meg a b�ng�sz�d �s �rd be az URL-be: "http://127.0.0.1/servlet/IsItWorking" . Helyettes�tsd a megfelel� IP c�met, ha egy m�sik g�pr�l b�ng�szel.

Egy "Yes, Its Working!" weboldalt kell l�tnod.

Gratul�lok, telep�tetted, be�ll�tottad, tesztelted az Apache JServ-et Linux alatt! Tov�bbi seg�ts�g�rt l�togass el az Apache JServ weboldal�ra a http://java.apache.org/jserv/index.html c�mre.

Most ford�tsd �s futtasd a saj�t kis szervleted. �rd be a k�vetkez� Java szervlet programot:

import java.io.*;  
import javax.servlet.*; 
import javax.servlet.http.*; 
 
public class HelloWorldServlet extends HttpServlet { 
  public void service (HttpServletRequest request, 
    HttpServletResponse response) throws ServletException, IOException { 
  } 
}

Tov�bbi inform�ci�k

Tov�bbi inform�ci��rt l�togass el a Java Apache Project weboldal�ra a http://java.apache.org/ c�mre.

4.3 BEA WebLogic

L�sd BEA WegLogic lejjebb.

4.4 Enhydra

A le�r�s elk�sz�t�se folyamatban van.

Tov�bbi inform�ci� tal�lhat� a http://www.enhydra.org oldalon.

4.5 IBM WebSphere

A le�r�s elk�sz�t�se folyamatban van.

Tov�bbi inform�ci� tal�lhat� a http://www-4.ibm.com/software/webservers/appserv/linux.html oldalon.

4.6 Locomotive

A le�r�s elk�sz�t�se folyamatban van.

Tov�bbi inform�ci� tal�lhat� a http://www.locomotive.org/ oldalon.

4.7 Jetty

A Jetty http szerver egy kombin�lt szerver �s szervlet kont�ner. A http szerver telep�t�se (l�sd fentebb) szervlet t�mogat�st is biztos�t. Tov�bbi inform�ci� el�rhet� a dem� szerveren �s az oktat�n kereszt�l, amit a http szerverrel egy�tt telep�tett�l.

5. Hogyan telep�ts Java Server Pages (JSP) t�mogat�st

A le�r�s elk�sz�t�se folyamatban van.

5.1 Apache Jakarta

A le�r�s elk�sz�t�se folyamatban van.

Tov�bbi inform�ci� tal�lhat� a http://jakarta.apache.com/ oldalon.

5.2 Caucho Resin

A le�r�s elk�sz�t�se folyamatban van.

Tov�bbi inform�ci� tal�lhat� a http://www.caucho.com/ oldalon.

5.3 Jetty

A Jetty HTTP szerver a Jasper JSP motorral rendelkezik. A HTTP szerver telep�t�se, lehet�s�get ad (l�sd fent 3.4) JSP t�mogat�sra. Tov�bbi inform�ci� el�rhet� a dem� szerveren �s az oktat�n kereszt�l, amit a http kiszolg�l�val egy�tt telep�tett�l.

6. JDBC t�mogat�s telep�t�se

Van n�h�ny adatb�zis, ami fut Linux alatt �s t�mogatja a JDBC interf�szt. Ezek p�ld�ul:

Ha csak egy DBMS-t szeretn�l kipr�b�lni, akkor el�sz�r a PostgreSQL-el pr�b�lkozz, ez minden nagyobb Linux-disztrib�ci�ban benne van �s lehet, hogy m�r telep�tve van a rendszeredre.

6.1 IBM DB2

A le�r�s elk�sz�t�se folyamatban van.

Tov�bbi inform�ci� tal�lhat� a http://www-4.ibm.com/software/data/db2/linux/ oldalon.

6.2 MiniSQL

A le�r�s elk�sz�t�se folyamatban van.

Tov�bbi inform�ci� tal�lhat� a http://www.hughes.com.au/ oldalon.

6.3 MySQL

A le�r�s elk�sz�t�se folyamatban van.

Tov�bbi inform�ci� tal�lhat� a http://www.mysql.org/ oldalon.

6.4 Oracle

A le�r�s elk�sz�t�se folyamatban van.

Tov�bbi inform�ci� tal�lhat� a http://platforms.oracle.com/linux/ oldalon.

6.5 PostgreSQL

H�tt�r

A PostgreSQL egy kifinomult objektum-rel�ci�s alap� DBMS, amely t�mogatja a legt�bb SQL konstruktort, subselect-et, tranzakci�kat �s a felhaszn�l� �ltal defini�lt t�pusokat �s funkci�kat. Ez a jelenlegi legjobb ny�lt forr�sk�d� adatb�ziskezel�, ami el�rhet�. Kereskedelmi forgalomban is kaphat� a PostgreSQL Inc-t�l. A jelenlegi verzi� a 6.5.3-as �s el�rhet� b�rmelyik t�k�roldalr�l vagy CD-r�l. (A PostgreSQL weboldal�r�l)

Lehets�ges, hogy a PostgreSQL m�r a Linux disztrib�ci�dban benne van, hiszen ez is ny�lt forr�sk�d�.

Let�lt�s �s telep�t�s

Azt javasolom, hogy kezdetben ink�bb azt a PostgreSQL-t haszn�ld, amelyik a Linux disztrib�ci�dban van, mintsem egy let�lt�tt verzi�t.

Vagy ha m�gsem azt akarod haszn�lni, akkor megtal�lod a PostgreSQL-t a http://www.postgresql.org oldalon.

Annak ellen�rz�s�hez, hogy a PostgreSQL m�r telep�tve van-e a g�pedre, �rd be a k�vetkez� parancsot:

rpm -qa | grep postgresql

vagy

which postmaster
which psql

Sz�ks�ged lesz a telep�tett postgresql, postgresql-szerver, �s postgresql-java csomagokra, hogy a Jav�t egy�tt haszn�ld a PostgreSQL-el.

Ellen�rizd, hogy fut-e a PostgreSQL:

ps -f -u postgres

Most l�tnod kell a postmaster, a PostgreSQL d�mon fut�s�t.

Ha a postmaster nem fut, akkor van egy Sys V Init szkript, amivel elind�thatod. Ez a legt�bb disztrib�ci�ban az /etc/rc.d/init.d k�nyvt�rban tal�lhat�. A PostgreSQL ind�t�s�hoz �rd be:

cd /etc/rc.d/init.d
./postgresql start

Haszn�lhatod a fentebb m�r le�rt ps parancsot, a PostgreSQL fut�s�nak ellen�rz�s�hez.

Megjegyz�s: A JDBC haszn�lat�hoz a PostgreSQL-t -i -vel kell ind�tanod! Egy�bk�nt csak UNIX domain socket-eket fog t�mogatni, TCP/IP kapcsolatot nem. Ellen�rizd, hogy a postmaster az -i param�terrel indult!

K�sz�ts egy pr�ba adatb�zist:

su - postgres
createdb javatest

Nem szabad hiba�zenetet kapnod.

K�sz�ts egy pr�ba t�bl�t egy pr�ba sorral. Els�k�nt jelentkezz be az interakt�v PostgreSQL fel�letre �s kapcsol�dj a javatest adatb�zishoz, amit k�sz�tett�l:

psql javatest

Egy meger�s�t�st kell l�tnod, hogy kapcsol�dt�l a javatest adatb�zishoz. Azut�n k�sz�ts egy pr�ba t�bl�t (psql n�lk�l):

create table test (col1 varchar(255));

A "CREATE" �zenetet kell l�tnod, ha elk�sz�lt.

A k�vetkez� l�p�sben helyezz el benne egy sort (psql n�lk�l):

insert into test (col1) values ('Hello, from PostgreSQL!');

Egy "INSERT" v�lasz�zenetet kell kapnod.

V�g�l ellen�rizd, hogy a sor a hely�n van (psql n�lk�l):

select col1 from test;  

Most l�tnod kell a lek�rdez�s eredm�ny�t. A kil�p�shez �rd be, hogy "\q".

Tov�bbi seg�ts�g�rt n�zd meg a Database-SQL-RDBMS HOW-TO doksit a http://metalab.unc.edu/mdw/HOWTO/PostgreSQL-HOWTO.html c�men.

A sz�ks�ges JAR-okat hozz� kell adnod a CLASSPATH v�ltoz�hoz. A PostgreSQL JAR-ok a postgresql-jdbc csomagban vannak.

export CLASSPATH=$CLASSPATH:/usr/lib/pgsql/jdbc6.5-1.2.jar

Helyettes�tsd a megfelel� �tvonalat arra ahol a te PostgreSQL csomagod van.

A telep�t�s ellen�rz�se

Most m�r ford�thatsz �s futtathatsz egy egyszer� JDBC alkalmaz�st, ami PostgreSQL-t haszn�l. K�sz�tsd el a k�vetkez� programot:

import java.sql.*;

class PostgreSQLTest {
  public static void main (String[] args) {
    try {
      Driver driver = (Driver)
        Class.forName("postgresql.Driver").newInstance();
      DriverManager.registerDriver(driver);

      String     url = "jdbc:postgresql:javatest"; 
      Connection con = DriverManager.getConnection(url, "postgres", ""); 
      Statement  stm = con.createStatement(); 
 
      stm.setQueryTimeout(10); 
      ResultSet  rs  = stm.executeQuery("select col1 from test"); 
 
      rs.next(); 
 
      System.out.println(rs.getString(1)); 
 
    } catch (SQLException e) { 
 
      System.out.println("Exception!"); 
      System.out.println(e.toString()); 
  } 
} 

Ford�tsd le a Java ford�t�val.

javac PostgreSQLTest.java  

Ha a ford�t� hib�t produk�l, ellen�rizd dupl�n a szintaxist �s ellen�rizd a PATH �s a CLASSPATH v�ltoz�k be�ll�t�sait.

Futtasd a programot a JVM-el.

java PostgreSQLTest  

Ha a JVM hib�t produk�l, akkor ellen�rizd a PATH �s a CLASSPATH �tvonalakat.

A k�vetkez�t kell l�tnod:

Hello, from PostgreSQL!  

Gratul�lok, telep�tetted, be�ll�tottad �s tesztelted a JDBC interf�szt a PostgreSQL-el!

Tov�bbi inform�ci�k

Tov�bbi inform�ci��rt keresd fel a PostgreSQL weboldal�t a http://www.postgresql.org/. oldalon.

6.6 Sybase

H�tt�r

A Sybase Adaptive Server Enterprise egy kereskedelmi forgalomban l�v� RDBMS, ami el�rhet� Linux oper�ci�s rendszerre. A Sybase jelenleg kiadott verzi�ja a 12.0-�s, Linuxra m�g csak a 11.9.2 �rhet� el.

Id�zet a Sybase weboldal�r�l: "Az ASE-t a Linuxhoz implement�lva, a Sybase az els� magasan sk�l�zhat�, nagy hat�konys�g� adatb�zis motort adja a Linux fejleszt�k kez�be. A csomag tartalmazza az Adaptive Server Enterprise ir�nyad� saj�toss�gait �s a kapcsol�d� komponenseket. Az Adaptive Server Enterprise fejleszt�sre szabadon haszn�lhat�."

Let�lt�s

A Sybase ASE let�lthet� a http://www.sybase.com/products/databaseservers/linux/linux1192_reg.html oldalr�l.

A let�lthez regisztr�lnod kell magad a Sybase-n�l �s el kell fogadnod a licenc felt�teleit.

A Sybase JDBC meghajt� let�lthet� a http://www.sybase.com/products/internet/jconnect/ oldalr�l.

A let�lt�sn�l v�laszd a jConnect 4.2/5.2 csomagot.

Ha van hozz�f�r�sed a Sybase szerver h�l�zat�hoz, akkor csak let�ltened �s telep�tened kell a JDBC meghajt�t.

Telep�t�s

A Sybase telep�t�se ezen HOGYAN hat�k�r�n k�v�l esik. Ez a HOGYAN felt�telezi, hogy a Sybase-t rendben telep�tetted �s konfigur�ltad, �s k�sz vagy a Sybase isql haszn�lat�ra.

Jelentkezz be az isql-be mint rendszer adminisztr�tor �s k�sz�ts egy teszt felhaszn�l�t �s adatb�zist.

create database javatest  
go 
sp_addlogin javatest, javatest, javatest 
go 
use javatest 
go 
sp_dbowner javatest 
go 

Nem szabad hiba�zenetet kapnod.

K�sz�ts egy pr�ba t�bl�t egy pr�ba sorral. El�sz�r jelentkezz be az isql-be mint a javatest felhaszn�l�ja �s �rd be a k�vetkez�t:

create table test (col1 varchar(255))  
go 

Nem szabad hiba�zenetet kapnod.

Vegy�l fel egy rekordot:

insert into test (col1) values ('Hello, from Sybase!')  
go 

Nem szabad hiba�zenetet kapnod.

V�g�l ellen�rizd, hogy a rekord a hely�n van:

select col1 from test  
go 

Most azt a sort kell l�tnod, amit bevitt�l.

Az isql-b�l az "exit" be�r�s�val tudsz kil�pni.

Tov�bbi seg�ts�g�rt a Sybase-el val� munk�hoz n�zd �t a dokument�ci�j�t, ami let�lthet�.

Sz�ks�ged lesz a megfelel� JAR-okra a CLASSPATH v�ltoz�ban.

export CLASSPATH=$CLASSPATH:/usr/local/sybase/jConnect-5_2/classes/jconn2.jar  

A megfelel� �tvonalat helyettes�tsd, att�l f�gg�en, hogy a jConnect hov� telep�lt a rendszeredben.

A telep�t�s ellen�rz�se

Most m�r ford�thatsz �s futtathatsz egy egyszer� JDBC alkalmaz�st, ami Sybase-t haszn�l. K�sz�tsd el a k�vetkez� programot.

import java.sql.*;  
 
class SybaseTest { 
  public static void main (String[] args) { 
    try { 
      Driver driver = (Driver) 
        Class.forName("com.sybase.jdbc2.jdbc.SybDriver").newInstance(); 
      DriverManager.registerDriver(driver); 
 
      String     host = "127.0.0.1"; 
      String     port = "4100"; 
 
      String     url = "jdbc:sybase:Tds:" + host + ":" + port; 
      Connection con = DriverManager.getConnection(url, "javatest", "javatest"); 
      Statement  stm = con.createStatement(); 
 
      stm.setQueryTimeout(10); 
      ResultSet  rs  = stm.executeQuery("select col1 from test"); 
 
      rs.next(); 
 
      System.out.println(rs.getString(1)); 
 
    } catch (SQLException e) { 
 
      System.out.println("Exception!"); 
      System.out.println(e.toString()); 
  } 
} 

Ahol sz�ks�ges helyettes�tsd a host-ot �s a port sz�mot. N�zd meg a $SYBASE/interfaces �s a $DSQUERY bel�p�seit a host �s port be�ll�t�s�hoz.

Ford�tsd le a programot a Java ford�t�val.

javac SybaseTest.java  

Ha a ford�t� hib�t produk�l, akkor n�zd meg a szintaxist �s ellen�rizd a PATH �s a CLASSPATH v�ltoz�k be�ll�t�sait.

Futtasd a programot a JVM-mel.

java SybaseTest  

Ha a JVM hib�t produk�l, akkor ellen�rizd a PATH �s a CLASSPATH v�ltoz�k be�ll�t�sait.

A k�vetkez� eredm�nyt kell l�tnod:

Hello, from Sybase!  

Gratul�lok, telep�tetted, be�ll�tottad �s tesztelted a JDBC interf�szt a Sybase-hez.

Tov�bbi inform�ci�k

Tov�bbi inform�ci��rt l�togass el a Sybase jConnect weboldal�ra a http://www.sybase.com/products/internet/jconnect/ helyen.

7. Hogyan telep�ts�k az Enterprise Java Bean (EJB) t�mogat�st

A le�r�s elk�sz�t�se folyamatban van.

7.1 BEA WebLogic

A le�r�s elk�sz�t�se folyamatban van.

Tov�bbi inform�ci� tal�lhat� a http://www.beasys.com/linux/ honlapon.

7.2 EJBoss

H�tt�r

Az EJBoss a JBoss-t�l kapta a nev�t �s nagyon j�l m�k�dik egy�tt a stabil J2EE verzi�kkal: http://www.jboss.org/.

Ez a r�sz akkor k�sz�lt, amikor m�g csak az EJBoss 0.95-�s verzi�ja jelent meg, ez�rt felt�tlen�l friss�tsd az inform�ci�kat.

Let�lt�s

A JBoss let�lthet� a JBoss weboldal�r�l: http://www.jboss.org/.

Telep�t�s

Azt javasolom, hogy telep�tsd a f�jlokat az /usr/local k�nyvt�rba. A let�lt�s ut�n futtasd a k�vetkez� parancsokat:

mkdir /usr/local/ejboss 
mv ejboss* /usr/local/ejboss

Csomagold ki a f�jlt:

jar xvf ejboss095_jdk122.jar

Mindenf�le f�jlt �s k�nyvt�rat kell l�tnod az /usr/local/ejboss k�nyvt�rban.

A fenti p�lda az EJBoss 0.95-�s verzi�ja alapj�n k�sz�lt. Helyettes�tsd a f�jlneveket, ahol sz�ks�ges.

K�rnyezeti be�ll�t�sok

A k�vetkez� k�rnyezeti v�ltoz�kat kell be�ll�tanod:

A CLASSPATH v�ltoz� mutatja meg, hogy mely JAR-okra �s k�nyvt�rakra lesz sz�ks�ged, hogy ford�ts �s futtass Java programokat. A CLASSPATH felt�tlen�l tartalmazza az EJBoss JAR-t �s a /bean/generated k�nyvt�rakat.

export CLASSPATH=/usr/local/ejboss/lib/ejboss095_jdk122.jar:/usr/local/ejboss/beans/generated:$CLASSPATH

A telep�t�s ellen�rz�se

Most m�r ford�thatsz �s futtathatsz egy egyszer� EJB alkalmaz�st. K�sz�tsd el a k�vetkez� h�rom forr�sf�jlt a szerver sz�m�ra.

El�sz�r a business interf�szt.

// EJBTest.java

import javax.ejb.*;
import java.rmi.RemoteException;

public
 interface EJBTest extends EJBObject { 
  public String greet() throws
 RemoteException;

}

M�sodszor, a home interf�szt.

// EJBTestHome.java

import javax.ejb.*;
import java.rmi.RemoteException;

public
 interface EJBTestHome extends EJBHome {

  public EJBTest create() throws
 
   CreateException, RemoteException;
}

Harmadszor, a bean implement�ci�s oszt�lyt.

// EJBTestBean.java

import javax.ejb.*;
import java.rmi.RemoteException;

public
 interface EJBTestBean implements SessionBean {

  private SessionContext
 mContext = null;

  public void ejbPassivate() {
    System.out.println("EJBTestBean
 passivated.");
}

  public void ejbActivate() {
    System.out.println("EJBTestBean
 activated.");
}

  public void ejbCreate() {
    System.out.println("EJBTestBean
 created.");
}

  public void ejbRemove() {
    System.out.println("EJBTestBean
 removed.");
}

  public void setSessionContext() {
    System.out.println("EJBTestBean
 context set.");
    mContext = context;
}

  public String greet()
 {
    return "Hello, I'm an EJB!";
}

}

Ford�tsd le a szerver forr�sf�jljait a Java ford�t�val:

javac EJBTest*.java

Ha a ford�t� hib�t produk�l, akkor n�zd meg k�tszer is a szintaxist �s ellen�rizd a PATH �s a CLASSPATH v�ltoz�k be�ll�t�sait.

Most, hogy meg�rtad �s leford�tottad a szerver forr�sf�jljait, t�ltsd fel a beaneket az EJBoss-ba. Ez n�h�ny nagyon fontos l�p�sb�l �ll, amelyekre figyelni kell.

El�sz�r k�sz�tsd el az ejb-jar.xml f�jlt.

<?xml version="1.0" encoding="Cp1252"?>
 
<ejb-jar ID="">
     <description></description>
     <display-name></display-name>
     <small-icon></small-icon>
     <large-icon></large-icon>
     <ejb-client-jar></ejb-client-jar>
     <enterprise-beans>
       <session>
         <description>Nextgen bean</description>
         <ejb-name>nextgen.EJBTest</ejb-name>
         <home>EJBTestHome</home>
         <remote>EJBTest</remote>
         <ejb-class>EJBTestBean</ejb-class>
         <session-type>Stateful</session-type>
         <transaction-type>Bean</transaction-type>
         <env-entry>
           <description></description>
           <env-entry-name></env-entry-name>
           <env-entry-type>java.lang.String</env-entry-type>
           <env-entry-value></env-entry-value>
         </env-entry>
         <resource-ref>
           <description></description>
           <res-ref-name></res-ref-name>
           <res-type></res-type>
           <res-auth>Container</res-auth>
         </resource-ref>
       </session>
     </enterprise-beans>
     <assembly-descriptor />
   </ejb-jar>

A fenti ejb-jar.xml f�jl azonos�tja az interf�szt �s az oszt�lyneveket, amelyeket k�sz�tett�l. M�sodszor, a h�rom "class" f�jl k�nyvt�r�ban k�sz�ts egy META-INF k�nyvt�rat.

mkdir META-INF
mv ejb-jar.xml META-INF

Harmadszor, csomagold a f�jlokat egy jar-ba.

jar cvf EJBTest.jar EJBTest*.class META-INF/ejb-jar.xml

L�tnod kellene, hogy hozz�ad�dott a list�hoz, csak�gy mint a h�rom "class" f�jl �s az XML bet�lt�st le�r� f�jlt.

Negyedszer, tedd a most k�sz�lt Jar-t az EJBoss bean k�nyvt�r�ba.

mv EJBTest.jar /usr/local/ejboss/beans

�t�dsz�r, m�sold az oszt�lyf�jlokat, amiket k�sz�tett�l, az EJBoss beans/generated k�nyvt�rba.

mv EJBTest*.class /usr/local/ejboss/beans/generated

(Az �t�dik l�p�s felesleges egy hiba miatt, ami az EJBoss 0.95-ben van.)

Most m�r elind�thatod az EJBoss kiszolg�l�t.

cd /usr/local/ejboss
sh server.sh

Azt kell l�tnod, hogy a proxy f�jlok automatikusan leford�t�dnak �s meger�s�tik, hogy az EJB-d bet�lt�d�tt.

Most m�r �rhatsz, ford�thatsz �s tesztelhetsz egy egyszer� kliens alkalmaz�st.

7.3 Bullsoft JOnAS EJB

A le�r�s elk�sz�t�se folyamatban van.

Tov�bbi inform�ci� tal�lhat� a http://www.bullsoft.com/ejb/ oldalon.