jak wyglądają encje po stronie klienta

0

Witam,
mam zamiar napisać pÓÓÓÓki co prostą web aplikacje wraz z klientem w swingu. Mam wydzielony moduł EJB i w nim trzymam klasy EJB i encje. Wykorzystanie encji w komponentach EJB nie było by zbyt trudne Jednak mam pytanie do tego jak operować na encjach w aplikacji klienta (jak je tu uzyskać).

Chcę by klient wywołując metodę z EJB dostawał listę obiektów encji, na których potem by pracował (wyświetlał).

Próbowałem stworzyć oddzielny interfejs, który implementuje moja encja, i do którego mam również dostęp po stronie klienta. Klient wywołuje metodę z EJB, która zwraca obiekt i przypisuje go do zmiennej (po stronie klienta) której klasa implementuje wspomniany wcześniej interfejs. Ale to mi nie działa.

Znalazłem również (już nie pamiętam gdzie) przykładowy projekt z klientem w swing-u, ale w nim do biblioteki klas klienta dołączony był cały plik jar z klasami EJB i encjami, więc ten miał dostęp to wszelkich klas encji i innych klas. Jednak nie wiem jaki sens ma dołączanie do biblioteki klienta modułu (klas) EJB, skoro myślę że powinien być one tylko na serwerze.

Nie wiem czy dobrze to pojmuję. Proszę o jakieś ukierunkowanie.

Tu:
http://4programmers.net/Forum/Java/147622-Jak_napisac_dobra_aplikacje_klient_serwer_z_uzyciem_JPA
jest podobne (jak nie identyczne) pytanie, ale nie zyskało zbytnio odpowiedzi.
Szukałem też po google, ale nie mogłem zbytnio nic znaleźć.

1

Jak ja bym to zrobił:

Encje do json w ejb i pozniej w kliencie z json do encji (apki musza wspoldzielac encje/dto).

1

Z interfejsem, ale trochę inaczej. Utwórz sobie mały osobny moduł w projekcie nazwij go Model i umieść tam encje. Niech część serwerowa jak i kliencka będzie od niego zależna (classpath). Przesyłasz sobie wtedy te obiekty.

To jest pierwsza opcja. Druga to mapowanie obiektów encji na JSON przed wysłaniem i po stronie klienta deserializacjia ich do nowych klas. Taka wersja sprawdza się gdy klient nie potrzebuje wszystkich informacji z encji.

1 użytkowników online, w tym zalogowanych: 0, gości: 1