MEMBANGUN WEB SERVICE E-COMMERCE TOKO SEPATU DENGAN JAVA EE 6.0 MENGUNAKAN API JAX-WS 2.0 Heri Santoso Jurusan Teknik Informatika, Fakultas Teknik Industri, Universitas Gunadarma Jalan Margonda Raya No.100 Pondok Cina, Depok 16424, Indonesia Email : [email protected] ABSTRAK Web Service adalah suatu sistem perangkat lunak yang dirancang untuk mendukung interoperabilitas dan interaksi antar sistem pada suatu jaringan. Web service digunakan sebagai suatu fasilitas yang disediakan oleh suatu website untuk menyediakan layanan (dalam bentuk informasi) kepada sistem lain, sehingga sistem lain dapat berinteraksi dengan sistem tersebut melalui layanan-layanan (service) yang disediakan oleh suatu sistem yang menyediakan web service. Web service menyimpan data informasi dalam format XML, sehingga data ini dapat diakses oleh sistem lain walaupun berbeda platform, sistem operasi, maupun bahasa compiler. Salah satu implementasi teknologi web service yang berhubungan dengan industri ialah bisnis e-commerce, yaitu proses bisnis jual beli yang menggunakan dunia maya melalui website (cara aksesnya melalui internet) e-commerce dapat memudahkan konsumen dalam melakukan transaksi pembelian dan konsumen dari luar kota dapat terlayani lebih baik. Selain itu, masalah pembayaran dapat ditangani dengan disediakan transaksi via online seperti pembayaran dengan menggunakan melalui rekening bank ataupun Cash On Delivery. Kata Kunci : WebServices, e-Commerce , Toko Sepatu, Java EE 6.0, API JAX-WS 2.0 1. Pendahuluan 2. Tinjauan Pustaka Dalam era globalisasi, para pelaku 2.1 Web Service bisnis secara intensif melakukan usaha- World Wide Web usaha untuk memasuki pasar global. (W3C) Upaya-upaya yang dilakukan antara lain sebagai "system perangkat lunak yang memanfaatkan fasilitas produksi secara dirancang global manufaktur, interoperabiliti interaksi mesin yang satu melakukan transaksi bisnis secara global, dengan mesin yang lain melalui jaringan." tanpa terikat waktu dan tempat serta Sebuah web service mengekspose service membuat aliansi dengan patner bisnis. remote Usaha-usaha tersebut tidak akan berhasil dieksekusi ke klien aplikasi. Web service tanpa informasi. dirancang untuk platform independen, Karena itulah dikembangkan teknologi- namun independensi platform ini tidak teknologi baru yang diharapkan mampu tanpa memenuhi kebutuhan-kebutuhan tersebut. independensi dari platform web service Salah satunya adalah ada pengeluaran tambahan, baik dalam proses dukungan teknologi adalah teknologi web services. mendefinisikan Consortium web untuk atau mendukung prosedur kekurangan. service yang dapat Kekurangan untuk pemakaian jaringan ataupun penggunaan Salah satu implementasi teknologi CPU. web service yang berhubungan dengan industri ialah bisnis e-commerce, yaitu proses bisnis jual beli yang menggunakan Beberapa fitur utama web service adalah: Platform Independen – Web dunia maya melalui website (cara aksesnya Service tidak bergantung pada melalui CPU, sistem operasi, atau bahasa internet) e-commerce dapat memudahkan konsumen dalam melakukan transaksi pembelian dan konsumen dari pemrograman. Dirancang untuk memanfaatkan luar kota dapat terlayani lebih baik. Selain teknologi yang telah ada - Web itu, masalah pembayaran dapat ditangani service menggunakan dengan disediakan transaksi via online ekstensif teknologi seperti pembayaran dengan menggunakan HTTP. melalui rekening bank ataupun Cash On Delivery. Interoperabel secara XML dengan dan bahasa pemrograman yang berlainan – Web service menggunakan model klien-server. Adalah memungkinkan untuk memiliki 2.3 HTTP sebuah klien yang ditulis dalam HTTP singkatan dari “HyperText satu bahasa pemrograman untuk Transfer Protocol“. Merupakan sebuah berkomunikasi dengan server yang protocol jaringan dengan fitur-fitur Web- ditulis dalam bahasa pemrograman specific yang berjalan pada bagian teratas yang berbeda. dari dua lapisan protokol lain, TCP dan IP. TCP adalah sebuah protokol yang bertanggung jawab memastikan file telah 2.2 E-Commerce Secara umum ecommerce adalah dikirim dari akhir network telah lengkap sistem perdagangan yang menggunakan dikirmkan, berhasil pada tujuannya. IP mekanisme elektronik yang ada di jaringan merupakan internet. mengarahkan (routing) file dari satu host E-commerce atau bisa sebuah protokol yang disebut ke host lain pada jalannya untuk tujuan. Perdagangan elektronik atau e-dagang HTTP mengguanakan dua protokol ini adalah penyebaran, pembelian, penjualan, untuk memastikan bahwa permintaan dan pemasaran barang dan jasa melalui sistem respon telah lengkap dikirimkan diantara elektronik seperti internet atau televisi, masing-masing akhir komunikasi. www, atau jaringan komputer lainnya. E- HTTP commerce dapat melibatkan transfer dana Request/Response: Sebuah HTTP client elektronik, pertukaran data elektronik, membuka koneksi dan mengirim sebuah sistem manajemen inventori otomatis, dan pesan permintaan pada HTTP server; sistem pengumpulan data otomatis. server “E-Commerce dapat didefinisikan sebagai respon, biasanya berisikan resource yang segala bentuk transaksi perdagangan atau diminta. Setelah mengirimkan respon, perniagaan barang atau jasa (trade of server menutup koneksi (membuat HTTP goods and services) dengan menggunakan menjadi protokol tanpa status, contoh, media elektronik. Di dalam E-Commerce tidak itu koneksi diantara transaksi). sendiri terdapat perdagangan internet seperti dalam bussines via menggunakan kemudian memelihara urutan mengirimkan beberapa pesan informasi to Format dari pesan permintaan dan respon consumer (B2C) dan bussines to bussines adalah sama, dan berorientasikan bahasa (B2B) dan perdagangan dengan pertukaran inggris. Kedua jenis pesan mengandung : data terstruktur secara elektronik.” • Sebuah garis inisial • Nol atau lebih garis header • Sebuah garis kosong(i.e sebuah berhubungan dengan browser dalam CRLF oleh dirinya sendiri), dan rangka menciptakan content yang dinamis. pesan body optional (e.g. sebuah Ada dua teknologi pada layer ini : servlet file, atau data query, atau keluaran dan JavaServerPage. query). 2.5 JDBC JDBC 2.4 J2EE (Java Database Connectivity) Platform Java 2 Enterprise Edition (J2EE) merupakan suatu spesifikasi standar dari adalah suatu platform yang diperkenalkan JavaSoft API (Application Programming untuk development perusahaan aplikasi Interface) dalam Model mengeksekusi perintah SQL (Structured aplikasi yang digunakan pada platform ini Query Language). JDBC API terdiri dari adalah model aplikasi distibuted multi-tier. satu set interface dan kelas yang ditulis Aspek yang diberikan dari model ini hanya dalam bahasa pemrograman Java. Dengan berarti kebanyakan rancangan aplikasi dan adanya pengembangan ini program Java untuk berinteraksi dengan diharapkan dapat mempunyai component berbagai database yang tunduk dengan yang berbeda yang di dapat dijalankan aturan SQL. Hampir semua Relational pada mesin yang berbeda pula. Multi-tier Database Management System (DBMS) memisahkan mendukung suatu component-base. dalam bagian platform aplikasi yang yang teknologi memungkinkan ini, SQL, dan Java memungkinkan Java mampu dirancang dengan berbagai bagian separasi dijalankan pada kebanyakan platform, dengan berbagai komponen utama aplikasi sehingga JDBC merupakan suatu pintu tersebut. Suatu contoh aplikasi multi-tier untuk bisa menjalankan aplikasi yang adalah suatu aplikasi web : layer presentasi mengeksekusi database meskipun terdiri (client browser), layer bussines logic dari berbagai platform dan berinteraksi (program yang berada pada web server), dengan DBMS yang berbeda. JDBC ini dan layer penyimpanan (database yang mirip dengan ODBC (Open Database akan menangani data aplikasi tersebut) Connectivity), tetapi dirancang khusus terpisah untuk program Java, sedangkan ODBC dengan jelas, tetapi secara keseluruhan bertujuan untuk menciptakan bersifat sebuah aplikasi bagi user. pemrograman. JDBC ini dibangun pertama Salah satu strata dalam platform J2EE kali oleh JavaSoft, yang merupakan bagian ketika sebelumnya berupa web-tier. Strata dari Sun Microsystem. ini di uraikan sebagai layer yang saling independen terhadap bahasa JDBC API ini konsisten dengan gaya inti Fase interface Java dan kelas, seperti java.lang mengunakan komputer pada komputer dan java.awt. menjelaskan Tabel antarmuka, coba dilakukan dengan berikut ini dengan spesifikasi processor AMD Athon kelas, dan II X2 250, RAM 2 GB, hardisk 500 GB pengecualian (kelas dilempar pengecualian) membentuk yang uji sebagai dan VGA ATI Radeon 3200. API JDBC. Pada tabel, interface milik paket 4. Analisis dan Perancangan javax.sql adalah ekstensi untuk antarmuka Tahap rancangan JDBC standar dan yang terkandung dalam menentukan rencana kerja aplikasi sesuai Java 2 SDK, Enterprise Edition. dengan tujuan konsep, pembuatan yaitu aplikasi. Sebelum masuk ke pembahasan lebih lanjut ada beberapa hal yang harus 3. Metode Penelitian Metode Penelitian yang digunakan dalam diketahui mengenai aplikasi yang sedang penulisan ilmiah ini adalah menggunakan dirancang yaitu : pendekatan a. Aplikasi bersifat web browser, artinya metode SDLC (Software Development Life Cyle). aplikasi ini dijalakan oleh web browser. Fase identifikasi pada fase ini adalah Hal mengidentifikasi masalah yang ada yaitu implementasi aplikasi, yaitu pada browser. pemanfaatan web service dalam bidang e- b. commerce. mengunakan Fase pengumpulan data, pada fase ini mengunakan protocol HTTP. adalah rancangan dan cara kerja website Untuk lebih jelas mengenai cara kerja ini, aplikasi akan dijelaskan sebagai berikut : memecahkan masalah dalam ini Aplikasi terkait ini dengan digunakan koneksi internet platform dengan dengan pembuatan aplikasi website, mempelajari dan mengumpulkan sumber-sumber pustaka dari buku buku yang berhubungan dengan web service. Fase perancangan, pada fase ini adalah dengan memulai membuat rancangan basis data dan membuat tampilan antar muka. Dimana source mengunakan code dibuat Netbeans dengan dengan mengunakan bahasa program Java EE 6.0. Gambar 4.1 Gambar Cara Kerja Webservices a. Komputer client akan membuat mempertimbangkan dan menganalisis turunan object kepada XML web kebutuhan perangkat keras (Hardware) services yang ada di proxy. dan perangkat lunak (Software) yang akan b. Komputer client akan memanggil digunakan agar program tersebut dapat method yang ada di class proxy di java. berjalan seperti yang diharapkan. Proses c. Komputer client akan menyambungkan pembuatan program aplikasi ini keras dan argument disetiap web services melalui membutuhkan SOAP message dan mengirim message perangkat lunak sebagai media dan alat menggunakan yang XML web service method. perangkat digunakan untuk pembuatan program, dimulai dari rancangan hingga d. SOAP message akan dikembalikan kembali dengan XML dan akan membuat turunan class yang punya implementasi dengan XML program jadi dan pada saat program diimplementasikan ke dalam lingkungan sebenarnya. web services dan menyambungkan dari 4.1.1 Kebutuhan Perangkat Keras XML web services method melakukan Perangkat keras yang dibutuhkan parsing mengembalikan sesuai XML untuk argument. pembuatan, penyimpanan, hingga program e. XML web services akan mengeksekusi code dan kembalian mengembalikan sesuai dengan web services aplikasi mulai dari dipakai pada kondisi sebenarnya ada nilai beberapa tahap. Pertama adalah sebuah nilai komputer parameter yang dikirim. f. XML program yang perancangan, akan pengujian digunakan penulisan program, untuk dan program. Berikutnya adalah mengembalikan kembali ke computer database server yang berfungsi sebagai client dengan cara yang sama dengan tempat penyimpanan database yang berisi mengiriman nilai dan parameter yang data titik lokasi dan informasi lain yang sebelumnya. akan digunakan untuk program. Selain itu g. Komputer Client akan menerima nilai kebalian dari parameter yang dikirim. program ini membutuhkan perangkat keras berupa komputer yang bersistem operasi dan support port HTTP. 4.1 Analisis Kebutuhan Dalam merancang program aplikasi web services dibidang e-commerce ini pada toko sepatu online perlu Tabel 4.1 Kebutuhan Perangkat Keras Tabel 4.2 Kebutuhan Perangkat Lunak 4.1.2 Kebutuhan Perangkat Lunak Selain perangkat membutuhkan pembuatan perangkat program keras juga lunak untuk dan dalam 4.2 Rancangan Aplikasi Tahap rancangan aplikasi berisi rancangan program webservice e- mengimplementasikannya. Selain sistem commerce ini melalui tiga tahap yaitu operasi yang menjadi software dasar dari penyusunan struktur navigasi, Unified software – software lain, perancangan Modeling Language (UML) program dan program untuk para pengembang sistem perancangan antarmuka. operasi android membutuhkan software lainnya. Software tersebut di antaranya adalah Java Development Kit (JDK), Netbeans Java EE, Glassfish server, MySQL Workbench, JAX-WS Browser mozilla dan Language (MySQL) database server. (API), Structure Query untuk mengolah Gambar 4.2 Gambar Proses Perancangan Aplikasi Berikut adalah diagram activity 4.2.1 Unified Modeling Language yang menggambarkan aktifitas sistem saat (UML) Rancangan sistem program aplikasi dijalankan. ini dimodelkan ke dalam 3 bentuk Unified Modeling Language (UML), yaitu Diagram Use Case, Diagram Activity dan Diagram Sequence. 4.2.1.1 Diagram Use Case Diagram Use Case digunakan untuk menggambarkan interaksi antar pengguna dengan sistem. Sebelum membuat diagram use case, pertama harus menentukan use case apa saja yang diperlukan dalam aplikasi tersebut dengan Gambar 4.4 Diagram Activity menentukan function definition terlebih dahulu. Dengan demikian use case yang dibutuhkan otomatis telah ditentukan oleh 4.2.1.3 Diagram Sequence Diagram function definition tersebut. untuk Sequence menggambarkan digunakan sistem secara bertahap. Diagram sequence menunjukkan interaksi bagaimana proses berinteraksi dengan satu sama lain. Dalam kasus ini diagram sequence akan menggambarkan bagaimana Gambar 4.3 Diagram Use Case 4.2.1.2 Diagram Activity Diagram Activity menggambarkan berbagai alur aktifitas dalam sistem yang akan dirancang, bagaimana sistem berawal, decision yang mungkin terjadi, dan bagaimana sistem berakhir. transaksi aplikasi dan akan melakukan menjelaskan pertukaran data pada web services. tentang Gambar 4.5 Diagram Sequence ecommerce Berikut adalah diagram sequence dari aplikasi web services. Gambar 4.6 Diagram Sequence Aplikasi Webservices Tujuan penggunaan database dalam program ini adalah untuk memper peng-update-an membuat database, 4.3.2 Diagram Konteks Diagram 4.3 Perancangan Basis Data (Database) mudah Gambar 4.7 Diagram ER data. konteks merupakan diagram yang memperlihatkan aplikasi sebagai bentuk satu proses yang terjadi atau pemetaan yang terjadi. Untuk diawali membuat database terlebih dahulu. 4.3.1 Diagram ER (Entity Relasionship) ERD adalah model konseptual yang mendeskripsikan hubungan antar penyimpanan data. Diagram E-R dipergunakan untuk memodelkan struktur data dan hubungan antar data. Gambar 4.8 Diagram Konteks 4.3.3 DFD (Data Flow Diagram) Data yang menggambarkan aliran data dari aplikasi dibuat dengan DFD yang menggambarkan interaksi masing-masing proses yang berjalan dengan tempat penyimpanan data (data store) dalam hal ini adalah basisdata. Gambar 4.11 DFD Level 2 Proses Pemesanan 4.3.4 Skema Relasi Skema relasi dari web services ecommerce toko sepatu ini dapat dilihat Gambar 4.9 DFD e-Commence pada gambar dibawah ini : Pada DFD level 2 ini menunjukkan proses login yang telah terenkripsi oleh pelanggan dengan memasukkan nama pelanggan dan nama password. Gambar 4.12 Skema Relasi pada Webservices e-commerce Gambar 4.10 DFD Level 2 Login Pelangan 5. Hasil dan Kesimpulan Pada DFD level 2 ini menunjukkan proses pemesanan oleh pelanggan setelah login. Gambar 5.1 Tampilan WebService transaksi online yang terjamin dari sisi kenyamanan dan keamanan dari suatu website belanja online. Pada web service yang diterapkan pada bidang e-commerce toko sepatu online ini menyajikan fungsi-fungsi yang Gambar 5.2 Tampilan Toko Sepatu Webservice menginformasikan mengenai beberapa produk sepatu dan bisnis transaksi yang mengunakan service yang diberikan dari suatu aplikasi lain dari product sepatu dan authentifikasi sistem pada saat aplikasi ini dijalankan. Pada penerapannya dengan web service dibidang e-commerce toko sepatu Gambar 5.3 Tampilan Login Admin online kemudahan ini ditemukan karena semua banyak pertukaran informasi pada penyajian data suatu service disajikan dengan mengunakan XML jadi adanya pemisahan logika aplikasi bisnis dan masalah yang terkait dengan layanan dan prasarana yang disediakan oleh vendor aplikasi yang memberikan suatu service. Gambar 5.4 Tampilan Dashboard 6. Daftar Pustaka Dengan menerapkan arsitektur web service pada bidang e-commerce akan adanya suatu web yang sematik dan Avestro, Joyce. Pemrograman JeNI Java, Pengenalan JARDIKNAS, Jakarta, 2007. fleksibel yang berintegrasi pada suatu jaringan menjadikan suatu aplikasi tidak tergantung atau mengikuti platform yang sudah ada pada awal pembuatan dan sisi toko sepatu online ini dapat memudahkan para pengguna dapat melakukan suatu Dwi, Didik Prasetyo. 150 Rahasia Pemrograman Java, PT Elex Media Komputindo, Jakarta, 2007. Kadir, Abdul. jQuery Black Box, PT Mediakom, Yogyakarta, 2011. Nugroho, Bunafit. Panduan http://en.wikipedia.org/wiki/Simple_object_Ac cess_Protocol Lengkap http://AgniSoftware.com/Introduction-to- Menguasai Perintah SQL, PT Mediakita, soap Jakarta, 2008. http://www.xmlrpc.org http://openejb.apache.org/examples- http://meta.wacana.net/archives/8-XMLRPC- trunk/simple-webservice/ Sebuah-Perkenalan.html http://docs.oracle.com/javaee/5/api/javax/j ws/WebService.html http://netbeans.org/kb/docs/javaee/ecomm erce/intro.html http://netbeans.dzone.com/news/5techniques-create-web-service, http://netbeans.org/kb/docs/websvc/jaxws.html http://gedex.web.id/archives/2008/04/12/a pa-itu-webservices-bagian-i/ http://www.roseindia.net/webservices/ http://www.tutorialspoint.com/webservices /index.htm http://w3schools.com/webservices/default. asp, http://www.w3schools.com/webservices/w s_example.asp http://w3schools.com/soap/default.asp