Java Web Service : Confusing

Ya, saya bingung. Setelah dua hari saya belajar tentang Web Service di Java. Loh, kok bingung bukan-nya web service di Java itu gampang Lex? Ya, pada dasar-nya membuat web service di Java sangat mudah sekali. Saya tidak menemui kesulitan sama sekali ketika belajar tentang web service yang berhubungan dengan tipe data dasar. Ya, ngak jauh beda-lah dengan web service, yang biasa saya buat dengan bahasa pemrograman C#. Tapi, kesulitan langsung saya temui ketika mencoba mengembalikan tipe data complex melalui web service. Data complex yang saya maksudkan disini adalah, mengembalikan list of Object dari hasil instance sebuah kelas.

Dua hari saya mencari referensi untuk belajar, google menjadi teman yang senantiasa membantu mengarungi “dunia tanpa batas ini”, hasil-hasil pencarian dari beberapa kata kunci seputar web service di Java, selalu dia sajikan. Satu persatu, saya coba menelusuri hasil pencarian tersebut, banyak tutorial, white paper, ataupun tulisan-tulisan di blog mengenai teknologi yang satu ini. Tapi dari semua hasil penelusuran tersebut, tambah membuat saya bingung.

Bagaimana tidak, banyak sekali teknologi yang dikembangkan dari Java, untuk membuat sebuah framework yang baru dalam teknologi Web Service. Dimana masing-masing framework tersebut mempunyai style dan dan teknologi sendiri-sendiri. Jujur, ini yang membuat saya bingung, teknologi mana yang harus saya pakai dan mana dari teknologi tersebut yang menyediakan dokumentasi lengkap dan jelas. Yang pasti dari dokumentasi yang saya baca tersebut, saya belum menemukan pemecahan, dari masalah yang saya hadapi.

Setelah mendapatkan beberapa referensi, awal-nya saya sempat melirix AXIS, yang dikembangkan juga oleh Apache. Tapi setelah ngobrol-ngobrol via YM! dengan mas Endy, yang merupakan salah satu dedengkot Java di tanah air. Beliau menyarankan kepada saya, untuk belajar Spring. Beliau sendiri sudah menulis sedikit tutorial tentang Spring ini yang bisa dilihat DISINI. Ya, seperti-nya saya sudah sedikit menemukan titik terang untuk memindahkan business logic yang sudah saya buat dengan mudah menggunakan C#. O, iya bagi rekan-rekan yang sudah jago-an di Spring ataupun teknologi Web Service di Java, mohon bimbingan-nya yah. Iam newbie here ;-) .

20 Comments

  1. ekowanz:

    lha kamu aj bingung…apa lagi aku lex :D

  2. Ervan:

    Setahu saya sih List itu tidak SOAP-able, kecuali kalau Anda membuat custom serializer/deserializer. Kalau saya sih biasanya merubah List ke Array sebelum di transmit over SOAP.

  3. Brahmasta:

    Kalo ngebikin doang, kayaknya di Netbeans tinggal klak klik jadi. Ikutin tutorialnya. Tapi buat memahaminya, hmmm.. emang sulit. Java terlalu banyak frameworknya.

  4. Redy:

    Wah duh, dunia programming emang bikin pusing. Logika dan algoritma sih lancar, coding-nya itu yang repot :P

  5. Alex Budiyanto:

    Mas Eko,
    Jadi kita berdua bingung dong.
    Hehehe….

    Mas Ervan,
    Itu dia, yang kadang-kadang bikin pusing, saya kurang tahu di Java, tapi kalau di .NET kita bisa mereturn-kan list of Object (Reference Type) maupun Array of Struct (Value Type). CMIIW

    Mas Brahmasta,
    Sebenar-nya web service sendiri tidak sulit kok, apalagi untuk tipe data dasar, seperti kebanyakan tutorial di Netbeans.
    Soal Framework, saya setuju sekali, saking banyak-nya kita malah jadi bingung milih salah satu, tapi itulah unik-nya dunia open source :-)

    Mas Redy,
    Menurut saya, yang paling penting adalah Logika, soal bahasa, yah anggap aja seperti belajar bahasa ingris, kalau ngak tahu, tinggal buka kamus kan ;-)

  6. IMW:

    Service sekarang jadi istilah yang makin tidak karuan. Penggunaannya sebagai buzzword makin membuat kacau balau. Bagi yang belajar Web Service saatnya juga melihat sisi teori seperti phi-calculus, TLA dan teman-temannya.

    Formal Specification of a Web Services Protocol (Johnson, LAngsworthy, Lamport, 2004).

  7. Andry:

    .NET XML Web Service gampang didepan, susah di belakang :)

    Meski labelnya webservice, tapi susah sekali digunakan oleh framework aplikasi lain. Apalagi dengan retval binary (list of object). Jangan gitu deh, pake retval array aja, itu saja sudah bisa bikin ribet.

    Kalau bikin .NET XML Web Service tapi hanya bisa digunakan oleh aplikasi .NET saja, ya apa gunanya?

    Sekalian pake .NET remoting saja. Lebih cepat (binary over plain XML) dan pluggable sink.

  8. Yogie:

    Pusiinnggg….
    ndak mudeng…

    wis pokoke semangat wae lah…

  9. Alex Budiyanto:

    Mas Made,
    Itu dia mas, saya malah belum pernah mendapatkan pelajaran sama sekali, mengenai phi-calculus, TLA dan temen2-nya itu.
    Soal Web Service, saya juga heran, sebuah web service yang dikatakan mempunyai standart terbuka, eh pada impelementasi-nya, banyak vendor mempunyai standart sendiri-sendiri.

    Mas Andry,
    Terima kasih atas saran-nya, btw, sampai saat ini saya belum pernah mengalami kesulitan [baca: keribetan] dengan mengembalikan data berupa list of object dari instance sebuah kelas, walaupun data tersebut saya pakai untuk berhubungan dengan presentation layer, yang dibangun dengan Flex.

    Mas Yogie,
    Ya, nama-nya juga tuntutan pekerjaan.
    btw, walaupun pusing, tapi tetep mengasyikan lho ;-)

  10. aad:

    lah kamu aja bingung … aku malah gak dong

  11. zam:

    itu memang rasanya datar.. ndak ada yg istimewa.. rasanya mengambang, mungkin kualitas bahan untuk bumbunya kurang bagus..

    daging bebeknya juga terlalu muda, sehingga bumbu susah meresap ke dalamnya..

    ini ngomongin bebek goreng to, lex?

  12. Panduan Belajar WordPress:

    Wah, saya sangat senang dengan script web, mulai ASP dulu, PHP, CSS dan HTML. Tapi yang paling ndak paham sampai sekarang adalah Java, apalagi kalau updah Applet :(

  13. Alex Budiyanto:

    Mas Aad,
    bingung == gak dong :-p

    Mas Zam,
    Anda salah kamar nih kayak-nya, sana gih ke kamar jalan sutera!
    *tendang zam ke jalan sutera*
    hehehehe….

    Mas Bimo,
    Terima kasih :-)

    Mas Lutvi,
    Memang Java kadang-kadang membingungkan, karena ada banyak sekali teknologi yang ada disana, tapi itulah hebat-nya Open Source ;-)

  14. Henny:

    hai all…
    ada yang tau cara untuk menggabungkan prog java ke PDA dan dari PDA ke Web…
    klo ada email ke aku yach…, thx..

  15. Alex Budiyanto:

    Mas/Mbak Henny,
    Silahkan dicoba URL INI semoga saja bisa membantu.

  16. tejo:

    Di netbean 6.5, membuat webservice tinggal klik sana klik sini, begitu juga cara meng ‘consumme’ nya, sekali klik kanan, sekali klik kiri, nampil deh code snippet untuk mengkonsumsi webservice yang ada. semuanya otomatis.

    soal complexType, well, sama mudahnya. java mempunyai kelas ‘Reflect’ yang bisa merombak object menjadi,… apapun,.. termasuk xml. jadi nggak ada kesulitan laa untuk membuat retval sekompleks apapun. anda nggak harus menyususun struktur xml schema sendiri. webservice enggine langsung merefactor kelas buatan mu menjadi WS complect type. bahkan ,… aku make complex type bukan cuman buat retval, tapi untuk WSparameter juga.

    cuman demi interoperabilitas, sebaiknya sih penggunaan List, atau Arraylist sebagai retval dipertimbangkan ulang. mending array of object aja. semuanya memungkinkan, jadi tergantung pilihan programmer, mau make type data primitif yang pasti bisa dikenali platform lain, atau yang kompleks.

    tapi ada beberapa hal sih yang aku lom ngeh make java WS, kalo ada yang tau plz share dong ilmunya.

    1. Gimana cara mematikan feature ?tester webservice, kalo udah level production, kurasa webservice tester harus dimatikan.

    2. Gimana membuat homepage list of webservice operation. kalo di dot net. kita langsung di buatkan homepage buat webservice nya. beserta keterangan cara mengkonsumsinya.

    3. Bukan soal WS, ada yang tau nggak cara mengkonfigurasi glassfish. Scurity assesment ku menyarankan untuk membatasi http verb, cuman untuk get dan post aja. cuman settingnya dimana ya ,..?

  17. newbie:

    mas mba, bagi yang punya ebook or tutorial lengkap tentang netbeas (terutama yg versi 6.5) tolong kirim ke email dundz…ato mungkin bagi link nya buat donlot..
    sblumna thenkyu bgdz…:-)

  18. bedon:

    Salam kenal
    mas,saya minta pencerahanya tentang web service yang pake C#,saya aga kesulitan mempelajarinya ni,kalo bisa,say minta contoh aplikasi sederhana web service C#,1-2 form juga cukup,yang penting bisa insert update delete,mohon bantuanya..
    thx

  19. H4N0L1:

    Dear Mas Alex,
    Mungkin jurnal ini bisa jadi salah satu referensi, siapa tau berguna…:D
    http://journal.uii.ac.id/index.php/media-informatika/article/viewFile/7/7

    regards

Leave a comment