Nowe GWT, nowe problemy ;/

GWT, Java Zostaw komentarz

W końcu zabrałem się za projekt na MASI (Modelowanie i Analiza Systemów Informatycznych). Teoretycznie jest to kontynuacja projektu Desty z Programowania Zespołowego, teoretycznie dlatego, że kontynuowana jest w zasadzie tylko idea praktycznie cały kod mamy zamiar pisać od nowa.  No i jako, że od nowa to przecież nie będę pisał w przestarzałej wersji GWT tylko w najnowszej.  Desty 1.0 był pisany w GWT 1.4 albo 1.5, teraz dostępna jest juz wersja 2.0, i muszę przyznać, że sporo się pozmieniało.

A o to pierwszy problem na jaki się natknąłem:

Stworzyłem klasę która w zasadzie ma działać tylko jako DTO . No i jednym z “fieldów” miałbyć ArrayList<String>. Żeby obiekty takiej klasy puścić przez GWT RPC w starym GWT nie trzeba było robić nic więcej poza konstruktorem bez argumentowym, W nowym GWT dostaniemy ładny exeption, coś w stylu:

'fullpacketclassname.NaszaKlasa' was not included in the set of types which can be serialized by this
SerializationPolicy. For security purposes, this type will not be serialized.

Więc co trzeba zrobić, żeby dało się używać wszelkiego rodzaju Array’i ?

Musimy przed polem z arrayem dodać JavaDoc’owa adnotację

@gwt.Args<typ_z_pakietem_>

i po co takie utrudnienie ? Mam nadzieje, że dzięki temu wpisowi ktoś zaoszczędzi trochę czasu na szukaniu przyczyny błędu.

EDITED:

Zacząłem się zastanawiać czy owa adnotacja jest nowością w GWT 2.0 i wychodzi na to, że nie.  Widocznie w poprzedniej wersji projektu nie przesyłaliśmy naszych klas które zawierają array’ie, a jedynie Array’ie złożone z naszych klas.

Komentarze (2) do “Nowe GWT, nowe problemy ;/”

  1. Koziołek Says:

    Hm… to jest jakiś bug( a mówiła mamusia by w święta nie programować bo bug się rodzi, khe?) w samym GWT. W starszych wersjach (od 1.5) działały “genericsy” w kodzie GWT i nie było potrzeby używana adnotacji Javadoc. W wersji 1.4 jak pamiętam taka adnotacja była opcjonalna.

  2. Kędzior Says:

    a no wiedziałem ze w święta się nie powinno programować … ale odkąd zacząłem pracować to za wiele czasu mi nie zostaje, więc po 2 dniowym lenistwie pomyślałem, że trzeba zabrać się za zaległości bo termin oddania projektu zbliża się wieeelkimi krokami ;/
    Co do “generics’ów” to tak same w sobie działają nadal (np po stronie klienta samego), a jedynie przy używaniu GWT RPC i serializowaniu obiektów zawierających w sobie generics’a zauważyłem tego dziwnego bug’a. Mam nadzieje, że za dużo ich nie narobili w 2.0 :)

Zostaw komentarz

Silnik: Wordpress - Theme autorstwa N.Design Studio. Spolszczenie: Adam Klimowski.
RSS wpisów RSS komentarzy Zaloguj








2zł Nordic Gold