Java Server Faces - wprowadzenie



Podobne dokumenty
JavaServer Faces (JSF)

Wykład dla studentów Informatyki Stosowanej UJ 2012/2013

Przykłady tworzenia aplikacji komponentowych w technologii JavaServer Faces 2.1 na podstawie

Poznań Java User Group Java Server Faces. Wprowadzenie (Fakty i Mity)

Projektowanie i wdrażanie systemów informatycznych. Dodanie aplikacji klienta uruchamianej przez przeglądarkę kontynuacja projektu:

JAVA SERVER FACES jest to nowy framework Javy do tworzenia interface u użytkownika dla aplikacji sieciowych.

Programowanie wielowarstwowe i komponentowe JSP, JSF

Złożone komponenty JSF wg

Aplikacje internetowe - laboratorium

Programowanie wielowarstwowe i komponentowe

JSF 1.2. w wykonaniu NetBeans IDE 6.1. Jacek Laskowski

Facelets ViewHandler

Złożone komponenty JSF wg

Aplikacje Internetowe, Servlety, JSP i JDBC

Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.

Java Enterprise Edition spotkanie nr 1. Sprawy organizacyjne, wprowadzenie

Programowanie w Javie 2. Płock, 26 luty 2014 r.

Budowa aplikacji wielowarstwowych. Zastosowanie szablonów

Enterprise JavaBeans. 1. Architektura EJB: komponenty encyjne, komponenty sesyjne, komponenty sterowane komunikatami. 2. Kontenery EJB JBoss.

Aplikacje WWW - laboratorium

JAVA EE MODEL APLIKACJI. Waldemar Korłub. Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska

Tworzenie aplikacji J2EE w technologii JavaServer Faces (JSF)

6. Powtórz kroki z punktu 5. dla strony sorry.jsp, zmieniając jedynie treść wyświetlanego tekstu ( Niestety zamiast Witaj )

Elementy JEE. 1. Wprowadzenie. 2. Prerekwizyty. 3. Pierwszy servlet. obsługa parametrów żądań 4. JavaServer Pages.

Enterprise JavaBeans

Wprowadzenie do technologii JavaServer Faces 2.2 na podstawie Wykład 2 Technologie internetowe

1. Metryki złożoności modułowej i międzymodułowej Chidamber & Kemerer (CK)

1 Wprowadzenie do J2EE

Enterprise JavaBeans (EJB)

Zaawansowane aplikacje internetowe - laboratorium

OpenLaszlo. OpenLaszlo

Oracle9iAS: instalacja i konfiguracja aplikacji J2EE

Zaawansowane aplikacje internetowe

Aplikacje internetowe oparte na kluczowych technologiach Java Enterprise(Servlet,JSP,JDBC, )

Aplikacje WWW - laboratorium

Architektury Usług Internetowych. Laboratorium 1 Servlety

Infrastruktura aplikacji WWW II

Wybrane działy Informatyki Stosowanej

Podstawowe informacje o technologii Java Persistence API - przykład

Programowanie w Sieci Internet filtry oraz web.xml. Kraków, 11 stycznia 2013 r. mgr Piotr Rytko Wydział Matematyki i Informatyki

Architektury Usług Internetowych. Laboratorium 1. Servlety

rk HTML 4 a 5 różnice

Podstawy technologii JavaServer Faces wg

Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie

Konwersja danych. Programowanie komponentowe 4. wg bnaph.html

Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie

Java EE: JSF + EJB + JPA + CDI + BV

Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe

Wybierz kategorię Java Web i typ projektu Web Application. Kliknij przycisk Next >.

Szkolenie wycofane z oferty

Programowanie w Internecie. Podstawy użycia JSP. Paweł Kasprowski. vl06z

Aplikacje WWW - laboratorium

prepared by: Programowanie WWW Servlety

Budowa aplikacji wielowarstwowych. Zastosowanie szablonów, tabel oraz plików typu properties

prepared by: Programowanie WWW Model-View-Controller

Metryki. Narzędzia do pomiaru złożoności modułowej i międzymodułowej oprogramowania. autor: Zofia Kruczkiewicz

Aplikacje WWW - laboratorium

Przykłady pytań do zaliczenia programu wykonywanego w ramach zajęć laboratoryjnych 6-8 z Programowania komponentowego w Javie. Zofia Kruczkiewicz

Web Services (SOAP) Ćwiczenie 1

Zastosowanie technologii Ajax w ramach technologii JavaServer Faces wg

Budowa aplikacji wielowarstwowych zastosowanie szablonów. Laboratorium 2 Programowanie komponentowe Zofia Kruczkiewicz

Tomasz Boiński: 1. Pozycjonowanie stron i zastosowanie mod_rewrite

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008

Java wybrane technologie spotkanie nr 4. Serwlety c.d.

Flex 3. Piotr Strzelczyk Wydział EAIiE Katedra Automatyki. Kraków, 2008

Wybrane Działy Informatyki Stosowanej LABORATORIUM 1.

Java wybrane technologie spotkanie nr 3. Serwlety

Zaawansowane Techniki Bazodanowe

Wybrane działy Informatyki Stosowanej

Java EE: JSF + EJB + JPA

Serwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego radmat radmat@math.uni.lodz.

Podstawowe informacje o technologii Java Persistence API - przykład

SOP System Obsługi Parkingów

Podstawowe wykorzystanie Hibernate

Architektury Usług Internetowych. Laboratorium 2 RESTful Web Services

edziennik Ustaw Opis architektury

Niezbędne serwery aplikacji. Wprowadzenie do technologii JBoss i Apache Tomcat.

Budowa aplikacji wielowarstwowych. Zastosowanie szablonów, tabel oraz plików typu properties

Spring Web MVC, Spring DI

Wybrane działy Informatyki Stosowanej

INSTALACJA I KONFIGURACJA SERWERA PHP.

1. Zakładanie projektu Katalog typu Java Class Library do przechowywania obiektowego modelu danych projekt należy do warstwy biznesowej

Web Tools Platform. Adam Kruszewski

Budowa prostej aplikacji wielowarstwowej. Laboratorium 1 Programowanie komponentowe Zofia Kruczkiewicz

1 90 min. Aplikacje WWW Harmonogram spotkań, semestr zimowy (studia stacjonarne)

mgr inż. Michał Paluch

Projekt ATENA - system wspomagaj cy zarz dzanie szkoª lub zespoªem szkóª przedlicealnych

Załącznik 2 utworzenie projektu

Programowanie komponentowe 5

Podstawy technologi JavaServer Faces

A Zasady współpracy. Ocena rozwiązań punktów punktów punktów punktów punktów

Imię, nazwisko i tytuł/stopień KOORDYNATORA (-ÓW) kursu/przedmiotu zatwierdzającego protokoły w systemie USOS Dr Adam Naumowicz

Widżety KIWIPortal. tworzenie umieszczanie na stronach internetowych opcje zaawansowane. Autor: Damian Rebuś Data: Wersja: 1.

Budowa prostej aplikacji wielowarstwowej

Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i

OSGi Agata Hejmej

Testowanie podstawowej konfiguracji serwera w środowisku NetBeans

Wielowarstwowa aplikacja internetowa. Wykonanie widoku typu tabela. Pliki typu properties. wg

Transkrypt:

Java Server Faces - wprowadzenie Java Server Faces (JSF) jest najpopularniejszą technologią opartą o język JAVA, służącą do tworzenia aplikacji webowych (dynamicznych stron WWW). pomimo że JSF i EJB wchodzą w skład specyfkacji JEE, do uruchomienia serwisów korzystających z JSF nie jest wymagany serwer aplikacji (kontener EJB). Najpopularniejszym serwerem, na którym uruchamia się takie aplikacje jest Tomcat. 1

Struktura aplikacji Aplikacja JSF jest dystrybuowana w postaci plików war (ewentualnie jar). Jego struktura wygląda następująco META-INF/ MANIFEST.MF WEB-INF/ classes/ - miejsce na kod w Javie lib/ - używane biblioteki (pliki jar) faces-confg.xml web.xml miejsce na skrypty (XML) generujące strony www. Przykład ilustrujący działanie JSF na niniejszym wykładzie pochodzi z książki Core: Java Server Faces wydawnictwa Helion. 2

Deskryptor aplikacji Plik web.xml zawiera podstawowe informacje o aplikacji: <?xml version="1.0"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <servlet> <servlet-name>faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.facesservlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>faces Servlet</servlet-name> <url-pattern>*.faces</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list> </web-app> 3

Konfguracja JSF Konfgurację aplikacji JSF zawiera plik faces-confg.xml. Najczęściej wykorzystywane sekcje to: <?xml version="1.0"?> <faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd" version="1.2"> <navigation-rule> </navigation-rule> <managed-bean> </managed-bean> <application> </application> </faces-config> 4

Sekcja application Sekcja application zawiera m.in. informację o zasobach, z których korzysta serwis. W poniższym przykładzie umieszczono tam informację o pliku z komunikatami: <application> <resource-bundle> <base-name>com.corejsf.messages</base-name> <var>msgs</var> </resource-bundle> </application> 5

Sekcja managed-bean Sekcja managed-bean specyfkuje beany wykorzystywanew serwisie. Specyfkacja ta zwykle zawiera: nazwę za pomocą której odwołujemy się do komponentu, klasę zawierającą implementację komponentu, zakres komponentu, tzn. kiedy jest on tworzony i jak długo żyje. <managed-bean> <managed-bean-name>quiz</managed-bean-name> <managed-bean-class>com.corejsf.quizbean</managed-bean-class> <managed-bean-scope>session</managed-bean-scope> </managed-bean> 6

Sekcja navigation-rule Sekcja navigation-rule określa sposób w jaki serwis reaguje na akcje wykonywane przez użytkownika (nawigację): <navigation-rule> <navigation-case> <from-outcome>success</from-outcome> <to-view-id>/success.jsp</to-view-id> <redirect/> </navigation-case> </navigation-rule> przykładowo, jeśli wykonana akcja zwróci wartość success użytkownik zostanie przeniesiony na stronę success.jsp. 7

Przykładowa strona JSF Kod JSF jest osadzony w dokumencie HTML. Na wstępie mamy nagłówki określające używane przez nas rozszerzenia: <html> <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %> <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %> alternatywny sposób rozpoczęcia skryptu (zgodny z XHTML): <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE HTML> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html"> 8

Przykładowa strona JSF <f:view> <head> <title><h:outputtext value="#{msgs.title}"/></title> </head> <body> <h:form> <p> <h:outputtext value="#{quiz.question}"/> </p> <p> <h:commandbutton value="#{msgs.answerbutton}" action="#{quiz.answeraction}"/> </p> </h:form> </body> </f:view> </html> Tagi JSF są umieszczone w dokumencie HTML. Korzystając z wyrażeń EL (#{...}) możemy korzystać z zasobów i komponentów zadeklarowanych w pliku facec-confg.xml. 9

Przykładowa strona JSF Przykładowo, poniższy kod wypisze wartość określoną w pliku zasobów: <h:outputtext value="#{msgs.title}"/> Natomiast wyrażenie <h:outputtext value="#{quiz.question}"/> przekaże do pliku html wartość zwróconą przez metodę getquestion() wywołaną na rzecz komponentu quiz. 10

Przykładowa strona JSF Element <h:commandbutton value="#{msgs.answerbutton}" action="#{quiz.answeraction}"/> wyrenderuje przycisk, po naciśnięciu którego zostanie wywołana metoda quiz.getansweraction(). Wartość zwrócona przez metodę określa (w oparciu o wpis w faces-config.xml) stronę, na którą nastąpi przekierowanie. 11

Podsumowanie Technologia Java Server Faces w praktyce zastąpiła wcześniej używanie technologie takie jak servlety i jsp, wykorzystywane do tworzenia interfejsów użytkownika i stała się podsatwą współczesnych aplikacji webowych pisanych w języku Java. 12