Integrasi GWT dan Jersey

Saya telah membuat aplikasi yang menggunakan ExtJS yang terhubung melalui permintaan Ajax ke layanan Jersey RESTful. Semua berfungsi dengan baik di aplikasi ini tetapi sekarang saya ingin mem-portingnya ke ExtGWT.

Karena ExtGWT sudah memiliki servlet RPC untuk menangani komunikasi klien-server, di mana Jersey bisa masuk dalam skenario ini? Haruskah saya tidak menggunakannya lagi dan langsung terhubung dari servlet GWT ke metode layanan?

Jika saya ingin menggunakan Jersey, apakah ada cara untuk mendapatkan dukungan yang sama untuk serialisasi/deserialisasi seperti pada RPC GWT? - Saya berasumsi saya tidak boleh menggunakan RPC GWT lagi dalam skenario ini.

Saya lebih memilih Jersey karena memiliki implementasi berbasis REST sedangkan RPC GWT menurut saya tidak. Di masa depan saya juga berencana untuk mengakses layanan RESTful Jersey dari aplikasi Android/iOS dan RPC GWT tidak akan cocok dengan skenario ini.

Terima kasih!


person Dan L.    schedule 17.01.2011    source sumber


Jawaban (4)


Anda benar bahwa Anda tidak dapat menggunakan GWT RPC dengan REST. AFAIK, ExtGWT (GXT) tidak memiliki dukungan bawaan untuk mengambil data REST; Namun saya bisa saja salah, karena saya sudah tidak menggunakan GXT selama lebih dari setahun.

Sedangkan untuk penggunaan GWT RPC, sangat mudah untuk dapat menggunakan kembali model Anda di server dan klien. Namun, model Anda tidak boleh terlalu rumit (model tersebut harus dapat diserialkan ke JSON); jika tidak, Anda harus membuat DTO terpisah untuk model Anda. Anda dapat membaca lebih lanjut di dokumentasi GWT RPC: GWT RPC.

Jika itu saya, saya akan menggunakan REST dan GWT RPC. Saya akan menggunakan GWT RPC untuk komunikasi dengan kode GWT klien saya dan Jersey/REST untuk komunikasi dengan aplikasi eksternal.

person JP Richardson    schedule 17.01.2011
comment
Terima kasih! Saya juga memikirkan opsi untuk menggunakan keduanya. Di sisi lain, saya baru saja menemukan beberapa perpustakaan (lihat komentar berikutnya) yang menyatakan menyediakan dukungan REST untuk GWT tetapi saya tidak yakin seberapa stabilnya atau betapa mudahnya bekerja dengannya. Mereka tidak mengatakan apa pun tentang Jersey, jadi saya tidak tahu bagaimana integrasi dapat ditangani atau apakah mungkin. - person Dan L.; 17.01.2011
comment
Jadi saya rasa meskipun GWT RPC tidak berbasis REST (yang merupakan standar tersebar luas yang ingin saya gunakan dari GWT), itu masih merupakan standar Google yang menurut saya stabil (tidak ada bug, dll) dan mudah untuk digunakan. bekerja dengan untuk membuat serial/deserialisasi segala jenis kacang java. Dibandingkan dengan produk yang baru diluncurkan seperti RestyGWT, menurut saya GWT RPC jauh lebih solid dan merupakan alternatif yang lebih tahan masa depan. Bagaimana menurutmu? - person Dan L.; 17.01.2011
comment
Mengenai restygwt, saya belum menggunakannya jadi saya tidak bisa berkomentar. GWT-Rest tampak mati. Sejauh GWT-RPC tahan masa depan, dalam dunia teknologi, saya tidak yakin ada yang bisa dikatakan tahan masa depan. Namun, saat ini mudah digunakan dan didukung oleh Google. Jadi saya kira itu akan ada untuk sementara waktu. Anda juga memiliki opsi untuk menggunakan RequestFactory. code.google.com/webtoolkit/doc/latest/ Namun, RequestFactory mendorong penulisan banyak kode. misalnya DTO dan model. - person JP Richardson; 17.01.2011
comment
Terima kasih telah mencari solusi untuk masalah saya, saya menghargainya - Saya akan mencoba memperbaiki diri, mungkin ada hasil yang baik. - person Dan L.; 17.01.2011

Silakan lihat proyek RestyGWT. Ini akan membuat pemanggilan sumber daya JAXRS JSON semudah menggunakan GWT-RPC. Selain itu, Anda biasanya dapat menggunakan kembali DTO respons permintaan yang sama dari sisi server di sisi klien.

person Hiram Chirino    schedule 12.02.2011

Kami telah menulis aplikasi (buku nilai) yang menggunakan sisi klien GWT/GXT dan berkomunikasi melalui JAX-RS (Jersey) di sisi server:

https://source.sakaiproject.org/contrib/gradebook2/trunk/

Awalnya kami menggunakan GWT-RPC tetapi kemudian memilih untuk menggunakan REST/JSON. Kedua pola komunikasi tersebut mempunyai kelebihan/kekurangannya masing-masing. Ada beberapa informasi tentang keduanya di sini: code.google.com/webtoolkit/doc/latest/tutorial/clientserver.html

person tamsler    schedule 01.02.2011

Anda dapat dengan lancar menggabungkan Jersey (sisi server) dengan RestyGWT (sisi klien). Lihat http://blog.javaforge.net/post/30469901979/gwt-rest untuk rincian lebih lanjut.

person mk_    schedule 02.09.2012