****************************************************************************************
*                                                                                      *
* Kody rdowe do ksiki "JavaServerFaces i Eclipse Galileo. Tworzenie aplikacji WWW"*
*                                                                                      *
****************************************************************************************

---------------------------------------------------------------------------------------
Wymagania
---------------------------------------------------------------------------------------
Apache Tomcat v.6+ (lub serwer aplikacji Glassfish 2.1)
Eclipse Galileo (wersja instalacyjna Eclipse Java EE IDE for Web Developers), 
baza danych MySQL v.5.x lub nowsza,
Sun JRE 1.6.x
Windows XP lub nowszy 
---------------------------------------------------------------------------------------
Zawarto
---------------------------------------------------------------------------------------
Kody rdowe zawieraj kompletne katalogi zawierajce utworzone przez autora projekty,
utworzone w rodowisku Eclipse Galileo, a mianowicie:

- katalog 'isrpModel', zawierajcy struktur katalogw i plikw projektu typu Utility Project,
  Kod zawiera implementacj wartswy biznesowej aplikacji ISRP  opisanego w rozdziale 2, 

- katalog 'isrp', zawierajcy struktur katalogw i plikw projektu typu Dynamic Web Project,
  Kod zawiera implementacj wartswy prezentacji aplikacji ISRP w JSF,   

- katalog 'Zasoby', zawierajcy pliki rdowe aplikacji Kalkulator Temperatur (opisanej w 
  rozdziale 1), oraz lunych przykadw z pozostaych rozdziaw (komponentw uytkownika, 
  konwerterw, itp.).   


UWAGA!!! Projekty isrp i isrpModel zawieraj niestandardowe podkatalogi lib i libraries, 
w ktrych umieszczone zostay biblioteki zalene (zewntrzne pliki JAR).  Rozwizanie to 
zwalnia czytelnika z koniecznoci pobierania i dopisywania do cieki JavaBuildPath 
bibliotek wymaganych do skompilowania i uruchomienia projektu.

Przed instalacj kodw rozpakuj plik jsfecg.zip.

------------------------------------------------------------------------------------------
Instalacja aplikacji ISRP 
------------------------------------------------------------------------------------------
1. Instalacja bazy danych

Aby utworzy baz danych dla systemu ISRP uruchom skrypt db.sql, wpisujc w linii komend MySQL: 

mysql> source {sciezka do pliku}\db.sql (np. "mysql> source c:\db.sql")

Skrypt zakadajcy baz danych mona rwnie uruchomi przy uyciu narzdzi DatabaseDevelopment 
w rodowisku Eclipse. Wynikiem instalacji jest baza danych zawierajca 2 utworzonych uytkownikw 
testowych o uprawnieniach administratora i recenzenta. Dane uwierzytelniajce (moesz zmieni te dane w skrypcie sql) :

Uytkownik: Pierwszy Administrator
login: admin@op.pl
haso: password

Uytkownik: Testowy Recenzent
login: reviewer@op.pl
haso: password


-----------------------------
2. Wdroenie moduu uytkowego ISRPModel

Zaimportuj projekt z katalogu isrpModel do rodowiska Eclipse (opcja File/Import/General/Import Existing Projects into Workspace).
Po utworzeniu projektu powinien on zosta automatycznie skompilowany (zaznacz opcj Project/Build Automatically...).
Wprowad ustawienia bazy danych do pliku:
- hibernate.cfg.xml (ustawienia bazy danych) 


-----------------------------
3. Wdroenie moduu interfejsu ISRP.

Zaimportuj projekt isrp (analogicznie do isrpModel). Ustaw konfiguracj skrzynki pocztowej i katalogu do uploadu 
w pliku: 

- isrp.bundle.configuration.Configuration.properties  

Ustaw serwer na ktrym ma by uruchamiana aplikacja (patrz rozdziay 1 i 6) i uruchom aplikacj. 
Zakadajc e aplikacja bdzie uruchamiana na lokalnym serwerze, aby j uruchomi wpisz w pasku adresu przegldarki:

http://localhost:8080/isrp/faces/jsp/index.jsp

Uwaga. rodowisko Eclipse moe wskaza bdy na stronach JSP w wyraeniach EL (typu JSF Problem). Nie ma to wpywu na kompilowanie 
i uruchamianie aplikacji. Powodem takiego zachowania rodowiska Eclipse jest sabe wsparcie dla UEL.

-------------------------------------------------------------------------------------------
Scenariusz testowania aplikacji ISRP
-------------------------------------------------------------------------------------------
Aby sprawdzi poprawnoc konfiguracji, po uruchomieniu mona wykona nastpujce testy funkcjonalnoci (w kolejnoci jn.):

1. Po uruchomieniu aplikacji przejd do menu rejestracja i zarejestruj si jako nowy uytkownik.
Oczekiwany wynik: powrt do strony logowania + mail na adres podany w formularzu.

2. Zaloguj si na konto nowego uytkownika (e-mail stanowi login systemu).
Oczekiwany wynik: przejcie do ekranu uytkownika 

3. Dodaj prac. 
Oczekiwany wynik: wywietlenie tabeli zawierajcej przesan prac + email do autora + nowy plik w katalogu do UPLOADu.

4. Wyloguj si.
Oczekiwany wynik: przejcie do strony logowania.

5.  Zaloguj si jako administrator i przejd do opcji lista prac.
Oczekiwany wynik: ekran z tabel prac zawierajc wprowadzon prac.

6. Przypisz recenzenta do pracy (przejcie do ekranu z wyborem recenzenta - wybierz testowego)
Oczekiwany wynik: ekran z tabel prac zawierajcy zmienione dane + email do recenzenta +email do autora.


------------------------------------------------------------------------------------------
Aplikacja Kalkulator Temperatur i inne przykady
------------------------------------------------------------------------------------------
Szczegowy opis implementacji i wdroenia aplikacji Kalkulator Temperatur zosta umieszczony w rozdziale 1 ksiki. 
Katalog  Zasoby zawiera:
-  podkatalog src - kody rdowe klas Javy dla aplikacji Kalkulator oraz innych przykadw (w innych pakietach), 
-  podkatalog WebContent - strony JSP i inne zasoby WWW aplikacji Kalkulator oraz innych przykadw (podkatalog inne).


