Programiranje

Predstavljamo specifikacijo portalskega programčka, 1. del

Z nastankom vedno večjega števila portalov za podjetja so različni ponudniki ustvarili različne API-je za komponente portala, imenovane portalski programčki. Ta vrsta nezdružljivih vmesnikov povzroča težave ponudnikom aplikacij, strankam portala in ponudnikom portalskih strežnikov. Da bi odpravili te težave, je JSR (Zahteva za specifikacijo Java) 168, Specifikacija portalskega programčka, začela zagotavljati interoperabilnost med portalskimi programčki in portali.

JSR 168 definira portalske programčke kot spletne komponente, ki temeljijo na Javi in ​​jih upravlja vsebnik portalskih programčkov, ki obdelujejo zahteve in generirajo dinamično vsebino. Portali uporabljajo portalske programčke kot sestavljive komponente uporabniškega vmesnika, ki informacijskim sistemom zagotavljajo predstavitveni sloj.

Cilji JSR 168 so naslednji:

  • Določite okolje izvajanja ali vsebnik portalskih programčkov za portalske programčke
  • Določite API med vsebnikom portalskih programčkov in portalskimi programčki
  • Zagotovite mehanizme za shranjevanje prehodnih in trajnih podatkov za portalske programčke
  • Zagotovite mehanizem, ki portalskim programčkom omogoča, da vključujejo strežniške programčke in JSP (JavaServer Pages)
  • Določite embalažo portalskih programčkov, da omogočite enostavno uporabo
  • Omogoči prenos binarnih portalskih programčkov med portali JSR 168
  • Zaženite portalske programčke JSR 168 kot oddaljene portalske programčke s protokolom Spletne storitve za oddaljene portalske programčke (WSRP)

IT-industrija je na splošno sprejela JSR 168. Vsa večja podjetja v portalskem prostoru so del strokovne skupine JSR 168: Apache, ATG, BEA, Boeing, Borland, Broadvision, Citrix, EDS, Fujitsu, Hitachi, IBM, Novell, Oracle , SAP, Inštitut SAS, Sun Microsystems, Sybase, TIBCO in Vignette. Seznam uradnih podpornikov je še daljši.

Trenutno je JSR 168 v javni presoji, končna različica pa je načrtovana za september 2003.

V tem članku najprej definiramo portale in portalske programčke, nato razložimo koncepte, ki jih uvaja JSR 168, vključno z osnovnimi objekti API-ja. Nato se poglobimo v naprednejše funkcije JSR, kot so informacije o uporabnikih, lokalizacija in predpomnjenje. Nato pokrivamo razširitvene točke, ki prodajalcem portala omogočajo razširitev trenutno definirane funkcionalnosti v specifikaciji portalskega programčka. Članek se zaključi z opisom pakiranja in uvedbe portalskih programčkov.

Preberite celotno serijo v specifikaciji portalskega programčka:

  • 1. del: Namočite noge z osnovnimi izrazi in koncepti specifikacije
  • 2. del: Referenčna izvedba API-ja portalskega programčka razkriva svoje skrivnosti

Osnovne opredelitve

V tem razdelku pojasnjujemo osnovne definicije, uporabljene v specifikaciji portalskega programčka, vključno z osnovno arhitekturo portala, vsebnikom portalskega programčka in stranjo portala.

Portal

A portal je spletna aplikacija, ki omogoča personalizacijo, enotno prijavo in združevanje vsebin iz različnih virov ter gosti predstavitveni sloj informacijskih sistemov. Združevanje je postopek integracije vsebin iz različnih virov na spletni strani. Portal ima lahko izpopolnjene funkcije za prilagajanje, ki uporabnikom nudijo prilagojeno vsebino. Strani portala imajo lahko različne nabore portalskih programčkov, ki ustvarjajo vsebino za različne uporabnike.

Slika 1 prikazuje osnovno arhitekturo portala. Portalna spletna aplikacija obdeluje odjemalsko zahtevo, pridobi portalske programčke na trenutni strani uporabnika in nato pokliče vsebnik portalskega programčka, da pridobi vsebino vsakega portalskega programčka. Vsebnik portalskih programčkov zagotavlja okolje za izvajanje portalskih programčkov in jih prek API-ja portalskega programčka pokliče. Vsebnik portalskega programčka se s portala pokliče prek API-ja portalskega programčka Invoker; vsebnik pridobi informacije o portalu s pomočjo SPI ponudnika portalskih programčkov (vmesnik ponudnika storitev).

Stran

Slika 2 prikazuje osnovne komponente strani portala. Sama portalska stran predstavlja popoln označevalni dokument in združuje več oken portalskih programčkov. Stran je poleg portalskih programčkov lahko sestavljena tudi iz navigacijskih področij in pasic. Okno portalskega programčka je sestavljeno iz naslovne vrstice z naslovom, okraski in vsebino portalskega programčka. Okraski lahko vključujejo gumbe za spreminjanje stanja in načina portalskega programčka (te koncepte bomo razložili pozneje).

Portalski programček

Kot smo že omenili, je portalski programček spletna komponenta na osnovi Jave, ki obdeluje zahteve in ustvarja dinamično vsebino. Vsebina, ki jo ustvari portalski programček, se imenuje a Drobec, del oznake (npr. HTML, XHTML ali WML (brezžični označevalni jezik)), ki spoštuje določena pravila. Fragment je mogoče združiti z drugimi fragmenti, da tvori celoten dokument, kot je prikazano na sliki 3. Vsebina portalskega programčka se običajno združi z vsebino drugih portalskih programčkov, da tvori stran portala. Vsebnik portalskega programčka upravlja življenjski cikel portalskega programčka.

Spletni odjemalci komunicirajo s portalskimi programčki prek paradigme zahteve / odziva, ki jo izvaja portal. Običajno uporabniki komunicirajo z vsebino, ki jo ustvarijo portalski programčki, na primer po povezavah ali oddaji obrazcev, kar povzroči, da portal sprejme dejanja portalskih programčkov, ki nato posredujejo portalskim programčkom, na katere ciljajo uporabniške interakcije.

Vsebina, ki jo ustvari portalski programček, se lahko razlikuje od uporabnika do uporabnika, odvisno od uporabniške konfiguracije portalskega programčka.

Vsebnik portalskega programčka

A vsebnik portalskih programčkov zažene portalske programčke in jim zagotovi potrebno okolje izvajanja. Vsebnik portalskih programčkov vsebuje portalske programčke in upravlja njihove življenjske cikle. Zagotavlja tudi trajne mehanizme shranjevanja za nastavitve portalskega programčka. Vsebnik portalskega programčka sprejema zahteve s portala za izvajanje zahtev na portalskih programčkih, ki jih gosti. Vsebnik portalskih programčkov ni odgovoren za zbiranje vsebine, ki jo ustvarijo portalski programčki; portal sam obravnava združevanje.

Portal in vsebnik portalskega programčka lahko sestavite skupaj kot eno samo komponento programskega paketa ali kot dve ločeni komponenti portalske aplikacije.

Koncepti

Ta razdelek razlaga osnovne koncepte programiranja v JSR 168, kot so življenjski cikel portalskega programčka, vmesnik in načini ter stanja oken, pa tudi dostop do sej, trajni dostop do pomnilnika in kako vključiti strežniške programčke in strani JSP.

Življenjski cikel portalskega programčka

Osnovni življenjski cikel portalskega programčka portalskega programčka JSR 168 je:

  • V: inicializirajte portalski programček in ga postavite v uporabo
  • Obravnava zahtev: obdelati različne vrste zahtev za dejanje in upodabljanje
  • Uniči: dajte portalski programček iz uporabe

Vsebnik portalskega programčka upravlja življenjski cikel portalskega programčka in v vmesniku portalskega programčka pokliče ustrezne metode.

Vmesnik portalskega programčka

Vsak portalski programček mora implementirati vmesnik portalskega programčka ali razširiti razred, ki izvaja vmesnik portalskega programčka. Vmesnik portalskega programčka je sestavljen iz naslednjih metod:

  • init (PortletConfig config): za inicializacijo portalskega programčka. Ta metoda je poklicana samo enkrat po izdelavi portalskega programčka. Ta metoda se lahko uporablja za ustvarjanje dragih predmetov / virov, ki jih uporablja portalski programček.
  • processAction (zahteva ActionRequest, odgovor ActionResponse): da portalski programček obvesti, da je uporabnik sprožil dejanje na tem portalskem programčku. Na zahtevo stranke se sproži samo eno dejanje. V dejanju lahko portalski programček izda preusmeritev, spremeni način portalskega programčka ali stanje okna, spremeni svoje trajno stanje ali nastavi parametre upodabljanja.
  • upodabljanje (zahteva RenderRequest, odgovor RenderResponse): za ustvarjanje oznake. Za vsak portalski programček na trenutni strani se pokliče metoda upodabljanja in portalski programček lahko ustvari oznake, ki so lahko odvisne od načina portalskega programčka ali stanja okna, parametrov upodabljanja, atributov zahtev, trajnega stanja, podatkov seje ali podatkov v ozadju.
  • uničiti (): da portletu nakaže konec življenjskega cikla. Ta metoda omogoča portalskemu programčku, da sprosti vire in posodobi vse trajne podatke, ki pripadajo temu portalskemu programčku.

Načini portalskega programčka

Način portalskega programčka označuje funkcijo, ki jo opravlja portalski programček. Portalski programčki običajno izvajajo različne naloge in ustvarjajo različno vsebino, odvisno od funkcij, ki jih trenutno izvajajo. Način portalskega programčka portalskemu programčku svetuje, katero nalogo mora izvajati in katero vsebino naj ustvari. Ko prikličete portalski programček, vsebnik portalskega programčka portalskemu programčku zagotavlja trenutni način portalskega programčka. Portalski programčki lahko programsko spremenijo svoj način pri obdelavi zahteve za dejanje.

JSR 168 razdeli načine portalskega programčka v tri kategorije:

  1. Zahtevani načini: Vsak portal mora podpirati načine Urejanje, Pomoč in Pogled. Portalski programček mora vsaj podpirati način pogleda, ki se uporablja za upodabljanje oznak za stran. Način urejanja se uporablja za spreminjanje nastavitev za posameznega uporabnika za prilagajanje oznak portalskega programčka, način pomoči pa za prikaz zaslona s pomočjo.
  2. Izbirni načini po meri: To so načini, ki jih portal morda podpira; medtem ko je v izbirnem načinu portalski programček morda ne bo poklican. Izbirni načini vključujejo način Vizitka za prikaz sporočila "o"; način konfiguriranja, ki skrbnikom omogoča konfiguriranje portalskega programčka; Način urejanja_privzetih vrednosti, da omogoči skrbniku, da prednastavi vrednosti načina urejanja; način predogleda za prikaz predogleda portalskega programčka; in način tiskanja za upodobitev pogleda, ki ga je mogoče enostavno tiskati.
  3. Načini, značilni za prodajalca portala: Ti načini niso opredeljeni v specifikaciji in so zato odvisni od prodajalca.

Stanja oken

Stanje okna označuje količino prostora strani portala, ki bo dodeljena vsebini, ki jo ustvari portalski programček. Ko prikličete portalski programček, vsebnik portalskega programčka portalu omogoča trenutno stanje okna. Portalski programček lahko s pomočjo stanja okna določi, koliko informacij bo prikazal. Portalski programčki lahko programsko spremenijo stanje okna pri obdelavi zahteve za dejanje.

JSR 168 opredeljuje naslednja stanja oken:

  • Običajno: Označuje, da lahko portalski programček deli stran z drugimi portalskimi programčki. To je privzeto stanje okna.
  • Povečano: Označuje, da je portalski programček morda edini portalski programček na portalski strani ali da ima portalski programček več prostora v primerjavi z drugimi portalskimi programčki na portalski strani, zato lahko ustvari bogatejšo vsebino kot v običajnem stanju okna.
  • Minimirano: Označuje, da mora portalski programček prikazati samo minimalni izhod ali ga sploh ne.

Poleg teh okenskih stanj JSR 168 portalu omogoča tudi definiranje okenskih stanj, specifičnih za prodajalca.

Portalski programček je mogoče poklicati v katerem koli od teh treh okenskih stanj, vendar lahko za vsa tri stanja ustvari enak označevalni znak.

Vztrajna trgovina

Portalski programček lahko shrani trajne podatke za določenega uporabnika z uporabo Nastavitve portalskega programčka predmet. Nastavitve lahko berete in zapisujete v fazi akcije in berete v fazi upodabljanja. Najprimernejši način za nastavitve pisanja je način urejanja, ki uporabniku ponuja zaslon za prilagajanje. Nastavitve so lahko nizi ali vrednosti nizov nizov, povezane s ključem tipa string. Nastavitve je mogoče v deskriptorju razmestitve prednastaviti s privzetimi vrednostmi.

Nastavitve in definicija portalskega programčka v deskriptorju razmestitve skupaj definirajo portalski programček, včasih imenovan a entiteta portalskega programčka.

Seje

Koncept seje JSR 168 temelji na HttpSession opredeljeno za spletne aplikacije. Ker so aplikacije portalskih programčkov spletne aplikacije, uporabljajo isto sejo kot strežniški programčki. Če želite portalskim programčkom omogočiti, da začasno hranijo zasebne podatke v portalskem programčku, je privzeto obseg seje portalski programček Obseg. V tem obsegu lahko portalski programček shrani informacije, potrebne za uporabniške zahteve in specifične za entiteto portalskega programčka. Vsebnik portalskega programčka v seji pred atributom shrani s tem obsegom, da prepreči, da dva portalska programčka (ali dve entiteti iste definicije portalskega programčka) prepišeta nastavitve drug drugega.

Poleg obsega seje portalskega programčka JSR 168 podpira še Spletna aplikacija obseg seje. V tem obsegu lahko vsaka komponenta spletne aplikacije dostopa do informacij. Podatki se lahko uporabljajo za izmenjavo prehodnega stanja med različnimi komponentami iste spletne aplikacije (npr. Med portalskimi programčki ali med portalskim programčkom in strežniškim programčkom).

Vključno s strežniki / stranmi JSP

Če želite podpirati vzorec Model-View-Controller, mora imeti portalski programček vsebino, ustvarjeno iz strežniških programčkov in strani JSP. Na ta način lahko portalski programček deluje kot krmilnik, napolni fižol s podatki in vključi stran JSP za upodabljanje izhoda.

V JSR 168 je mehanizem vključevanja za programčke in strani JSP enak za API-je strežnika. Preko konteksta portalskega programčka se za določeno pot pridobi dispečer zahteve; vključi () metoda se nato pokliče za ta objekt-dispečer:

 PortletRequestDispatcher rd = getPortletContext (). GetRequestDispatcher (urediJSP); rd.include (portletRequest, portletResponse); 

Uskladitev z WSRP

WSRP združuje vsebino, ki jo ustvarijo portalski programčki na oddaljenih računalnikih, ki uporabljajo različna programska okolja, kot sta J2EE (Java 2 Platform, Enterprise Edition) in .Net. Storitve WSRP so spletne storitve, ki so usmerjene v predstavitve in so usmerjene k uporabnikom, ki se povezujejo s portali ali drugimi programi. Podjetjem omogočajo zagotavljanje vsebine ali aplikacij, ne da bi za to potrebovali kakršno koli ročno prilagoditev vsebine ali aplikacije z uporabo portalov; portali lahko brez težav programirajo storitve WSRP.

Strokovna skupina JSR 168 je skrbno uskladila koncepte med JSR 168 in WSRP. Naslednji seznam prikazuje, koliko sta glavna koncepta usklajena med obema standardoma:

$config[zx-auto] not found$config[zx-overlay] not found