2009/4/1 Jecki <jecki...@gmail.com>: > kelebihan JAX-RS apa nih josh?
Disclaimer: Bagi beberapa orang hal ini memang tidak penting, tetapi bagi yang peduli dengan arsitektur dan standard. Yang gw suka dari JAX-RS alasan utamanya adalah RESTful service-nya. Intinya dari JAX-RS gw bisa panggil resource dengan pretty URL. Well gw gak akan ngomongin apa itu REST karena itu adalah satu disertasi seorang Roy Fielding penjelasannya :-D Nah RESTful yang kek ginian udah lama ada di Rails, dan Java 'agak' ketinggalan dalam hal seperti ini. Tapi gpp, karena JAX-RS adalah sebuah standard dan Rails bukan. Ok dibandingkan dengan Rails untuk men-define sebuah Resource itu jauh lebih mudah karena cuman pakai annotation aja, sedangkan di Rails kita harus configure di routes.rb yang bisa ribet kalau banyak nested resource. Di JAX-RS kita tinggal bikin Resource object yang kira-kira seperti ini: @Path("/product") public class ProductResource { @GET @Produces("application/json") @Path("{id}") public String getProduct(@PathParam("id") int id) { ... } } Yang intinya bisa manggil service sbb: http://localhost:9000/product/1 Ya kalau gitu aja di Rails juga bisa ya. Tapi gimana kalau mau panggil service yang sbb: http://localhost:9000/product/1/cat/1 Di Product kita tinggal kasih resource sbb: @GET @Path("category/{catId}/") public Category getCategory(@PathParam("catId")int catId) { ... } In the end kita bisa punya domain driven design. Kalau yang URL seperti ini gak bisa dilakukan oleh Tapestry 5 sekalipun. But yang paling ok menurut gw dengan JAX-RS ini benar-benar loosely coupled. Client yang memanggil tidak harus javascript aware. Client-nya bisa berupa Flex Client, Console client, Swing client or whatsoever yang penting bisa memanggil http. Dan kalau mau menggunakan Javascript framework pun bisa menggunakan framework apapun dan tidak terikat pada satu framework. Asalkan framework tersebut bisa mengirimkan XHttpRequest, let that be Dojo, jQuery, Mootools or Prototype. Selain itu JAX-RS tidak harus di-deploy di sebuah webapp server karena JAX-RS secara standard ada internal server-nya. * Loosely coupled * Pretty URL * DDD * Standard * Less configuration adalah alasan why IMHO JAX-RS lebih bagus dibanding DWR. Cheers. -- If you can't believe in God the chances are your God is too small. Read my blog: http://joshuajava.wordpress.com/ Follow me on twitter: http://twitter.com/jpartogi