Sharing kali ini kita mengupas mengenai web service. Hari ini, pada saat postingan ini di tulis, kebetulan admin mendapatkan projek pengembangan script php untuk webservice dengan konsep SOAP.
Namun pada perjalanan pengkodingan script php admin mengalami permasalahan error pada pemanggilan fungsi soap pada web service. Oia sebelumnya bagi yang baru belajar tentang web service, web service terdapat 2 konsep pengamilan dan pengiriman data yaitu: REST dan SOAP.
REST adalah konsem eksekusi data baik pengiriman dan pengambilan data menggunakan metode get dan juga curl.
Sedangkan SOAP adalah eksekusi data baik pengiriman maupun pengambilan data menggunakan konsep object arsitektur.
ERROR NUSOAP
Oke lanjut lagi, error yang saya alami adalah:
- Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; nusoap_base has a deprecated constructor in D:\xampp\htdocs\UKM\SOAP\config\lib\nusoap.php on line 85
- Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; nusoap_fault has a deprecated constructor in D:\xampp\htdocs\UKM\SOAP\config\lib\nusoap.php on line 1007
- Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; nusoap_xmlschema has a deprecated constructor in D:\xampp\htdocs\UKM\SOAP\config\lib\nusoap.php on line 1095
- Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; soapval has a deprecated constructor in D:\xampp\htdocs\UKM\SOAP\config\lib\nusoap.php on line 2067
- Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; soap_transport_http has a deprecated constructor in D:\xampp\htdocs\UKM\SOAP\config\lib\nusoap.php on line 2169
- Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; nusoap_server has a deprecated constructor in D:\xampp\htdocs\UKM\SOAP\config\lib\nusoap.php on line 3474
- Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; wsdl has a deprecated constructor in D:\xampp\htdocs\UKM\SOAP\config\lib\nusoap.php on line 4597
- Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; nusoap_parser has a deprecated constructor in D:\xampp\htdocs\UKM\SOAP\config\lib\nusoap.php on line 6532
- Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; nusoap_client has a deprecated constructor in D:\xampp\htdocs\UKM\SOAP\config\lib\nusoap.php on line 7183
Beberapa baris error diatas merupakan bagian dari notifikasi yang ada pada fungsi nusoap pada file nusoap.php.
Error ini terjadi pada saat proses pengiriman data atau bisa kita katakan pada saat insert atau create data dari client menuju server.
PERMASALAHAN
Setelah beberapa lama mencari tutorial dan contoh kasus yang sama alhamdulillah admin menemukan permasalahan pada error ini.
Ternyata yang menyebabkan error ini adalah versi php pada xampp lebih tinggi dari pada versi script php nusoap yang ada. Untuk mengatasi ini admin menambahkan beberapa script yang ada pada serve nusoap ini. Dan letak errornya adalah pada server pada aplikasi admin.
SOLULSI
Script ini diataranya adalah,
Jika pada script sebelumnya pada server webservice menggunakan script ini:
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : ”;
Dan admin menggatninya dengan script ini:
$GLOBALS[‘HTTP_RAW_POST_DATA’] = file_get_contents (‘php://input’);
$HTTP_RAW_POST_DATA = $GLOBALS[‘HTTP_RAW_POST_DATA’];
Dan akhirnya script aplikasi webservice pun dapat beralan dengan baik.
Bagi yang mengalami masalah yang sama pada webservice dan ingin ada yang ditanyakan silahkan beri komentar atau silahkan konsultasi kepada admin.