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å

  • GUI – grafisk brugergrænseflade
  • Webportal

Litteratur

  • 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 henvisninger

ProgrammeringSpire
Denne artikel om datalogi eller et datalogi-relateret emne er en spire som bør udbygges. Du er velkommen til at hjælpe Wikipedia ved at udvide den.