14
18 – Java Server Faces

18 – Java Server Faces

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

Page 1: 18 – Java Server Faces

18 – Java Server Faces

Page 2: 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

Page 3: 18 – Java Server Faces

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

Page 4: 18 – Java Server Faces

7NOEA 2009Java-kursus – JSF 7

Web-applikationer:Vores Arkitektur

Database

Browser

http

DBlag Modellag

Controller lag

JSP GUI

Page 5: 18 – Java Server Faces

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.

Page 6: 18 – Java Server Faces

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.

Page 7: 18 – Java Server Faces

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.

Page 8: 18 – Java Server Faces

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.

Page 9: 18 – Java Server Faces

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

Page 10: 18 – Java Server Faces

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

Page 11: 18 – Java Server Faces

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’

Page 12: 18 – Java Server Faces

15NOEA 2009Java-kursus – JSF 15

”Drag’n Drop”

Page 13: 18 – Java Server Faces

16NOEA 2009Java-kursus – JSF 16

Property på SessionBean1

Page 14: 18 – Java Server Faces

17NOEA 2009Java-kursus – JSF

Opgave

• Følg tutorial her: http://netbeans.org/kb/docs/web/helloweb.html