Version 1, last updated by pipen at December 03, 2009 07:13 UTC
Updatowałem juz prawie bardzo dobrą wersję wyjściową projektu, więc krótko opiszę co i gdzie.
Plików jest BARDZO dużo, jak to na projekt javowy przystało. Potrzebnych nam jest kilka(naście) z nich i już można dodawać, zmieniać.
Na końcu krótki tutorial jak w praktyce dodac stronkę. No to jedziem:
Po ściągnięciu, wygenerowaniu mvn eclipse:eclipse i zaimportowaniu mamy taką strukturę:
- src/main/java - pliki javowe, logika
- src/main/resources - pliki xml i properties, konfiguracje
- src/main/webapp - duzo wygenerowanych plików związanych z warstwą prezentacji, JSP, CSS, obrazki, troche XML
w src/main/java utworzyłem kilka paczuszek:
- dao - interfejsy Data Access Object - pliki obsługujące połączenie z bazą - zasada: jedna tabelka = jedno dao
- dao.hibernate - implementacje powyższych
- webapp.action - akcje struts. Jak zobaczycie w tutorialu, akcja strutsa to coś co się wykonuje, jezeli uzytkownik zazada jakiejś stronki. Akcja zwraca stringa (np. "Success") i odpowiednio do tego co tam jest mozna wyswietlic rózne wyniki. Stronka która sie wyświetla ma dostęp do zmiennych akcji
- managers - managerowie powinni obsługiwać logikę, mozna ich np wstrzyknąć do akcji
- model - pliki modelu np bazy danych, odpowiadające tabeli w bazie
src/main/resources:
- applicationContext.xml, applicationContext-struts.xml - pliki kontekstu springa. Tu mozna sobie zadeklarować beana i np wstrzyknąć.
- defaultData.xml - dane wkładane do bazy przy tworzneiu stronki, wkrotce niepotrzebne
- hibernate.cfg.xml - ustawienia hibernateta, tutaj trzeba dodać mappingResources hibernate, jezeli sie z niego korzysta
- log4j - mozna sobie ustawic level na fatal np ;)
- struts.xml - akcje strutsa. moznaby tutaj dodawać swoje, ale stworzyłem osobny plik i zaincludowałem, więc dodajemy w:
- struts-fiveminsmail.xml - tutaj dodajemy swoje definicje akcji
src/main/webapp - pliki stronki, wiekszosci nie trzeba modyfikowac
- WEB-INF/pages - tutaj mozna dodać swoją stronkę JSP
- WEB-INF- xmle, raczej nie do modyfikowania. dwr.xml bedzie potrzebny zeby zrobic AJAXa, ale to pozniej
- sa tu pliki wszytskich stronek widocznych w przeglądarce, fanów CSS, zabawy grafiką itd zapraszam
src/test - paczka testów, szczerze mówiąc nie bawiłem się w testowanie takiej aplikacji, ale twórcy appfuse'a twierdza, ze to bardzo proste:
tutaj troche tekstów:
http://raibledesigns.com/wiki/Wiki.jsp?page=Articles
tutaj o serwerze SMTP:
http://appfuse.org/display/APF/Installing+an+SMTP+Server
Tutorial, jak dodać stronkę:
dodałem już prostą stronkę welcomescreen.jsp, zeby sie mozna było na niej wzorować. Po kolei:
- stronka w
src/main/webapp/WEB-INF/pages/welcomescreen.jsp - wpis do menu:
src/main/webapp/WEB-INF/menu-config.xml - podlinkowanie w menu:
/src/main/webapp/common/menu.jsp - stworzenie akcji w:
src/main/java/webapp/action/WelcomeScreenAction.java ( extends BaseAction!) - dodanie wpisu (beana) do applicationContext.xml w resources
- dodanie wpisu akcji do
struts-fiveminsmail.xml
należy pamiętać, że classa w tym pliku to nazwa beana, a nie klasa javowa. Jako result tej akcji dodajemy nazwe naszej strony jsp. Nazwa akcji to tak jakby link w przeglądarce: fiveminsmail/nazwaakcji.html
I powinno hulać.