Internet ve znamení appletů a servletů

Applety a servlety, drobné aplikace napsané v Javě, mohou zlepšit zobrazování a zasílání webových stránek. V okam


Applety a servlety, drobné aplikace napsané v Javě, mohou zlepšit zobrazování a
zasílání webových stránek.
V okamžiku, kdy Java přišla na scénu, staly se javové applety hvězdami našeho
všedního dne. Bylo jasné, že HTML prohlížeče jsou pro ně skvělou univerzální
aplikační platformou, byť nepříliš bohatou. Applety slibovaly to nejlepší z
obou světů: nulovou instalaci, dobrou kompatibilitu (stačí jednou napsat a už
běží kdekoli write-once, run anywhere), kvality čistého HTML a bohatství
nativního grafického uživatelského rozhraní (GUI). Dosud se však tato vize
nenaplnila. Nedávný průzkum zjistil, že Java applety jsou používány jen na 2 %
z 500 nejvíce navštěvovaných Webů. Proč? Někteří vývojáři vidí nedostatky v
režii nutné na interpretaci bytecodu ve virtuálním javovém stroji (JVM). Jiní
obviňují "security sandbox", který ochraňuje Javu před plným využitím lokálních
i vzdálených služeb. Další zmiňují rozdíly mezi JVM hlavních prohlížečů.
Cokoliv je příčinou, po polovině dekády applety neuspěly v tom, co slibovaly
totiž že nahradí webové aplikace založené na HTML stejně portovatelnými a
mobilními, ale funkčně kvalitnějšími webovými aplikacemi s GUI.
I přesto, že však applety nefungují podle původních reklamních hesel, dělají
mnoho užitečných věcí. Tady je jen několik významných příkladů: lProdukt
AnywareOffice od společnosti VistaSource ve Westboro (www.anywareoffice.com):
VistaSource používá Java applet k dodání Applixware, jejich populárního
linuxového kancelářského balíku, do prohlížečů podporujících Javu. Když ASP
(application service provider) hostí AnywareOffice, aplikace (jako textový
procesor) běží na serveru, ale zobrazují se v appletu. To je do jisté míry
analogické k produktům Citrixu a k modelu Microsoft Terminal Serveru. lApplet
QuestAgent od JObjects z Las Vegas
(www.jobjects.com/products/questagent/index.html): Tento applet je
krosplatformní vyhledávací nástroj často zahrnovaný do CD-ROM publikací
založených na HTML. Prohlížeč může zobrazit obsah takové publikace, ale nemůže
prohledávat její index. QuestAgent dodává portovatelné vyhledávání a eliminuje
potřebu vytvářet a nasazovat nativní vyhledávací stroj. lMindTerm od Mindbright
Technologies AB ze Stockholmu
(www.mindbright.com/english/technology/products/mindterm/index.html):
Předpokládejme, že jste pryč ze své kanceláře, bez svého laptopu, a potřebujete
přenést soubor na váš domovský server. MindTerm, na Javě založená implementace
Secure Shellu (SSH), vám umožňuje transformovat jakýkoli prohlížeč schopný
spustit Javu na SSH klienta, takže můžete použít šifrovanou session pro přenos
souborů. Nástup servletů Zatímco Javě na klientské straně se nedařilo tak, jak
se očekávalo, jiné použití Javy na straně serveru se stalo docela významným
impulzem k vývoji aplikací. Dnes javové aplikační servery podporují velké (a
stále rostoucí) množství webových služeb. A jejich lingua franca je servletové
aplikační programové rozhraní (API), které definuje, jak Java servlet
interaguje s hostitelem založeným na Javě. Standardem se postupně stávají
Enterprise JavaBeans.
Protože jsou servlety psány v Javě, vytvářejí skvělou platformu pro síťové
služby. Programátoři např. v Javě neřídí paměť přímo, takže se servlety
vyvarují chyb typu buffer-overrun, které vytvářejí bezpečnostní slabiny v
softwaru napsaném v C nebo C++. Jednoduchý mechanismus Javy na ošetření chyb a
multithreading podněcuje vývoj spolehlivých a dobře reagujících síťových služeb.
Servlety mají (proti appletům na druhé straně komunikačního řetězce) jednu
velkou architektonickou výhodu, která jim umožňuje plně využít vnitřních výhod
Javy. Když applet posílá data po síti v nekompatibilním JVM, je pravděpodobné,
že nebude správně fungovat pokud vůbec. Servlet je nasazován v mnohem
kontrolovanějším prostředí. Neexistují zde problémy s kompatibilitou. A co víc,
prostředí, které obklopuje tento JVM, může zlepšit výkonnost servletu. Některé
javové aplikační servery mohou kompilovat servlety do nativního kódu, čímž se
dramaticky zvýší rychlost provádění. Jiné spouštějí více JVM paralelně, někdy
napříč více procesy v operačním systému hostitelského počítače. Tyto strategie
zlepšují škálovatelnost služeb a odolnost vůči chybám. Protože jsou servlety
jednoduché a efektivní, jiné technologie je používají jako stavební kameny.
Máme na mysli například Java Server Pages (JSP), systém šablon, který injektuje
javovskou logiku do HTML stránek, jako u Active Server Pages od Microsoftu.
Když JSP hostitel obdrží poprvé požadavek na JSP stránku, zkompiluje javovskou
logiku a HTML obsah do servletu. Potom je požadavek na stránku uspokojován
servletem. Java applety již mohou pomalu začít plnit své původní sliby.
Poptávka po bohatším webovém GUI roste a žádná jiná technologie na obzoru
nenabízí takovou portovatelnost napříč platformami, napříč prohlížeči, jako
Java. Nicméně tím skutečným úspěchem pro Javu jsou rozhodně servlety.

Zajímavé zdroje appletů
lZdroje appletů od Sun Microsystems:
http://java.sun.com/applets/resources.html. Na této adrese naleznete kolekci
informací o Java appletech. Nechybějí linky na stránky se sbírkami zajímavých
appletů, ani podrobné návody pro tvorbu aplikací v Javě. Dozvíte se zde i
novinky, najdete tu stránky s diskusemi vývojářských komunit, případové studie
a on-line podporu. lJavaBoutique na Internet.com:
http://javaboutique.internet.com/. Jde o webové stránky plné zdrojů s Java
applety. Najdete zde nové aplikace v Javě, návody, applety pro programátory,
applety pro webmastery, FAQ, diskusní skupiny a uživatelská hlasování. K
dispozici je i týdenní informační zpravodaj zdarma nazývaný JNews, který byl
vytvořen pro poskytování nejčerstvějších informací o Java appletech, vývojových
trendech a průmyslových novinkách.

Zajímavé zdroje servletů
lSun Microsystems: http://java.sun.com/products/servlet/index.html. Zde můžete
najít linky na servletové news, informace o technologii Java servlet i o
souvisejících produktech, technické zdroje, implementace a specifikace.
lJcorporate: http://www.jcorporate.com/ nabízí kolekci open-source a komerčních
e-business webových aplikací založených na Java servletech. Zahrnuje zprávy o
novinkách a burzu pro outsourcovaný vývoj v Javě. lServletSource.com:
http://www.servletsource.com/ nabízí zdroje týkající se Javy a serverů včetně
článků a kolekcí volných a komerčních servletů. Jsou zde rovněž linky na
nástroje, aplikační servery, diskusní fóra a knihovny.
1 0037 / pen









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.