Marzec
19
2009

Pierwszy projekt JBoss Seam w Eclipse

Słowa kluczowe: | Kategorie: Seam Framework
No Gravatar

Poprzednim razem opisałem instalowanie środowiska JBoss Seam. Teraz opiszę tworzenie prostego projektu za pomocą kreatora z poziomu Eclipse.

Nigdy nie lubiłem tworzenia projektów za pomocą kreatora. Ale użycie kreatora do szybkiego wygenerowania podstawowego projektu Seam nie jest takie złe… pod warunkiem, że się rozumie co się tworzy. Jednak może najpierw tworzenie, a dopiero potem zrozumienie.

Uruchamiam środowisko eclipse, wybieram katalog dla moich projektów, czekam aż się uruchomi… otwieram główne menu Window→Open perspective→Other… i na liście wybieram Seam. Mam teraz przed sobą środowisko IDE dla projektów JBoss Seam i mogę już uruchomić kreator nowego projektu – File→New→Seam Web Project.

Krok 1 – Seam Web Project

Na początku muszę określić podstawowe informacje dotyczące aplikacji. W polu Project name wpisuję nazwę projektu. Katalog pozostawiam domyślny (pole Use default zaznaczone). Następnie muszę ustalić informacje dotyczące środowiska uruchomieniowego projektu.

Krok 1.1 – New Server Runtime Environment

W grupie Target Runtime wybieram opcję New…. Na liście dostępnych środowisk rozwijam grupę JBoss Community i wybieram JBoss 5.0 Runtime. Okienko Create a new local server pozostawiam niezaznaczone i klikam Next.

Teraz muszę wskazać położenie katalogu domowego dla środowiska JBoss. W moim przypadku jest to C:\jboss-5.0.0.GA. JRE oraz konfigurację pozostawiam domyślne i kończę konfigurację środowiska (Finish).

Krok 1.2 – New Server

Teraz jeszcze muszę wybrać serwer, na którym będzie uruchamiana aplikacja – w grupie Target Server klikam New…. Ponieważ serwer znajduje się na moim komputerze, w pole Server’s host name wpisuję localhost. Z listy wybieram JBoss Community→JBoss AS 5.0. Upewniam się, czy w polu Server runtime environment wybrane jest środowisko utworzone podczas kroku 1.1, a następnie klikam Finish.

Krok 1.3 – Pozostałe parametry

Pozostało mi jeszcze ustawienie dwóch parametrów konfiguracyjnych. W polu Dynamic Web Module version wybieram 2.5, natomiast w polu ConfigurationDynamic Web Project with Seam 2.1 (technology preview). Teraz już mogę przejść do następnego kroku (Next).

Krok 2 – Web Module

Na tym etapie wybierane są katalogi zawierające poszczególne pliki. Pozostawiam je bez zmian, upewniając się, że okienko Generate deployment descriptor jest zaznaczone. Klikam Next.

Krok 3 – JSF Capabilities

Kolejny krok to ustawienia dotyczące JSF. Wszystko powinno pozostać bez zmian, czyli:

JSF Libraries:
opcja Server Supplied JSF Implementation,
JSF Configuration File:
/WEB-INF/faces-config.xml,
JSF Servlet Name:
Faces Servlet,
JSF Servlet Classname:
javax.faces.webapp.FacesServlet,
URL Mapping Patterns:
*.seam.

Przechodzę do następnego kroku – Next.

Krok 4 – Seam Facet

Na sam koniec pozostało sporo ustawień dotyczących samego JBoss Seam. Najpierw ustawiam Deply as na EAR. Zmieniam też pakiety, w których mają się znaleźć automatycznie wygenerowane klasy (Code Generation).

Pozostało mi ustawienie środowiska uruchomieniowego dla JBoss Seam (Seam Runtime) oraz połączenia z bazą danych (Database).

Krok 4.1 – New Seam Runtime

W grupie Seam Runtime klikam New… – aby dodać nowe środowisko. Ukazuje się okienko, w którym ustawiam katalog domowy dla JBoss Seam. W moim przypadku jest to C:\jboss-seam-2.1.1.GA. Podaję jakąś nazwę i ustawiam wersję na 2.1. Konfigurację kończę klikając Finish.

Krok 4.2 – New Connection Profile

W grupie Database wybieram Database TypePostgreSQL. Następnie obok pola Connection profile klikam New… w celu dodania nowego połączenia z bazą danych.

W oknie kreatora nowego połączenia wybieram z listy PostgreSQL. Następnie podaję nazwę dla połączenia (np. TestDB PostgreSQL) i klikam Next.

Kolejna strona kreatora dotyczy ustawień sterowników bazy danych. Obok pola Drivers klikam ikonkę w kształcie koła ze znakiem „+”, aby wyświetlić okno dodania nowego szablonu sterownika.

Z drzewa Available driver templates wybieram Database→PostgreSQL JDBC Driver, po czym przechodzę na zakładkę Jar List. Kasuję wszystkie pliki z listy i dodaję postgresql-8.3-604.jdbc4.jar, który wcześniej pobrałem. Na zakładce Properties ustawiam dodatkowe parametry połączenia:

Connection URL:
jdbc:postgresql:[nazwa bazy danych],
Database Name:
nazwa bazy danych,
Driver Class:
org.postgresql.Driver,
Password:
ustawione na serwerze bazy danych hasło,
User ID:
ustawiona na serwerze bazy danych nazwa użytkownika.

Kończę ustawianie sterowników klikając OK, po czym zaznaczam opcję Save password i klikam Finish.

Krok 4.3 – Kończenie pracy kreatora

W grupie Database ustawiam jeszcze Database Schema Name na public i zaznaczam pole DB Tables already exists in database. Upewniam się, czy wybrana jest opcja Deploy as: EAR a pakiety mają wybrane przeze mnie nazwy, po czym klikam na przycisku Finish.

Podsumowanie

Tworzenie kolejnych projektów nie będzie już tak skomplikowane, ponieważ profile środowisk uruchomieniowych, serwera i połączenia z bazą danych są już utworzone. Następnym razem postaram się dodać nową tabelę do bazy danych oraz odpowiadającą jej klasę w projekcie. Dokonam też pierwszego uruchomienia serwera.


2 odpowiedzi do “Pierwszy projekt JBoss Seam w Eclipse”

  1. Cześć!
    Kurcze nigdzie nie mogłem znaleść Twojego mail'a, więc piszę w komentarzu. Mam taki mały problem, dotyczący seamowych projektów w eclipse.

    Wszystko fajnie mi się generuje, ale kiedy piszę sobie jakąś prostą aplikację i pierwszy raz projekt zostanie zdeployowany na server, to każda późniejsza zmiana w kodzie źródłowym modułów EJB nie jest odzwierciedlana na to co znajduje się na serwerze.

    Opisz to inaczej:
    Robie projekt,
    Pisze pare klas,
    Pierwszy raz daje "Run on server"
    i wszystko gra.

    Teraz zmieniam coś w kodzie źródłowym modułów EJB,
    Dare "Run on server",
    i żadnych zmian nie widać.

    Wiesz może co jest powodem takiego działania ? a może coś źle robię ;p

    Pozdrawiam serdecznie,
    Whill3r

  2. Cześć,

    Mam wrażenie, że wszystko robisz dobrze.

    Jakiś czas temu zauważyłem, że projekt utworzony przy pomocy eclipse i JBoss Tools wymaga ponownego uruchomienia serwera po zmianie kodu źródłowego komponentów (co ciekawe, zmiany GUI wchodzą same). Sądzę, że ma to związek z tzw. hot deployment.

    Moja rada:
    1. Zatrzymaj serwer.
    2. Usuń projekt z serwera.
    3. Ponownie załaduj projekt na serwer.
    4. Uruchom serwer.
    (korzystaj z widoku "Window->Show View->Other…" "Server->JBoss Server View")

    A najlepiej – zacznij używać seam-gen. Dla Windows dobre opisy znalazłem na blogu Michała Mecha:
    - Instalacja
    - Pierwszy projekt
    Ja pracuję na Ubuntu, więc może przy okazji też coś na ten temat w najbliższym czasie napiszę – tyle że pod kątem linuxa.

    Pozdrawiam,
    Sławek

Napisz Komentarz

*