Upload
lance-kent
View
54
Download
3
Tags:
Embed Size (px)
DESCRIPTION
18 – Java Server Faces. Web-applikationer-2. En browser er et program, som henter html-dokumenter fra en server, fortolker html og viser resultatet. Browsere kan også udføre scripts (fx Javascript). - PowerPoint PPT Presentation
Citation preview
18 – Java Server Faces
3NOEA 2009Java-kursus – JSF 3
Web-applikationer-2
• En browser er et program, som henter html-dokumenter fra en server, fortolker html og viser resultatet. Browsere kan også udføre scripts (fx Javascript).
• En web-server er et program, som lytter efter forespørgsler på html-dokumenter og sender det ønskede html-dokument retur
• Html-dokumentet kan være dynamisk, dvs. opbygges af programmer på web-serveren, fx ud fra resultater fra andre applikationer og/eller databaseforespørgsler
Web-browser
internet
Web-server
HTML
Applikationer/Databaser mv.
Firewall
Klient
Server
6NOEA 2009Java-kursus – JSF 6
ServletsServlets• er Java-programmer, som bor og
eksekverer på en web-server• kan svare på forespørgsler fra en
browser• indeholder Java-kode:
– Herved kan præsentation og forretningslogik blandes (FY!)
• bør bruges som grænseflade mellem web-serveren og applikationer
– Herved adskilles præsentation (generering af html) fra forretningslogik (Java-kode)
JSP• er en udvidelse, som gør det muligt at
bruge grafiske værktøjer til web-design og få servlets genereret automatisk (af web-serveren)
JSF• er et API som indeholder grafiske
komponenter• Gør det muligt at genrer JSP ved at
anvende grafiks udviklingsværktøjer, så man ikke behøver at skrive JSP
Web-browser
internet
Web-serverJava Server Pages
HTML
Servlet Container
Klient
Server
Servlet
Database
ApplikationsserverJava-programmer
Firewall
7NOEA 2009Java-kursus – JSF 7
Web-applikationer:Vores Arkitektur
Database
Browser
http
DBlag Modellag
Controller lag
JSP GUI
8NOEA 2009Java-kursus – JSF 8
Serverscript
• Et scriptsprog som køres på serveren og genererer html-kode.
• ASP, JSP og PHP er eksempler på scriptssprog.• Der skal være en fortolker til det givne sprog.• Serveren finder ud af hvilken fortolker, der skal
anvendes.
9NOEA 2009Java-kursus – JSF 9
Scopes i JSP
• Man definere hvilket scope et objekt skal befinde sig i:– Page: (RequestBean1)
Eksisterer kun for siden. Når siden forlades dør variable/objekter.
– Session: (SessionBean1)Eksisterer for sessionen. Sålænge browseren er åben, og ikke timed out.
– Application: (ApplicationBean1)Eksisterer på server niveau. Sålænge serveren kører.
10NOEA 2009Java-kursus – JSF 10
Session
• Med sessionsstyring er det muligt at tilpasse information og navigationsmuligheder til den enkelte bruger.
• Og registrere f.eks., hvad brugeren gør.
• Sessionsstyring forudsætter serverside programmer eller
scripts.
11NOEA 2009Java-kursus – JSF 11
Session og JSP
• Første gang en bruger loader en side fra sitet genereres et unikt session-id, som gemmes i browseren.
• Samtidigt oprettes et unikt sessionsobjekt på serveren, som bl.a. også indeholder id’et.
• Et id kan kun tilknyttet et sessionsobjekt.
12NOEA 2009Java-kursus – JSF 12
Attributes
• SessionBean1 anvendes ofte til at gemme forskellige variable (”state”).
• Variable gemmes altså på serveren.• Variablene defineres i java filen SessionBean1 – med
tilhørende set- & getmetoder• Kaldes i netBeans property
13NOEA 2009Java-kursus – JSF 13
Componenter
• I NetBeans 6.1 eller 6.5 skal man for hver component man vil knytte til java kode – manuelt sørge for add binding før componenten kan tilgåes.
• Dette gøres ved at højre klikke og vælge Add binding Attribute
14NOEA 2009Java-kursus – JSF 14
”Drag’n Drop”
• ’New Project’• ’Web’ og
’Web Application’
• Vælg navn og placering
• Vælg’Visual Web JavaServer Faces’
15NOEA 2009Java-kursus – JSF 15
”Drag’n Drop”
16NOEA 2009Java-kursus – JSF 16
Property på SessionBean1
17NOEA 2009Java-kursus – JSF
Opgave
• Følg tutorial her: http://netbeans.org/kb/docs/web/helloweb.html