140 likes | 251 Views
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).
E N D
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 Klient HTML internet Web-server Server Firewall Applikationer/ Databaser mv.
Servlets Servlets • 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 Klient HTML internet Web-server Java Server Pages Server Servlet Container Servlet Firewall Applikationsserver Java-programmer Database
Web-applikationer:Vores Arkitektur Browser http JSP GUI Controller lag DBlag Modellag Database
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.
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.
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.
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.
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
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
”Drag’n Drop” • ’New Project’ • ’Web’ og ’Web Application’ • Vælg navn og placering • Vælg’Visual Web JavaServer Faces’
Opgave • Følg tutorial her:http://netbeans.org/kb/docs/web/helloweb.html