Hello all,

I have a SOAP service written in "C" - using a product called gsoap.

It works fine with C clients.

It also works fine when being called from different studios.

The problem is that it does not work when being called from PHP.

The error message I am getting is:
public 'faultstring' => string 'Method 'param0' not implemented: method name or namespace not recognized' (length=72)

Below is more detail on the problem.

Does anyone have any ideas?



In the header file is defined as:
//gsoap mstr service name: conmstr
//gsoap mstr service style: document
//gsoap mstr service encoding: literal
//gsoap mstr service namespace: http://simba:7100/master?wsdl
//gsoap mstr service location: http://simba:7100/master
//gsoap mstr schema namespace: urn:conmstr

The function being called is defined as:

int mstr__CustomerBasicDataGetByID(
xsd__int CustomerID,
xsd__string hostname,
xsd__int in_os_proc_id,
xsd__int in_user_id,
xsd__string filename,
xsd__int line_number,
struct CUSTOMER__CUSTOMERItems *DBListing);

typedef struct CUSTOMER__struct_DBCUSTOMER {
xsd__int CustomerID;
xsd__int LangPref;
xsd__string Salutation ;
xsd__string LastName ;
xsd__string FirstName ;
xsd__string Middle ;
xsd__string DateOfBirth;
xsd__string Address ;
xsd__string AptNo ;
xsd__string City ;
xsd__string State ;
xsd__string ZipCode ;
xsd__int WorkPhone;
xsd__int HomePhone;
xsd__int CameraID;
xsd__int MobilePhoneNo;
xsd__int FAXNo;
xsd__string DOB;
xsd__string EMailPersonal ;
xsd__int EMailType;
xsd__int NotificationPreference;
xsd__string MaritalStatus;
xsd__int Status;
xsd__string SysMemo ;
xsd__int MemoCustomerID;
xsd__int CreateID;
xsd__string CreateTS;
xsd__int UpdateID;
xsd__string UpdateTS;
xsd__int TENANTID;
xsd__string ArchiveTS;

typedef struct CUSTOMER__CUSTOMERItems {
struct CUSTOMER__struct_DBCUSTOMER *__ptr;
int __size;
int __offset;


Below is the PHP code:
$test = array(
'location' => 'http://simba:7100/master?wsdl',
'uri' => 'http://simba:7100/master',
// 'uri' => 'urn:conmstr',
'style' => SOAP_DOCUMENT,
'use' => SOAP_LITERAL,
'trace' => 1,
'exceptions' => 0

$secondtest = new SoapClient(NULL, $test);

$ret = $secondtest -> __soapCall( "CustomerBasicDataGetByID",
array ($CustomerID, $hostname, $in_os_proc_id , $in_user_id ,
$filename , $line_number) );



Below is information on the use of SOAP I found online:

Applying default namespace in gsoap with SOAP_XML_DEFAULTNS Comments After The EOF
Re: [gsoap] Re: error with several namespaces in the same apache server - Hemal patel - com.yahoogroups.gsoap - MarkMail
problem client soap(php) with server gsoap (c) - PHP