Membangun Web Service Client Untuk PDDIKTI Feeder menggunakan Yii2 Part 1

ByYusuf Ayuba

Membangun Web Service Client Untuk PDDIKTI Feeder menggunakan Yii2 Part 1

SEBAGAIMANA kita ketahui, bahwa aplikasi pelaporan PDDIKTI Feeder telah dilengkapi dengan Web Service yang dapat digunakan untuk membantu dalam penyusunan laporan semester. Web service PDDIKTI feeder tersebut dikembangkan menggunakan SOAP (Simple Object Access Protocol) yaitu sebuah standarisasi dasar dari protokol komunikasi yang berbasis XML yang dapat digunakan untuk saling bertukar informasi terstruktur di antara aplikasi-aplikasi yang ada.
Well langsung saja, berikut tahapannya.

Artikel ini hanya untuk yang sudah paham dengan Yii2

Persiapan

  1. Framework Yii2. Dalam contoh ini saya menggunakan installasi template basic.
  2. Extention NuSoap. Dalam contoh ini, saya menggunakan paket dari Esyst yang beralamat di https://packagist.org/packages/esyst/nusoap. Untuk extension nusoap lainnya, bisa di cek di website https://packagist.org dengan kata kunci yii2 nusoap.
  3. Karena kita akan menggunakan layanan web service dari aplikasi PDDIKTI Feeder, maka pastikan aplikasi tersebut sudah terinstall dengan benar dan sudah melakukan push prefill.

Oh iya sebelum lanjut, hal terpenting yang perlu diketahui adalah alamat wsdl dari webservice feeder yang akan dituju. Jika feedernya berada dalam satu PC dengan aplikasi wsclient ini, maka alamatnya adalah http://localhost:8082/ws/live.php?wsdluntuk akses ke database utama, atau http://localhost:8082/ws/sandbox.php?wsdluntuk akses ke database sandbox.
Sedangkan jika feedernya berada di PC lain yang berada dalam satu jaringan lokal (LAN) ataupun jaringan internet (WAN), maka alamatnya adalah http://alamat_server:port_feeder/ws/live.php?wsdlatau http://alamat_server:port_feeder/ws/sandbox.php?wsdl.
Untuk memastikan alamat wsdl webservice feeder tujuan kita sudah benar, ada baiknya kita test terlebih dahulu melalui web browser.
wsfeeder

Dalam gambar diatas, terdapat kurang lebih 20 method yang di sediakan oleh web service feeder. Oleh karenanya, dalam artikel ini saya hanya akan membahas method GetToken(), GetDictionary(), GetRecord()/GetRecordset(). Sedangkan untuk method-method lainnya kita akan bahas dalam artikel selanjutnya.
Untuk penjelasan masing-masing method, silahkan merujuk ke artikel Mengenal Method-Method Web service Feeder.

Tahap Installasi
Untuk installasi point 1 dan 2 diatas, kita akan menggunakan bantuan composer. Sedangkan untuk installasi point 3 silahkan mengacu pada panduan installasi yang ada di halaman http://forlap.ristekdikti.go.id

Install Yii2 melalui composer dengan perintah:

composer create-project yiisoft/yii2-app-basic wsclient 2.0.8

install-yii-sukses

Hasil Installasi Yii2

 

Install NuSoap extension melalui composer dengan perintah:
composer require esyst/nusoap "0.2.1"

install-nusoap-sukses

Installasi extension nusoap melalui composer

 

Jika langkah installasi diatas sudah selesai semua, berikutnya adalah membuat model Soap.
Nama dan lokasi file app\models\Soapmodel.php

Membuat halaman List Table (Method ListTable())

Tambahkan fungsi actionList() di file app\controllers\SiteController.php

Buat file listtable.php di lokasi app\views\site

Jika script diatas dijalankan maka akan tampil seperti berikut

listtable

Tampilan List Table menggunakan method ListTable()

 

Membuat Halaman Struktur Tabel (Method Dictionary())

Buat fungsi actionStruktur() di file app\controllers\SiteController.php

Berikutnya buat file struktur.php di lokasi app\views\site

Jika script diatas dijalankan, maka tampilannya adalah seperti berikut

struktur

Tampilan struktur tabel agama menggunakan method GetDictionary()

 

Membuat halaman View (Method GetRecordset)

Buat fungsi actionView() di file app\controllers\SiteController.php

Berikutnya buat file view.php di folder app\views\site

Jika script diatas dijalankan, maka tampilannya adala seperti berikut

view

View data menggunakan method GetRecordset()

 

Langkah terakhir adalah mengaktifkan Preety URL fil file app\config\web.php dan membuat file .htaccess di folder web seperti berikut

Berikut listing lengkap dari script diatas:

About the author

Yusuf Ayuba administrator

7 Comments so far

Rizky SulistyoPosted on4:04 pm - May 19, 2016

Wah..keren.. izin belajar

ewokPosted on7:11 pm - Jun 10, 2016

Gan, user dan password request tokennya itu harus menggunakan user dan password admin PT? bisa tidak menggunakan User dan Password admin Prodi?

    Yusuf AyubaPosted on9:11 pm - Jun 10, 2016

    kalau hanya request token, kita bisa saja menggunakan user admin Prodi…akan tetapi untuk request data yang ada di tabel-tabel, kita tidak bisa menggunakan user admin Prodi melainkan harus menggunakan user admin PT..hal ini berlaku semenjak dirilis patch E

FauzanPosted on4:53 pm - Aug 21, 2019

Wah.. dah lama postingannya.
mau tanya, klo call() function yang error sekitar self::WSDL_USER itu kenapa ya?
Maaf, baru belajar juga ini.

FauzanPosted on4:55 pm - Aug 21, 2019

Klo error call function itu kenapa ya?
Sekitar self::WSDL_USER
maaf baru belajar ini

Leave a Reply

%d bloggers like this: