JavaServer Faces
Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från
versionen som granskades den 21 januari 2017; kontroller kräver
22 redigeringar .
JavaServer Faces (JSF) är en Java-specifikation för att bygga komponentorienterade användargränssnitt för webbapplikationer, skriven i Java . Det tjänar till att underlätta utvecklingen av användargränssnitt för Java EE- applikationer. Till skillnad från andra MVC- ramverk som är förfrågningsstyrda, är JSF-metoden baserad på användningen av komponenter. Tillståndet för användargränssnittskomponenterna sparas när användaren begär en ny sida och återställs sedan om begäran upprepas. JSP , Facelets används vanligtvis för att visa data , men JSF kan även anpassas till andra teknologier, som XUL .
JavaServer Faces -tekniken inkluderar:
- En uppsättning API:er för att representera komponenter i användargränssnittet ( UI ) och hantera deras tillstånd, händelsehantering och indatavalidering, navigeringsdefinitioner och stöd för internationalisering ( i18n ) och tillgänglighet.
- Ett speciellt JSP-taggbibliotek för att uttrycka ett JSF-gränssnitt på en JSP-sida. JSF 2.0 använder Facelets som vyhanterare och ersätter JSP.
JavaServer Faces är designade för att vara flexibla och utnyttjar befintliga standardanvändargränssnitt (UI) och webbnivåkoncept utan att låsa utvecklaren till ett särskilt märkningsspråk, protokoll eller klientenhet. UI-komponentklasserna som levereras med JavaServer Faces-teknologin innehåller komponentens funktionalitet snarare än den klientspecifika renderingen, vilket gör att JSF-komponenter kan renderas på olika klientenheter. Genom att kombinera funktionaliteten hos användargränssnittskomponenter med anpassade renderare kan utvecklare konstruera anpassade taggar för en given klientenhet. Som en bekvämlighet tillhandahåller JSF-tekniken en specifik renderare och ett speciellt JSP-taggbibliotek för rendering på en HTML- klient, vilket gör att J2EE-plattformsapplikationsutvecklare kan använda JSF-teknik i sina applikationer.
JSF-versioner
- JSF 1.0 (03/11/2004) - initial release enligt JSF-specifikationen
- JSF 1.1 (2004-05-27) - buggfixar. Det finns inga betydande förändringar.
- JSF 1.2 (11.05.2006) - buggfixar. Det finns inga betydande förändringar.
- förbättringar ger en tillfällig lösning på problemet med förvirrat innehåll [3]
- tillhandahåller XML-schema för konfigurationsfiler istället för att använda DTD
- förbättringar gör att applikationer kan arbeta med användargränssnitt med flera ramar eller flera fönster.
- f: förbättringar av taggbiblioteket för att förbättra TCK- täckningen , f: se livscykelhändelser och andra små förbättringar.
- förbättrat dekoratörsstöd för API- objekt
- förfarandet för att rädda klientens tillstånd har blivit bättre skyddat.
- löste problemet med att dubbelklicka på knappen
- specifikationen har ompartitionerats i standarddelar och icke-standarddelar för att göra implementeringen enklare
- fixade buggar relaterade till portlets
- mindre specifikationer
- JSF 2.0 (10/19/2009) - Stor revidering av specifikationen baserat på erfarenhet av utveckling. Sammanslagna med Java EE 6.
- JSF 2.1 (2010-11-22) - Underhållsversion för att stödja JSF 2.0. Mycket få ändringar i specifikationen.
- JSF 2.2 (5/21/2013) - Introducerade nya koncept som tillståndslöst tillstånd, sidflöde och möjligheten att skapa portabla resurskontrakt.
- JSF 2.3 (3/28/2017) - Nyckelfunktioner: uttryckssökningar, URL :er utan tillägg, bönvalidering för hela klasser, push-meddelanden med WebSocket , förbättrad CDI-integration.
Kritik
JSF version 1.* gav faktiskt inte högnivåstöd för att hantera GET-förfrågningar [4] , vilket gjorde det mycket svårare att utveckla applikationer baserade på REST- principer. I den andra versionen av specifikationen är denna brist nästan helt eliminerad.
Java-språkdesignern, James Gosling , har beskrivit JSP-tekniken bakom JSF som "ett Microsoft ASP -klonprojekt som skapades bara för att visa hur dålig idén i sig är; men av någon anledning vägrade modellen att dö” [5] .
Bibliotek och komponenter
Se även
Anteckningar
- ↑ Release 3.0.0 - 2020.
- ↑ Version 4.0.0 - 2022.
- ↑ Hans Bergsten. Förbättra JSF genom att dumpa JSP (engelska) (nedlänk) (9 juni 2004). Hämtad 8 augusti 2009. Arkiverad från originalet 22 februari 2012.
- ↑ Andy Schwartz Blogg: Vad är nytt i JSF2? . Hämtad 2 oktober 2010. Arkiverad från originalet 5 oktober 2010. (obestämd)
- ↑ James Gosling om Apple, Apache, Google, Oracle and the Future of Java. 0:48:22 . Hämtad 28 september 2017. Arkiverad från originalet 22 april 2017. (obestämd)
- ↑ RichFaces hemsida (engelska) (länk ej tillgänglig) . Hämtad 1 april 2010. Arkiverad från originalet 22 februari 2012.
Länkar
Litteratur
- David M. Gehry, Kay S. Horstmann. JavaServer Faces. Pro Library = JavaServer Faces. KÄRNA. - 3:e uppl. - M . : Förlag "Williams", 2011. - 544 sid. - ISBN 978-5-8459-1706-5 , 978-0-13-701289-3.