n gif bytes e mail ales zivkovic uni mb si konec leta je podjetje sun microsystems na konferenci java bussiness conference v new yorku predstavilo referencno implementacijo java platforme za velika podjetja ali enterprise edition v izvirniku skladno s poimenovanjem bomo uporabljali kratice j ee in j sdk ee specifikacija vsebujejo naslednje tematike predstavitev platforme varnost upravljanje transakcij poimenovanje opis knjiznic sodelovanje z drugimi arhitekturami pakiranje in predajo odjemalce predstavili jo bomo z opisom arhitekture ki nam pregledno predstavi zgradbo in namen j ee prikazuje jo slika slika arhitektura j ee j ee izvajalno okolje je sestavljeno iz naslednjih elementov aplikacijske komponente j ee programski model definira stiri tipe aplikacijskih komponent ki jih implementacija specifikacije mora podpret aplikacijski odjemalci apleti servleti jsp in ejb razdelimo jih lahko na tri kategorije in sicer komponente ki jih namestimo upravljamo in izvajamo na strezniku jsp servleti ejb komponente ki so namescene in upravljane na strezniku vendar se izvajajo na odjemalcu html strani apleti komponente katerih namescanje in upravljanje ni v celoti domena j ee specifikacije aplikacijski odjemalci vsebniki zagotavljajo izvajalsko okolje za aplikacijske komponente in predstavljajo enoten pogled na nizje lezece knjiznice api taksna arhitektura povezuje aplikacijske komponente in storitve ki jih predpisuje specifikacija in prozenje storitev napravi transparentno implementacija specifikacije mora zagotovit vsebnike za vse tipe aplikacijskih komponent odemalski vsebnik aplet vsebnik spletni vsebnik ebj vsebnik specifikacija zahteva da vsebnik zagotovi izvajalsko okolje ki je definirano z j se specifikacijo vsebnik apletov lahko uporablja tudi javaplug in in z njim zagotovi potrebno izvajalsko okolje orodja vsebnika prav tako podpirajo in razumejo formate za pakiranje aplikacijskih komponent pred njihovo predajo npr jar zbirke vsebnike izdela j ee izdelovalec implementacija omenjenih vsebnikov je kombinacija obstojecih tehnologij za podporo transakcijskim storitvam v kombinaciji z java platformo j ee odjemalska osnova je tipicno grajena na j se tehnologiji standardni servisi specifikacija doloca tudi nabor standardnih storitev ki jih mora vsak j ee produkt podpirat in s tem tudi zagotovit standardni servisi so gonilniki za upravljanje z viri podatkovna baza http https jta rmi iiop java idl jdbc jms jndi javamail pravzaprav gre za vrsto knjiznic ki omogocijo aplikacijskim komponentam dostop in uporabo teh storitev storitve je moc tudi razsiriti zato specifikacija podpira standarden nacin ravnanja z razsiritvami opomniti je potrebno da slika prikazuje logicne povezave med posameznimi deli platforme ne pomeni pa da je taksna delitev tudi fizicno potrebna in zahtevana prakticno to pomeni da lahko vsi zgoraj opisani deli obstajajo na enem samem racunalniku varnost specifikacije nadgradijo standardno java varnost ki je v primeru velikih podjetij se toliko bolj pomembna saj stevilne vire podjetja uporablja mnozica zaposlenih z razlicnimi pooblastili podatki pa po omrezju intranet in ali internet potujejo nezasciteni s strani samega omrezja potrebujemo torej ustrezne mehanizme in infrastrukturo ki jih podpira govorimo o naslednjih karakteristikah ki jih implementacija specifikacije mora podpret ceprav se kakovost in podrobnosti pri zagotavljanju teh lastnosti lahko razlikujejo od proizvajalca do proizvajalca overjanje nacin na katerega se obe strani v komunikaciji dokazeta kot taksni za kateri se predstavljata nadzor dostopa za vire delo z viri se omeji na skupine uporabnikov ali programov z namenom zagotoviti integriteto zaupnost in omejitve dostopa podatkovna integriteta nam zagotavlja da ni prislo do nepooblascenih sprememb podatkov zaupnost ali zasebnost podatkov podatki morajo biti dostopni samo uporabnikom ki so autorizirani za njihovo uporabo potrditev akcij zagotovitev jasnega dokaza da je uporabnik izvrsil doloceno akcijo tako da je uporabnik ne more razumno zanikati nadzor gre za ugotavljanje poskusov vlomov z namenom dokazovanja zagotavljanja zelenega nivoja varnosti varnost komponentam zagotavlja vsebnik v katerem se nahajajo vsebnik loci dve obliki varnosti deklarativna varnost doloca varnostno strukturo aplikacije vloge nadzor dostopa zahteve po potrjevanju pristnosti ki se nahaja zunaj same aplikacije opisni element deployment descriptor je primarni mehanizem za vzpostavitev deklarativne varnosti gre za sporazum med izdelovalcem komponente in namestiteljem aplikacije programska varnost varnost je lahko vkljucena v samo aplikacijo in je kot dopolnilo k deklarativni varnosti v primerih ko samo deklarativna varnost ne zadostuje temelji na stirih metodah iscallerinrole ejbcontext getcallerprincipal ejbcontext isuserinrole httpservletrequest getuserprincipal httpservletrequest metode omogocajo komponentam sprejemanje odlocitev na podlagi zaznanih vlog uporabnika programski vmesniki programske vmesnike glede na tip vmesnika prikazuje tabela tabela programski vmesniki glede na tip vmesnika odjemalci v obliki aplikacij lahko uporabljajo samo vmesnike namenjene odjemalcem servleti in jsp strani lahko uporabljajo samo vmesnike namenjene odjemalcem podrobnejsi opisi posameznih vmesnikov presegajo obseg tega prispevka nekateri med njimi so ze bili opisani v nasem spletnem casopisu glej minule prispevke predaja slika zdruzevanje posameznih komponent v enotno j ee aplikacijo j ee aplikacijo sestavlja ena ali vec komponent kateri pripada opisni element deployment descriptor dd skupaj jih imenujemo moduli ki predstavljajo osnovni gradnik za sestavljanje aplikacije komponente lahko zdruzujemo kot samostojne komponente knjiznice komponent ali kot aplikacije aplikacija lahko zdruzi vse dd v en opisni element nacin zdruzevanja posameznih komponent v enotno j ee aplikacijo prikazuje slika aplikacijo nato s pomocjo orodja za namescanje enostavno prenesemo v dano okolje slika poenostavljen zivljenjski cikel j ee aplikacije za konec si poglejmo se zivljenjski cikel j ee aplikacije kot ga doloca specifikacija poenostavljen shematski zivljenjski cikel j ee aplikacije je sestavljen iz treh faz in ga prikazuje slika faze in njihov pomen je sledec ustvarjanje komponent specifikacije ejb servletov in odjemalcev vsebujejo dtd document type definition zapisan kot xml dokument ki predpisuje obliko deployment descriptorja in arhitekture pakiranja komponente da dobimo j ee module modul je skupek ene ali vec j ee komponent istega vsebniskega tipa z enim dd tega tipa sestavljanje aplikacije aplikacijo sestavlja eden ali vec modulov in pridruzen aplikacijski dd aplikacija je zapakirana s pomocjo java archive formata ki ima koncnico ear enterprise archive predaja deployment aplikacijo namestimo in konfiguriramo na ciljnem sistemu zakljucek zakljucimo lahko da si z zadnjo razlicico java platforme java zeli se bolj prodreti v svet streznikov in elektronskega poslovanja za specifikacijo ki je bila izdana v drugi polovici leta je decembra prisla se referencna implementacija ki trenutno deluje le na solaris sparc in nt platformi ceprav jo lahko z ustreznimi popravki uporabljamo tudi na operacijskem sistemu windows vec o tem in izdelavi j ee aplikacij v naslednji stevilki cotl a ki bo s prispevkom delo z j sdk ee bolj prakticno naravnana razlaga poimenovanje zaradi zmede pri uporabi izraza java in jdk skozi vse prejsnje verzije so se pri podjetju sun odlocili za spremembo poimenovanja in s tem odpravo vseh nejasnosti pri uporabi izrazov tako so locili specifikacijo java platforme od implementacije le te pojavita se izraza java platform standard edition v ali krajse j se in java enterprise edition v skrajsano j ee gre za dokaj natancne specifikacije java platforme kjer pa velja opozoriti da specifikacije za standardno razlicico ni bilo moc najti na drugi strani najdemo kratico j sdk standard edition v ki predstavlja skupek orodij in knjiznic ki smo jih prej poznali pod kratico jdk java development kit analogno predstavlja j sdk enterprise edition v referencno implementacijo j ee specifikacije razlicica je kot ze ime samo pove namenjena vecjim podjetjem in streznisko usmerjenemu razvoju tako razen tega kar vsebuje standardna razlicica najdemo se standardne razsiritve v obliki ejb servletov jsp ipd sdk software development kit je torej oznaka za programsko opremo ki implementira platformo platforma pa predstavlja neko mnozico abstraktne funkcionalnosti poimenovanje prejsnjih verzij se ni spremenilo torej ohranjamo izraze jdk x in jdk x enako velja za princip verzij in popravkov verzija je dolocena s prvima dvema stevilkama npr razlicica ki je odraz popravkov pa tretjo stevilko npr java varnost pri javi zasledimo vec podrocij na katerih je poskrbljeno za vecjo varnost tako je prvi nivo sam jezik kjer je poskrbljeno za pravilne pretvorbe med podatkovnimi tipi odvzeti so kazalci preverjajo se meje polj in izvaja mocna zascita pomnilnika izvajalsko okolje skrbi za omejevanje programa pri njegovih poskusih izvajanja posameznih operacij vsi se spomnimo principa iz prve verzije jezika poimenovanega peskovnik sandbox ki je aplet iz omrezja omejil pri izvajanju operacij kot bi le ta bil zaprt v peskovnik kjer se lahko varno igra tako apletom vrsta stvari ki bi lahko ogrozile varnost niso bile dovoljene kadar zelimo celovitejso varnost je potrebno poskrbeti za verodostojnost kode in podatkov zato java podpira kodiranje po razlicnih algoritmih in digitalno podpisovanje kode viri j sdk j ee specifikacije j sdk ee vase mnenje o prispevku splosno odlicen vreden branja ni vreden branja dolzina predolg ravno prav prekratek strokovnost prevec strokoven ravno prav prevec splosen opombe vase ime priimek e posta podjetje