Specificația portlet-ului Java
Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de
versiunea revizuită pe 20 noiembrie 2018; verificările necesită
3 modificări .
Specificația portletului Java descrie modelul de interacțiune dintre un portlet și un container de portlet . Această specificație este foarte asemănătoare cu specificația Java Servlet și, de fapt, a fost dezvoltată pe baza specificației Java Servlet versiunea 2.3 și Java Server Pages versiunea 1.2 [1] .
Versiuni
JSR 168
Prima versiune a specificației Java Portlet (V1.0) a fost dezvoltată ca parte a procesului comunității Java ca răspuns la o solicitare pentru JSR 168 [1] . Solicitarea a fost inițiată de reprezentanții IBM și Sun Microsystems, Inc. în ianuarie 2002 . Versiunea finală a caietului de sarcini a fost depusă la 27 octombrie 2003 [2] .
Specificația oferă o descriere a modelului de programare de bază al unui portlet, inclusiv:
- două faze ale ciclului de viață al portletului: o fază de acțiune și o fază de randare, care permite utilizarea modelului de proiectare Model-View-Controller
- moduri portlet, prin care portalul poate spune portlet-ului ce sarcină ar trebui să efectueze și ce conținut ar trebui să afișeze
- opțiuni de afișare care descriu locația de pe pagină în care va fi plasat conținutul generat de portlet
- model de date de portlet care permite stocarea informațiilor de vizualizare în setările de afișare, datele de sesiune în setările de sesiune de portlet și setările utilizatorului în setările de portlet
- gruparea, care implică gruparea mai multor portleturi și a artefactelor Java EE necesare pentru ca aceste portleturi să funcționeze într-o singură aplicație portlet care poate fi instalată pe un server de aplicații într- un singur bloc
JSR 286
În 2005, un reprezentant IBM a inițiat o specificație JSR 286 solicitând o nouă versiune a specificației portlet-ului Java pentru a se alinia cu conceptele J2EE versiunea 1.4, precum și cu alte JSR (cum ar fi JSR 188) și cu specificația WSRP versiunea 2. [3] . Versiunea anterioară a specificației JSR 168 nu a abordat în niciun fel problemele de integrare, definind doar modelul componentelor. Prin urmare, s-a propus precizarea problemelor de integrare și comunicare interportlet în noua versiune. Lucrările la cea de-a doua versiune (V2.0) au durat până pe 12 iunie 2008 , când lansarea sa finală a fost aprobată de un grup de experți care include toți dezvoltatorii semnificativi de portal, atât comerciali, cât și open source , dezvoltatori de instrumente de integrare a portleturilor și dezvoltatori de medii de dezvoltare. portleturi [4] .
A doua versiune a specificației introduce o serie de caracteristici noi pentru dezvoltatorii de portlet-uri, inclusiv:
- două moduri de a interacționa între diferite portleturi:
- prin sistemul de evenimente, care este implementat de modelul de cuplare liber editor-abonat, atunci când un portlet poate primi o notificare că un alt portlet a efectuat o acțiune
- prin opțiunile de afișare publicate, permițând partajarea opțiunilor de interogare între portleturi sau alte artefacte
- capacitatea de a utiliza resurse generate dinamic prin adrese URL de resurse care acceptă mai multe niveluri de stocare în cache
- utilizarea completă a AJAX , cu cererea care trece direct prin servletul portalului și, ca rezultat, obținerea accesului deplin la contextul portletului - parametrii de afișare, modul de operare, starea ferestrei, setările de sesiune de portlet și portlet
- abilitatea de a redirecționa apelurile și o includere cu drepturi depline din toate metodele ciclului de viață de portlet
- listă extinsă de ascultători ai ciclului de viață, în comparație cu cei definiți în specificația Java Servlet V2.5
- noi filtre și ascultători pentru portleturi
- moduri gestionate de portlet care nu sunt definite în portal, dar sunt gestionate direct de portlet
- opțiunile de rulare a containerului portlet
În plus, s-a făcut multă muncă pentru a extinde modelul de programare portlet, apropiindu-l de modelul de programare servlet și adăugând extensii specifice portlet-ului. S-a implementat lucrul cu module cookie , elemente antet document și antete HTTP.
JSR 362
În 2013, munca la specificație a continuat, iar versiunea 3.0 a fost lansată în aprilie 2017. Principalele sale caracteristici au fost:
- dependențe de resurse;
- stare de redare explicită;
- integrare cu CDI 1.2;
- Suport Servlet 3.1;
- Portlet Hub și XHR IPC;
- integrare cu FacesBridge ( JSR 378 ).
Compatibil invers
A treia versiune este compatibilă binar cu a doua, care, la rândul său, este compatibilă cu prima versiune binară și chiar menține comportamentul tuturor metodelor API consecvent . Aceasta înseamnă că toate portleturile dezvoltate sub versiunea 1.0 pot rula fără modificări într-un container versiunea 2.0 [4] .
Note
- ↑ 12 David DeWolf . Introducere în specificația Java Portlet . developer.com (09/08/2005). Consultat la 24 aprilie 2013. Arhivat din original la 1 mai 2013.
- ↑ JSR 168: Specificația portletului Arhivat 27 octombrie 2020 la Wayback Machine
- ↑ Cereri de specificații Java - detaliu JSR# 286 Arhivat 8 iunie 2012 la Wayback Machine
- ↑ 1 2 Stefan Hepper. Ce este nou în Java Portlet Specification V2.0 (JSR 286)? . developerWorks . IBM (04.03.2009). Consultat la 25 aprilie 2013. Arhivat din original la 1 mai 2013. (Rusă)
Vezi și
Link -uri