Build 3-TIER Application With Microsoft Visual Foxpro (2 of 2)

Posting kali ini adalah lanjutan posting saya sebelumnya mengenai 3-Tier Application menggunakan Microsoft Visual Foxpro. Sebagian besar penjelasan dan contoh program diadopsi dari tutorial MVFP 9.

Baca:
Build 3-TIER Application With Microsoft Visual Foxpro (1 of 2)

Seperti yang telah saya sebutkan sebelumnya, Aplikasi 3-Tier menggunakan MVFP ini akan memanfaatkan Web Service yang digenerate dari MVFP dan memanfaatkan IIS sebagai hostingnya.

Langkah pertama kali yang akan kita lakukan adalah mempersiapkan XML Web Service.

XML Web service adalah blok bangunan dasar untuk komputasi terdistribusi di Internet. XML layanan Web adalah obyek atau kelas yang ditempatkan di Internet dan yang dapat diakses secara pemrograman melalui pemanggilan metode khas. XML Web service menyediakan fungsionalitas dan akses ke data antara beragam platform. Aspek yang paling penting dari layanan Web XML adalah penggunaan HTTP dan SOAP, fungsionalitas tersedia melalui firewall. Kita dapat memanggil layanan Web XML terlepas dari platform yang kita jalankan karena HTTP dan SOAP beroperasi secara independen dari platform komputer kita.
Kita dapat membuat layanan Web XML atau mengaksesnya asalkan layanan tersebut telah di publish untuk dapat diakses. Kita dapat menggunakan MVFP untuk membuat XML Web service, atau kita dapat menggunakan MVFP untuk mengakses layanan Web XML yang dibuat dalam bahasa pemrograman lain.

Berikut ini adalah hal yang perlu kita siapkan :
1. Web Server (IIS)
2. COM Server
3. Publish XML Web Service
4. Pengujian XML Web Service
5. Penggunaan XML Web Service

1. Web Server (IIS)

SOAP secara otomatis terinstal ketika kita menginstal Visual FoxPro. IIS merupakan komponen opsional untuk Windows 2000 dan terinstal secara otomatis pada Windows 2000 Server. IIS melayani layanan Web XML kita dari direktori virtual kita kepada pengguna di Internet. Direktori virtual referensi lokasi pada hard disk di mana kita menempatkan layanan Web XML. Kita menggunakan Visual FoxPro untuk membuat objek COM. Setelah objek COM kita diciptakan, kita dapat menggunakan generator VFP XML Web Service untuk publish di direktori virtual yang kita siapkan.

IIS menyediakan referensi ke lokasi layanan Web XML kita untuk pengguna yang mengakses dari internet. Untuk menerbitkan layanan Web XML, kita harus membuat virtual direktori di IIS yang berisi file WSDL (. Wsdl) yang diperlukan.
File-file ini dibuat oleh Web Service Wizard dari komponen COM kita.

Berikut ini langkah menyiapkan sebuah virtual direktori.

- Siapkan sebuah folder bernama Web Services (atau sesuai keinginan)
- Control Panel, klik dua kali Administratif Tool, pilih IIS.
- Klik kanan Default Web Site.
- Klik New, kemudian klik Virtual Directory untuk membuka Wizard.
- Ikuti petunjuk wizard, dan tentukan Layanan Web folder yang kita buat pada langkah 1 sebagai direktori virtual (Di contoh program virtual direktori bernama : FOXPRO3T)

Gambar 1 Virtual Direktori di IIS

Build 3-TIER Application With Microsoft Visual Foxpro

Langkah diatas adalah menyiapkan referensi direktori virtual Layanan Web folder di mana kita akan menyimpan semua layanan Web XML file yang kita buat.

2. Membuat COM Sever

Karena XML Web Servicenya adalah dynamic link library (.dll) atau file executable (. exe), kita menggunakan COM Server sebagai dasar untuk XML Web Service. Sebuah COM Server di Visual FoxPro adalah sebuah file dengan sebuah ekstensi .dll atau .exe, yang berisi kelas didasarkan pada objek Session. Kelas ditentukan sebagai OLEPUBLIC ketika didefinisikan. Hal ini memperlihatkan fungsi yang dapat digunakan dan digunakan kembali oleh aplikasi lain melalui otomatisasi.

Untuk COM Server contoh, kita akan membuat kelas yang berisi laporan. Kita akan menulis sebuah program yang menciptakan sebuah kelas dengan satu metode/fungsi, kompilasi menjadi sebuah COM Server, dan kemudian mempublikasikannya sebagai layanan Web XML.

Langkah membuat COM Server
- Pada menu File di VFP, klik Baru.
- Dalam kotak dialog Baru, klik Project, dan kemudian klik New file.
- Simpan proyek sebagai myServer.
- Dalam tab All Project Manager, expand Code.
- klik Programs, dan kemudian klik Baru.
- Buatlah code seperti terlihat dibawah ini.

Gambar 2 Project My Server

Build 3-TIER Application With Microsoft Visual Foxpro
Gambar 3 Skrip Kode di Sever

Build 3-TIER Application With Microsoft Visual Foxpro

Code diatas mendefinisikan satu kelas Retrieve, yang memiliki satu metode bernama ShowData

- Pada File menu, klik Save.
- Dalam kotak dialog Save As, simpan dengan nama retrieve.prg.
- Tutup jendela Edit.
- Dalam Project Manager, klik Build.
- Pilih Multi-threaded COM server (dll), dan klik OK.
- Pada dialog Save As Web Services simpan DLL sebagai myServer.dll di dalam virtual direktori.

3. Publish XML Web Service

Dari myServer.dll file yang telah kita buat sebelumnya, sebuah WSDL (.wsdl) file akan dihasilkan ketika kita melakukan publish layanan Web XML.
wsdl file adalah file XML yang mendefinisikan layanan Web XML dan kelas di dalamnya.

Tambahkan komponen yang diperlukan untuk mengubah COM Server ke layanan Web XML, kita harus mengkompilasi COM Server sebagai layanan Web XML. Setelah kita menentukan pengaturan pada Layanan Web Publisher, VFP menciptakan file SOAP yang diperlukan untuk mengubah COM Server ke XML Web service, menerbitkannya dalam direktori virtual, dan mendaftarkan layanan Web XML tersebut di IntelliSense.
Gambar 4a Task Pane Manager

Build 3-TIER Application With Microsoft Visual Foxpro
Gambar 4b Jendela XML Web Service Publisher

Build 3-TIER Application With Microsoft Visual Foxpro

Build 3-TIER Application With Microsoft Visual Foxpro

Build 3-TIER Application With Microsoft Visual Foxpro

Langkah kompilasi dan publish layanan Web XML
- Pada menu Tools, klik Task Pane.
- Pada Jendela Task Manager, klik XML Web Services.
- Dibawah XML Web Service Tools, pilih Publish Your XML Web Service.
- Jika file myServer.dll tidak terdaftar di kolom COM Server, klik tombol elipsis (...), lalu pilih myServer.dll.
- Klik Advanced untuk menampilkan kotak dialog MVFP XML Web Services Publisher.
- Pastikan kotak URI Listener menampilkan direktori virtual
   (Jika tidak, klik tombol elipsis (...), dan pilih direktori virtual kita.)
- Klik tab Methods, dan pastikan bahwa showData dipilih.
- Klik Namespaces, ganti tempuri.org dengan domain kita, dan klik OK.
  (Jika kita tidak memiliki domain sendiri, biarkan tetap tempuri.org)
- Klik OK untuk menutup kotak dialog MVFP XML Web Services Publisher.
- Klik Generate.

Visual FoxPro menghasilkan layanan Web XML file. Setelah itu selesai, kotak dialog XML Web Services Publishing Result muncul, menampilkan daftar file yang dihasilkan, .wsdl file, ISAPI atau ASP listener, dan apakah file tersebut dibuat dengan benar.

Sampai disini, kita telah membuat dan menerbitkan layanan Web XML. Siapa saja yang memiliki akses ke direktori virtual yang kita buat sebelumnya dapat menggunakan HTTP untuk mengakses layanan Web XML telah kita publish.

4. Pengujian XML Web Service

Setelah kita telah mempublikasikan XML baru kita ke layanan Web, kita harus mengujinya untuk memastikan bekerja dengan benar. Visual FoxPro menyediakan mekanisme untuk menguji layanan web XML yang tersedia dalam Layanan Web XML di Task Pane Manager. Mekanisme pengujian menampilkan hasil apapun dari XML Web service, skema XML yang digunakan, kesalahan umpan balik.

Berikut ini langkah menguji layanan Web XML
- Pada menu Tools di Visual FoxPro, klik Task Pane.
- Dalam Task Pane Manager, klik XML Web Services.
- Di bawah Explore XML Web Service, pilih Retrieve dalam Service Name.
- Dalam kotak "The following methods are supported by this XML web service"
- Pilih ShowData
(Kotak ini berisi semua metode yang tersedia pada layanan Web XML)
- Klik Test this XML Web Service.

Gambar 5 Web Service Test Result

Build 3-TIER Application With Microsoft Visual Foxpro

Jika pengujian berhasil, Hasil Test Layanan Web jendela muncul, yang menampilkan hasil dari layanan Web XML, dan kita dapat melihat file .wsdl yang terkait dengan layanan Web XML. Jika ada kesalahan dalam pengujian, jendela menampilkan informasi tentang kesalahan.

5. Memanfaatkan XML Web Service

Dalam prosedur berikut, kita akan membuat file program (.prg) untuk mengakses XML Web Service dan menggunakan Toolbox untuk menambahkan kode yang diperlukan referensi XML Web Service dengan benar.

Berikut ini adalah pengujian XML Web Service
- Pada menu File, klik Baru.
- Dalam kotak dialog New, pilih Project, dan klik New file.
- Simpan projek sebagai myClient.
- Pada tab All Project Manager, expand Code, pilih Program, klik New di menu Tools
- Klik Toolbox.
- Pada Toolbox, klik My XML Web Services.
- Klik dan drag layanan XML Web Services _______ dari Toolbox ke jendela Edit.
(Hal ini menambahkan kode yang tepat untuk XML Web Services yang kita buat)
- Pada jendela Editing, di bawah baris yang berbunyi, "Call your XML Web service here," masukkan kode seperti terlihat di gambar berikut ini :

Gambar 6 ToolBox

Build 3-TIER Application With Microsoft Visual Foxpro
Gambar 7 Projek Klien

Build 3-TIER Application With Microsoft Visual Foxpro
Gambar 8 Kode Skrip Klien

Build 3-TIER Application With Microsoft Visual Foxpro

- Pada menu File, klik Save.
- Dalam kotak dialog Save As, beri nama retrieveclient.prg, dan klik Save.
- Tutup jendela Edit.
- Di Project Manager, pilih file program retrieveclient.prg, dan klik Run.

Sebuah jendela browsing muncul dengan semua daftar barang dalam Database.
Kursor ini dihasilkan dari XML yang disediakan dari XML Web Service menggunakan kelas XMLAdapter.

Gambar 9 Kursor Hasil Retrieve

Build 3-TIER Application With Microsoft Visual Foxpro

Dari penjelasan "Build 3-TIER Application With Microsoft Visual Foxpro"  disertai gambar contoh program diatas saya harap sudah cukup jelas.

Semoga posting artikel "Build 3-TIER Application With Microsoft Visual Foxpro" ini dapat bermanfaat.


Salam,

Popular posts from this blog

K2 Error Value Cannot Be Null. Parameter Name: s In SmartView and SmartObject

Cara inject USB 3.0 Driver pada instalasi Windows - How to Inject USB 3.0 Driver in Windows 7

Pentaho Spoon Error : "Could Not Create The Java Virtual Machine"