Java Server Faces
JavaServer Faces (JSF) er et Java-baseret applikationsrammeværk, der simplificerer udviklingen af brugergrænseflade-software i J2EE-applikationer. JSF benytter JSP-sider som fremvisningsteknologi, men andre teknologier kan også benyttes.
JavaServer Faces-rammeværket
JSF omfatter
- En række API'er til at repræsentere brugergrænsefladekomponenter (UI-komponenter) og vedligeholde deres tilstand, håndtere events (såsom klik på knapper eller bevægelser med musen), validere inddata i fx. tekstfelter, definere navigationsmønstre samt understøtte internationalisering ved at udfaktorisere statisk tekst
- En standard-sæt af UI-komponenter
- To JSP-taglibs: Javaklasser, der indpakker UI-komponenterne til brug i fx. JSP
- En server-side event-model
- Managed JavaBeans, der kan refereres direkte gennem JSP-tags
- Et særligt sprog for udtryk, JSF-EL
JSF-specifikationen blev udviklet under den såkaldte Java Community Process som JSR 127, der definerede JSF 1.0 and 1.1, samt JSR 252, der definerede JSF 1.2. JSF 1.2 (11/5 2006) - seneste udgivelse.
Andre Web-GUI-rammeværker
Microsoft ASP.NET
ASP.NET fra Microsoft har en komponentbasret indgangsvinkel til udvikling af webapplikationer, der minder om JSFs. I ASP.NET 1 var renderingskode dog ikke adskilt fra komponent-grænseflader, som det er tilfældet i JSF, hvorfor renderingsmekanismen ikke kunne udskiftes. ASP.Net v2 introducerede muligheden for at udskifte standardrenderingsmekanismen med trediemands. ASP.NET er tættere intergreret til Microsoft udviklingsværktøjer (som fx. Visual Studio, der tillader Drag & Drop-generering af UI-komponenter).
Forretningslogikken gemmes i en separat fil ("code-behind"-filen) og er tilknytter UI-komponenterne ved at abonnere på events, der genereres på komponenter (såsom mouse-over, klik på knapper, o.l.).
Resultatet er, at forretnings- og præsentationslaget er tæt knyttet sammen i ASP.NET-applikationer (i Java-sprogbrug er arkitekturen en Model 1). JSF, derimod, er en Model 2- eller Model-view-controller-arkitektur, hvor forretningslogikken er helt adskilt fra præsentationslaget via en controller (nemlig JSF-servletten).
WebObjects / Wotonomy
WebObjects er det tidligst kendte web-applikationsrammeværk og og blev oprindeligt udviklet af NeXT Software, Inc., sidenhen købt af Apple Computer, da det købte NeXT. Det indeholder en MVC-arkitektur, der minder om JSFs.
Struts
Struts er et populært Model 2 MVC-softwarerammeværk fra Apache. Det tilbyder dog ikke en JSF-lignende komponentmodel. Struts benytter JSP til rendering.
Se også
Referencer
- JSF hjemmeside
- JSF specifikation
- JSR 252 (JSF 1.2)
- JSR 127 (JSF 1.0 and 1.1)
Bøger
- Jonas Jacobi, John R. Fallows: Pro JSF and Ajax, Apress, ISBN 1-59059-580-7
- Chris Schalk, Ed Burns, James Holmes: JavaServer Faces: The Complete Reference, McGraw-Hill Osborne Media, ISBN 0-07-226240-0
- David Geary, Cay Horstmann: Core JavaServer Faces, Prentice-Hall, ISBN 0-13-146305-5
- Kito D. Mann: JavaServer Faces in Action, Manning Publications Company, ISBN 1-932394-12-5
- Bill Dudney, Jonathan Lehr, Bill Willis, LeRoy Mattingly: Mastering JavaServer Faces, John Wiley & Sons, ISBN 0-471-46207-1
- Hans Bergsten: JavaServer Faces, O'Reilly & Associates, ISBN 0-596-00539-3
- Budi Kurniawan, Nancy Maragioglio: JavaServer Faces Programming, McGraw-Hill Osborne Media, ISBN 0-07-222983-7
- James Turner, Craig McClanahan, Kunal Mittal: JavaServer Faces Kick Start, SAMS, ISBN 0-672-32599-3
Eksterne links
- Free JSF Components
- Core Servlets Tutorials Core Servlets Tutorials Page
- JSR 276 Design-Time Metadata for JavaServer Faces Components
- James Holmes' JSF Resources Extensive listing of JSF articles, blog entries, tutorials, and more
- JSF Central JavaServer Faces Community
- JSF FAQ a large FAQ about Java Server Faces
- JSF part of Java EE tutorial
- JSF Tutorials, Examples and Articles catalog
- JavaServer Faces Home The project page for JSF at java.net
- Apache MyFaces The Apache MyFaces Project, an open-source implementation of JSF under the umbrella of the Apache Software Foundation.
Spire Denne artikel relateret til Italien er en spire som bør udbygges. Du er velkommen til at hjælpe Wikipedia ved at udvide den. |