Skip to main content

webservice

bikin webservice dengan NuSOAP (Hello World)



Sebelumnya pergilah ke >>
http://sourceforge.net/projects/nusoap/?source=directory
(download NuSOAP )

disini saya asumsikan anda sudah memiliki apache dan mysql.. jadi tidak perlu meminta anda download xampp ato WAMP! satu hal yang perlu digarisbawahi.. Jangan menyerah baca tutorial ini karena saya menjelaskan dengan adanya error bukan langsung jadi..

letakkan file yang anda dapat di folder soap
masuk ke folder soap lewat browser dan saya asumsikan anda mendapatkan 2 folder didalamnya yaitu : lib dan samples. 
Masuki samples dan coba salah satu link yang tersedia.

Perlu diketahui bahwa untuk mencoba sample anda harus ada koneksi ke luar (internet) karena link yang dituju bukan local tetapi internet luar. Lalu bagaimana cara agar kita mencoba di lokal bukan di luar!!

Mari buat 2 script uji coba yang bernama hello world. Tetapi untuk menyingkat, saya akan buat namanya cukup 001.php dan 002.php!!
Saya mengambil script dari link
http://www.scottnichol.com/nusoapintro.htm

001.php
<?php
// Pull in the NuSOAP code
require_once('lib/nusoap.php');
// Create the server instance
$server = new soap_server;
// Register the method to expose
$server->register('hello');
// Define the method as a PHP function
function hello($name) {
    return 'Hello, ' . $name;
}
// Use the request to (try to) invoke the service
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
$server->service($HTTP_RAW_POST_DATA);

?>

002.php
<?php
// Pull in the NuSOAP code
require_once('lib/nusoap.php');
// Create the client instance
$client = new soapclient('http://localhost/kerjaan6/soap/001.php');
// Call the SOAP method
$result = $client->call('hello', array('name' => 'Programer PHP'));
// Display the result
print_r($result);
?>

http://localhost/kerjaan6/soap/001.php ganti dengan url dimana 001.php berada

lalu jalankan 002.php dan lihat apa yang terjadi

Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://localhost/kerjaan6/soap/001.php' : Start tag expected, '<' not found in C:\php\kerjaan6\soap\002.php:5 Stack trace: #0 C:\php\kerjaan6\soap\002.php(5): SoapClient->SoapClient('http://localhos...') #1 {main} thrown in C:\php\kerjaan6\soap\002.php on line 5

kok error.. sekarang coba yang 001.php
This service does not provide a Web description

ternyata program error!? tapi tunggu sebelum anda tutup!! ada yang perlu anda lakukan dan ketahui.. XAMPP anda (apache dan php) bukannya tidak support!! tetapi ada yang bentrok!!

Pergilah ke
C:\xampp\php 
dan buka
php.ini
cari kata2
  • php_soap.dll
  • php_curl.dll

dan anda menemukan
extension=php_soap.dll
ubah jadi
;extension=php_soap.dll
demikian juga dengan php_curl

saran dari
http://kabulkurniawan.com/2011/05/02/implementasi-web-service-sederhana-dengan-nusoap/

restart server apache kamu dan coba lagi 002.php !! tetapi sayang 001.php tetap salah!! well sebenarnya ngak error tetapi 001 bukan ditujukan untuk mengeluarkan proses seperti harusnya bila di klik 002.php

sampai disini saya selesaikan basicnya dahulu.. ubah 001.php dengan kata2 yang lebih banyak dan kompleks. Jangan lupa masuk ke alamat yang diberikan

Comments

Popular posts from this blog

FPDF dengan CodeIgniter

Cetak Surat Keputusan Controller: <?php //File in controller named surat_keputusan.php defined('BASEPATH') OR exit('No direct script access allowed'); class Cetak_surat_keputusan extends CI_Controller { public function __construct()     {         parent::__construct();         $this->load->helper('url');         $this->load->database();                $this->db->select();         $this->db->from('surat.config_sk');                $query = $this->db->get();                 return $query->result();             } public function index() {      ...

Preview PDF di Modal Bootstrap dengan Ajax

//preview pdf in line function preview_surat_keputusan(no) { $('#form')[0].reset(); $('.form-group').removeClass('has-error'); $('.help-block').empty(); $.ajax({ url : "<?php echo site_url('surat_keputusan/ajax_preview/')?>/" + no, type: "GET", dataType: "JSON",     success: function(data)     {     //paramater yang akan ditampilkan di modal         $('[name="no"]').val(data.no);         $('[name="ns"]').val(data.ns);         $('[name="thts"]').val(data.thts);         $('[name="pdf"]').val("http://localhost/dosdm/document/sm/pdf/"+data.thts+"-SK-"+data.ns+".pdf");         var link_base =  "http://localhost/dosdm/document/sm/pdf/"+data.thts+"-SK-"+data.ns+".pdf" ;             $('#pdf_view').attr('src', link_base);      ...

Hack File .xlsb

For first you must create a backup copy of your Workbook!!! Then you have to rename the XLSB file with ZIP extension. Test.XLSB => Test.ZIP             Opening your ZIP file using a compression software (e.g. WinRar) I can see the content of the file, structured in folders Inside the folder xl you can find a binary file named vbaProject.bin. Extract it on your desktop and edit it using a text editor. In my case I used Notepad++. Using the Find function of your editor, you must search the text DPB And replace the DPB string with DPx Then save the vbaProject.bin and replace this file inside the .ZIP File, renaming then .ZIP file in XLSB. Reopening the XLSB file using Excel, you will get an error message: you have to answer Yes to this error message. Then  Save , Close and Reopen your XLSB file. Now, if you go to VBA Editor (ALT + F11), you ca...