Membuat RESTful Web Service Menggunakan Java dan NetBeans IDE


Jersey merupakan salah satu implementasi dari JAX-RS, yaitu spesifikasi untuk membuat RESTful Web Service di Java. Pada artikel ini kami akan membahas tentang membuat RESTful Web Service menggunakan Jersey menggunakan Apache Maven dan NetBeans IDE.
Tujuan akhir dari artikel ini adalah membuat web REST sederhana, yang hanya menampilkan Hello World. 

Membuat Project di NetBeans

Hal pertama adalah membuat project Maven Web. Anda dapat membuat project Maven Web menggunakan menu File -> New Project. Pilin Maven -> Web Application :
NetBeans New Project
NetBeans New Project
Klik Next. Setelah itu masukkan nama project, lokasi dan jangan lupa pilih Java EE 5. Hal ini sengaja supaya nanti bisa dijalankan di Web Server Jetty 6. Jetty merupakan web server java yang sangat ringat dan cocok untuk testing.
NetBeans Maven Web Application Project
NetBeans Maven Web Application Project
Klik Finish. Project Maven Web Application selesai dibuat.

Menambahkan Dependency Jersey

Setelah project Maven Web Application selesai dibuat, saatnya menambah dependency Jersey ke project yang Anda buat. Caranya adalah klik kanan bagian Dependencies lalu pilih Add Dependency. Masukkan dependency Jersey seperti pada gambar dibawah ini :
Add Maven Dependency NetBeans
Add Maven Dependency NetBeans
Klik Add. Dan sekarang dependency Jersey telah ditambahkan ke project yang Anda buat.

Meregister Jersey Servlet

Untuk menggunakan Jersey, Anda perlu meregister Jersey Servlet ke web.xml. Hampir sama dengan framework-framework yang lainnya seperti Spring Web MVC, Apache Struts dan Java Server Faces. Untuk meregister Jersey, kita perlu menambahkan ServletContainer ke web.xml seperti pada kode dibawah ini :

    <servlet>


        <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>


        <servlet-name>Jersey</servlet-name>


        <init-param>


            <param-name>com.sun.jersey.config.property.packages</param-name>


            <param-value>khannedy.belajar.hellorest</param-value>


        </init-param>


        <load-on-startup>1</load-on-startup>


    </servlet>


    


    <servlet-mapping>


        <servlet-name>Jersey</servlet-name>


        <url-pattern>/rest/*</url-pattern>


    </servlet-mapping>

view raw web.xml This Gist brought to you by GitHub.
Pada kode diatas, kita meregister Jersey untuk menghandle semua request yang ada pada context path http://blablabla:port/AppName/rest/*. Dan saat meregister ServletContainer milik Jersey, kita perlu menambahkan parameter com.sun.jersey.config.property.packages dimana diisi dengan package tempat kelas-kelas RESTful.

Membuat Kelas RESTful

Untuk membuat sebuah kelas di NetBeans, kita dapat menggunakan menu File -> New File. Lalu pilih Java -> Java Class dan klik Next. Masukkan nama kelasnya, misalnya HelloRest, dan pastikan package nya sama dengan lokasi package pada parameter ServletContainer Jersey yang telah kita tentukan.
New Java Class NetBeans
New Java Class NetBeans
Setelah kelas HelloRest dibuat, ubah menjadi seperti pada kode dibawah ini :

/*


* Copyright (c) 2011, StripBandunk and/or its affiliates. All rights reserved.


*


* http://stripbandunk.com/


*


* STRIPBANDUNK PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.


*/


package khannedy.belajar.hellorest;





import javax.ws.rs.GET;


import javax.ws.rs.Path;


import javax.ws.rs.Produces;


import javax.ws.rs.core.MediaType;





/**


*


* @author Eko Kurniawan Khannedy


*/


@Path("/hello")


public class HelloRest {





    @GET


    @Produces({MediaType.TEXT_PLAIN})


    public String hello() {


        return "Hello World";


    }


}




@Path merupakan penanda bahwa kelas tersebut adalah kelas REST, dan valus dalah @Path harus diisikan url untuk mengakses kelas REST tersebut. Pada metode hello() ditambahkan @GET yang artinya saat kita mengakses url REST tersebut menggunakan web metode GET maka metode tersebut akan diakses.
@Produces merupakan penanda hasil return dari REST tersebut, MediaType.TEXT_PLAIN berarti hasil return dari REST tersebut adalah berupa plain text, Anda dapat mengubahnya menjadi XML ataupun JSON.

Menjalankan Menggunakan Jetty

Kami menyarankan untuk testing menggunakan Jetty karena ringan. Untuk production terserah menggunakan apa aja, bisa Tomcat, Glassfish ato yang lainnya.
Hal pertama yang perlu kita lakukan adalah meregister Jetty plugin ke file konfigurasi Maven pom.xml. Tambahkan kode sebagai berikut.

    <build>


        <plugins>


            <plugin>


                <groupId>org.mortbay.jetty</groupId>


                <artifactId>maven-jetty-plugin</artifactId>


                <version>6.1.26</version>


            </plugin>


            ....


        </plugins>


    </build>

view raw pom.xml This Gist brought to you by GitHub.
Setelah itu, kita dapat menambahkan custom menu di NetBeans untuk menjalankan Jetty. Caranya klik kanan projectnya lalu pilih properties. Di bagian Action, Anda dapat menambahkan custom Action.
NetBeans Project Properties
NetBeans Project Properties
Klik tombol Add Action. Lalu masukkan nama Action, misal Run Jetty. Setelah itu klik tombol OK.
Add Custom Action NetBeans
Add Custom Action NetBeans
Setelah action Run Jetty terbuat, tambahkan jetty:run di bagian Execute Goals. Setelah itu klik tombol OK.
Add New Custom Maven Action NetBeans
Add New Custom Maven Action NetBeans
Sekarang Anda dapat menjalankan Jetty dengan cara klik kanan projectnya lalu pilih Custom -> Run Jetty. Tunggu sampai Jetty berjalan. Sekarang Anda dapat mengakses REST Hello World tersebut lewat menu :

Related Posts:

0 Response to "Membuat RESTful Web Service Menggunakan Java dan NetBeans IDE"

Posting Komentar