JavaServer Faces

A JavaServer Faces (röviden JSF) egy Java-alapú MVC keretrendszer webes felhasználói felületek fejlesztéséhez. A komponensvezérelt UI-tervezési modellre épül.

View template-nek vagy Faceletnek nevezett XML fájlokat használ a megjelenítési modell leírására. A kéréseket a FacesServlet dolgozza fel, ami ezután betölti a megfelelő view template-et, felépíti a komponensfát, kezeli az eseményeket és létrehozza (generálja) a választ (többnyire HTML vagy XHTML formátumban) a kliensnek. A felhasználói felület komponenseit (és egyéb objektumokat) minden lekérés végén elmenti, majd ugyanazon view következő előállításakor újra betölti. Ennek a mentési/betöltési folyamatnak több különböző formája ismert, szerver és kliens-oldalon is lehetséges.

Alapértelmezésben a JSF 1.x JSP-t használ a megjelenítésre, de más technológiák is elérhetőek hozzá, mint pl. a XUL vagy a Faceletek. A JSF 2 esetében már a Faceletek használata az alapértelmezett.

Verziók

Egy JSF oldal életciklusa

  1. A nézet visszaállítása (Restore view)
  2. A kérésben szereplő értékek érvényesítése (Apply request values)
  3. Validációk (Process validations)
  4. A modell értékeinek frissítése (Update model values)
  5. Az alkalmazás meghívása (Invoke application)
  6. A válasz generálása (Render response)

Részei

A JSF architektúra tartalmazza az alábbiakat:

Grafikus komponensek

A JSF grafikus komponenseit az alábbi komponenscsaládokba sorolják:

javax.faces.Command
  • javax.faces.Button – HTML <input> elem.
  • javax.faces.Link – HTML <a> tag, amely submit gombként viselkedik.
javax.faces.Data
  • javax.faces.Table – HTML <table> elem.
javax.faces.Form
  • javax.faces.Form – HTML <form> elem.
javax.faces.Graphic
  • javax.faces.Image – HTML <img> elem.
javax.faces.Input
  • javax.faces.Hidden – hidden típusú HTML <input> elem.
  • javax.faces.Secret – password típusú HTML <input> elem.
  • javax.faces.Text – text típusú HTML <input> elem.
  • javax.faces.Textarea – HTML <textarea> elem.
javax.faces.Message
  • javax.faces.Message – Valamely komponenshez tartozó üzenet.
javax.faces.Messages
  • javax.faces.Messages – Valamely komponenshez tartozó összes üzenet.
javax.faces.Output
  • javax.faces.Format – Paraméterezett szöveg.
  • javax.faces.Label – HTML <label> elem.
  • javax.faces.Link – HTML <a> elem.
  • javax.faces.Text – HTML <span> elem.
javax.faces.Panel
  • javax.faces.Grid – HTML <table> elem.
  • javax.faces.Group
javax.faces.SelectBoolean
  • javax.faces.Checkbox – checkbox típusú HTML <input> elem.
javax.faces.SelectMany
  • javax.faces.Checkbox – checkbox típusú HTML <input> elemek listája.
  • javax.faces.Listbox – HTML opciólista.
  • javax.faces.Menu – HTML HTML opciólista.
javax.faces.SelectOne
  • javax.faces.Listbox – HTML opciólista.
  • javax.faces.Menu – HTML opciólista.
  • javax.faces.Radio – radio típusú HTML <input> elem.

Megvalósításai

Egyéb támogatás

Jegyzetek

  1. ↑ "Archivált másolat". 2011. augusztus 22. dátummal az eredeti címről archiválva. Hozzáférés: 2012. január 24.
  2. ↑ http://it-republik.de/jaxenter/news/Was-ist-neu-in-JSF-2.1-057653.html
  3. ↑ "Archivált másolat". 2013. április 20. dátummal az eredeti címről archiválva. Hozzáférés: 2013. június 19.

További információk