Firma Firmansyah Adi 15-2013-078 B Resume Web Service Web service adalah sebuah sofware aplikasi yang tidak terpengaruh oleh platform, ia akan menyediakan method-method yang dapat diakses oleh network. Ia juga akan menggunakan XML untuk pertukaran data, khususnya pada dua entities bisnis yang berbeda. Contoh program Web Service : Langkah 1: New Project Setelah itu klik next dan beri nama project tersebut (WebServisFirma) Firma Firmansyah Adi 15-2013-078 B Kemudian pilih Server Glassfish Server 4.1 Langkah 2 : Buat New Package dengan nama cls yang berisi class motor , listing code class motor: /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package cls; /** * * @author Firma */ public class motor { private String id; private String NoPlat; private String NoBpkb; private String Merk; public motor() { } public motor(String id, String NoPlat, String NoBpkb, String Merk) { this.id = id; this.NoPlat = NoPlat; this.NoBpkb = NoBpkb; Firma Firmansyah Adi 15-2013-078 B this.Merk = Merk; } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getNoPlat() { return NoPlat; } public void setNoPlat(String NoPlat) { this.NoPlat = NoPlat; } public String getNoBpkb() { return NoBpkb; } public void setNoBpkb(String NoBpkb) { this.NoBpkb = NoBpkb; } public String getMerk() { return Merk; } public void setMerk(String Merk) { this.Merk = Merk; } @Override public String toString() { return "motor{" + "id=" + id + ", NoPlat=" + NoPlat + ", NoBpkb=" + NoBpkb + ", Merk=" + Merk + '}'; } } Langkah 3: Buat new package dengan nama connection yang berisi class ConnectionManager untuk menghubungkan dengan database. Listing Firma Firmansyah Adi 15-2013-078 B code class ConnectionManager : /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package Connection; import java.sql.Connection; import java.sql.DriverManager; /** * * @author Firma */ public class ConnectionManager { private Connection con; private String driver = "com.mysql.jdbc.Driver"; private String url = "jdbc:mysql://localhost:3306/interop"; private String username = "root"; private String password = ""; public Connection logOn(){ try{ Class.forName(driver).newInstance(); con = DriverManager.getConnection(url, username, password); } catch(Exception ex){ ex.printStackTrace(); } return con; } public void logOff(){ try{ con.close(); } catch(Exception ex){ ex.printStackTrace(); } } } Langkah 4 : Buatlah new package dengan nama exec ExecuteMotor, listing code class ExecuteMotor : yang berisi class Firma Firmansyah Adi 15-2013-078 B /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package exec; import import import import import import import Connection.ConnectionManager; cls.motor; java.sql.Connection; java.sql.SQLException; java.sql.Statement; java.util.logging.Level; java.util.logging.Logger; /** * * @author A S U S */ public class ExecuteMotor { public int simpan(motor mtr){ int hasil=0; ConnectionManager cm = new ConnectionManager(); Connection con = cm.logOn(); try { Statement stm = con.createStatement(); String query = "insert into motor(id,NoPlat,NoBPKB,Merk) values('" +mtr.getId()+"','" +mtr.getNoPlat()+"','" +mtr.getNoBpkb()+"','" +mtr.getMerk()+"')"; hasil=stm.executeUpdate(query); } catch (SQLException ex) { Logger.getLogger(ExecuteMotor.class.getName()).log(Level.SEVERE, null, ex); } return hasil; } } Langkah 5 : Kemudian buat Web Service pada package yang dibuat tadi dengan cara klik kanan -> new -> Web Service Firma Firmansyah Adi 15-2013-078 B Setelah itu beri nama web service dengan nama WSMotor dan buat package baru untuk menyimpannya dengan nama com Firma Firmansyah Adi 15-2013-078 B Langkah 6 : Clean and Build pada project WebServisFirma setalah itu deploy Dan klik kanan pada webService WSMotor dan klik Test Web Service, maka akan muncul seperti gambar dibawah ini : Copykan url tersebut http://localhost:8080/WebservisFirma/WSMotor? Tester dan ubah Tester menjadi wsdl http://localhost:8080/WebservisFirma/WSMotor?wsdl Firma Firmansyah Adi 15-2013-078 B Langkah 7: Kemudian buatlah web service client pada project lainnya dengan cara klik kanan dan New -> Web Service Client Paste url tadi di WSDL URL dan buat new package dengan nama com Langkah 8: Buatlah Main Class Motor, listing code : /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package webServis; import java.util.Scanner; import mot.Motor; /** * * @author Firma */ public class MainMotor { /** Firma Firmansyah Adi 15-2013-078 B * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here Scanner scan= new Scanner(System.in); System.out.println("Masukan ID :"); String id=scan.nextLine(); System.out.println("Masukan Plat Nomor :"); String NoPlat=scan.nextLine(); System.out.println("Masukan No BPKB : "); String NoBPKB=scan.nextLine(); System.out.println("Masukan Merk :"); String Merk=scan.nextLine(); Motor mtr = new Motor(); mtr.setId(id); mtr.setNoPlat(NoPlat); mtr.setNoBpkb(NoBPKB); mtr.setMerk(Merk); int hasil = simpan(mtr); if (hasil == 1) { System.out.println("Berhasil Menyimpan"); } else{ System.out.println("Tidak Berhasil Menyimpan"); } } private static int simpan(mot.Motor arg0) { mot.WSMotor_Service service = new mot.WSMotor_Service(); mot.WSMotor port = service.getWSMotorPort(); return port.simpan(arg0); } } Langkah 9: Firma Firmansyah Adi 15-2013-078 B Run Main Class Motor