ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
soap_server Class Reference

soap_server allows the user to create a SOAP server that is capable of receiving messages and returning responses More...

+ Inheritance diagram for soap_server:
+ Collaboration diagram for soap_server:

Public Member Functions

 soap_server ($wsdl=false)
 
constructor

the optional parameter is a path to a WSDL file that you'd like to bind the server instance to. More...

 
 service ($data)
 processes request and returns response More...
 
 parse_http_headers ()
 parses HTTP request headers. More...
 
 parse_request ($data='')
 parses a request More...
 
 invoke_method ()
 invokes a PHP function for the requested SOAP method More...
 
 serialize_return ()
 serializes the return value from a PHP function into a full SOAP Envelope More...
 
 send_response ()
 sends an HTTP response More...
 
 verify_method ($operation, $request)
 takes the value that was created by parsing the request and compares to the method's signature, if available. More...
 
 add_to_map ($methodname, $in, $out)
 add a method to the dispatch map More...
 
 register ($name, $in=false, $out=false, $namespace=false, $soapaction=false, $style=false, $use=false, $documentation='')
 register a service with the server More...
 
 fault ($faultcode, $faultstring, $faultactor='', $faultdetail='')
 create a fault. More...
 
 webDescription ()
 prints html description of services More...
 
 configureWSDL ($serviceName, $namespace=false, $endpoint=false, $style='rpc', $transport='http://schemas.xmlsoap.org/soap/http', $schemaTargetNamespace=false)
 sets up wsdl object this acts as a flag to enable internal WSDL generation More...
 
- Public Member Functions inherited from nusoap_server
 __construct ($wsdl=false)
 
constructor

the optional parameter is a path to a WSDL file that you'd like to bind the server instance to. More...

 
 service ($data)
 processes request and returns response More...
 
 parse_http_headers ()
 parses HTTP request headers. More...
 
 parse_request ($data='')
 parses a request More...
 
 invoke_method ()
 invokes a PHP function for the requested SOAP method More...
 
 serialize_return ()
 serializes the return value from a PHP function into a full SOAP Envelope More...
 
 send_response ()
 sends an HTTP response More...
 
 verify_method ($operation, $request)
 takes the value that was created by parsing the request and compares to the method's signature, if available. More...
 
 parseRequest ($headers, $data)
 processes SOAP message received from client More...
 
 getHTTPBody ($soapmsg)
 gets the HTTP body for the current response. More...
 
 getHTTPContentType ()
 gets the HTTP content type for the current response. More...
 
 getHTTPContentTypeCharset ()
 gets the HTTP content type charset for the current response. More...
 
 add_to_map ($methodname, $in, $out)
 add a method to the dispatch map (this has been replaced by the register method) More...
 
 register ($name, $in=array(), $out=array(), $namespace=false, $soapaction=false, $style=false, $use=false, $documentation='', $encodingStyle='')
 register a service function with the server More...
 
 fault ($faultcode, $faultstring, $faultactor='', $faultdetail='')
 Specify a fault to be returned to the client. More...
 
 configureWSDL ($serviceName, $namespace=false, $endpoint=false, $style='rpc', $transport='http://schemas.xmlsoap.org/soap/http', $schemaTargetNamespace=false)
 Sets up wsdl object. More...
 
- Public Member Functions inherited from nusoap_base
 debug ($string)
 adds debug data to the class level debug string More...
 
 expandEntities ($val)
 expands entities, e.g. More...
 
 getError ()
 returns error string if present More...
 
 setError ($str)
 sets error string More...
 
 isArraySimpleOrStruct ($val)
 detect if array is a simple array or a struct (associative array) More...
 
 serialize_val ($val, $name=false, $type=false, $name_ns=false, $type_ns=false, $attributes=false, $use='encoded')
 serializes PHP values in accordance w/ section 5. More...
 
 serializeEnvelope ($body, $headers=false, $namespaces=array(), $style='rpc', $use='encoded')
 serialize message More...
 
 formatDump ($str)
 
 contractQname ($qname)
 contracts a qualified name More...
 
 expandQname ($qname)
 expands a qualified name More...
 
 getLocalPart ($str)
 returns the local part of a prefixed string returns the original string, if not prefixed More...
 
 getPrefix ($str)
 returns the prefix part of a prefixed string returns false, if not prefixed More...
 
 getNamespaceFromPrefix ($prefix)
 pass it a prefix, it returns a namespace returns false if no namespace registered with the given prefix More...
 
 getPrefixFromNamespace ($ns)
 returns the prefix for a given namespace (or prefix) or false if no prefixes registered for the given namespace More...
 
 varDump ($data)
 
 __construct ()
 constructor More...
 
 getGlobalDebugLevel ()
 gets the global debug level, which applies to future instances More...
 
 setGlobalDebugLevel ($level)
 sets the global debug level, which applies to future instances More...
 
 getDebugLevel ()
 gets the debug level for this instance More...
 
 setDebugLevel ($level)
 sets the debug level for this instance More...
 
 debug ($string)
 adds debug data to the instance debug string with formatting More...
 
 appendDebug ($string)
 adds debug data to the instance debug string without formatting More...
 
 clearDebug ()
 clears the current debug data for this instance More...
 
getDebug ()
 gets the current debug data for this instance More...
 
getDebugAsXMLComment ()
 gets the current debug data for this instance as an XML comment this may change the contents of the debug data More...
 
 expandEntities ($val)
 expands entities, e.g. More...
 
 getError ()
 returns error string if present More...
 
 setError ($str)
 sets error string More...
 
 isArraySimpleOrStruct ($val)
 detect if array is a simple array or a struct (associative array) More...
 
 serialize_val ($val, $name=false, $type=false, $name_ns=false, $type_ns=false, $attributes=false, $use='encoded', $soapval=false)
 serializes PHP values in accordance w/ section 5. More...
 
 serializeEnvelope ($body, $headers=false, $namespaces=array(), $style='rpc', $use='encoded', $encodingStyle='http://schemas.xmlsoap.org/soap/encoding/')
 serializes a message More...
 
 formatDump ($str)
 formats a string to be inserted into an HTML stream More...
 
 contractQname ($qname)
 contracts (changes namespace to prefix) a qualified name More...
 
 expandQname ($qname)
 expands (changes prefix to namespace) a qualified name More...
 
 getLocalPart ($str)
 returns the local part of a prefixed string returns the original string, if not prefixed More...
 
 getPrefix ($str)
 returns the prefix part of a prefixed string returns false, if not prefixed More...
 
 getNamespaceFromPrefix ($prefix)
 pass it a prefix, it returns a namespace More...
 
 getPrefixFromNamespace ($ns)
 returns the prefix for a given namespace (or prefix) or false if no prefixes registered for the given namespace More...
 
 getmicrotime ()
 returns the time in ODBC canonical form with microseconds More...
 
 varDump ($data)
 Returns a string with the output of var_dump. More...
 
 __toString ()
 represents the object as a string More...
 

Data Fields

 $headers = array()
 
 $request = ''
 
 $requestHeaders = ''
 
 $document = ''
 
 $requestSOAP = ''
 
 $methodURI = ''
 
 $methodname = ''
 
 $methodparams = array()
 
 $xml_encoding = ''
 
 $SOAPAction = ''
 
 $outgoing_headers = array()
 
 $response = ''
 
 $responseHeaders = ''
 
 $responseSOAP = ''
 
 $methodreturn = false
 
 $methodreturnisliteralxml = false
 
 $fault = false
 
 $result = 'successful'
 
 $operations = array()
 
 $wsdl = false
 
 $externalWSDLURL = false
 
 $debug_flag = false
 
- Data Fields inherited from nusoap_server
 $headers = array()
 
 $request = ''
 
 $requestHeaders = ''
 
 $requestHeader = NULL
 
 $document = ''
 
 $requestSOAP = ''
 
 $methodURI = ''
 
 $methodname = ''
 
 $methodparams = array()
 
 $SOAPAction = ''
 
 $xml_encoding = ''
 
 $decode_utf8 = true
 
 $outgoing_headers = array()
 
 $response = ''
 
 $responseHeaders = ''
 
 $responseSOAP = ''
 
 $methodreturn = false
 
 $methodreturnisliteralxml = false
 
 $fault = false
 
 $result = 'successful'
 
 $operations = array()
 
 $wsdl = false
 
 $externalWSDLURL = false
 
 $debug_flag = false
 
- Data Fields inherited from nusoap_base
 $title = 'NuSOAP'
 
 $version = '0.6.7'
 
 $revision = '$Revision$'
 
 $error_str = false
 
 $debug_str = ''
 
 $charencoding = true
 
 $XMLSchemaVersion = 'http://www.w3.org/2001/XMLSchema'
 
 $soap_defencoding = 'UTF-8'
 
 $namespaces
 
 $usedNamespaces = array()
 
 $typemap
 
 $xmlEntities
 
 $debugLevel
 

Detailed Description

soap_server allows the user to create a SOAP server that is capable of receiving messages and returning responses

Backward compatibility.

NOTE: WSDL functionality is experimental

Author
Dietrich Ayala dietr.nosp@m.ich@.nosp@m.ganx4.nosp@m..com public

Definition at line 2313 of file nusoap.php.

Member Function Documentation

◆ add_to_map()

soap_server::add_to_map (   $methodname,
  $in,
  $out 
)

add a method to the dispatch map

Parameters
string$methodname
string$inarray of input values
string$outarray of output values public

Definition at line 2865 of file nusoap.php.

References $in, $out, and array.

2865  {
2866  $this->operations[$methodname] = array('name' => $methodname,'in' => $in,'out' => $out);
2867  }
Create styles array
The data for the language used.
if(php_sapi_name() !='cli') $in
Definition: Utf8Test.php:37

◆ configureWSDL()

soap_server::configureWSDL (   $serviceName,
  $namespace = false,
  $endpoint = false,
  $style = 'rpc',
  $transport = 'http://schemas.xmlsoap.org/soap/http',
  $schemaTargetNamespace = false 
)

sets up wsdl object this acts as a flag to enable internal WSDL generation

Parameters
string$serviceName,nameof the service
string$namespaceoptional tns namespace
string$endpointoptional URL of service endpoint
string$styleoptional (rpc|document) WSDL style (also specified by operation)
string$transportoptional SOAP transport
string$schemaTargetNamespaceoptional targetNamespace for service schema

Definition at line 3062 of file nusoap.php.

References $_SERVER, $GLOBALS, $namespace, $style, and array.

3062  ://schemas.xmlsoap.org/soap/http', $schemaTargetNamespace = false)
3063  {
3064  $SERVER_NAME = isset($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : $GLOBALS['SERVER_NAME'];
3065  $SERVER_PORT = isset($_SERVER['SERVER_PORT']) ? $_SERVER['SERVER_PORT'] : $GLOBALS['SERVER_PORT'];
3066  if ($SERVER_PORT == 80) {
3067  $SERVER_PORT = '';
3068  } else {
3069  $SERVER_PORT = ':' . $SERVER_PORT;
3070  }
3071  $SCRIPT_NAME = isset($_SERVER['SCRIPT_NAME']) ? $_SERVER['SCRIPT_NAME'] : $GLOBALS['SCRIPT_NAME'];
3072  if(false == $namespace) {
3073  $namespace = "http://$SERVER_NAME/soap/$serviceName";
3074  }
3075 
3076  if(false == $endpoint) {
3077  if (isset($_SERVER['HTTPS'])) {
3078  $HTTPS = $_SERVER['HTTPS'];
3079  } elseif (isset($GLOBALS['HTTPS'])) {
3080  $HTTPS = $GLOBALS['HTTPS'];
3081  } else {
3082  $HTTPS = '0';
3083  }
3084  if ($HTTPS == '1' || $HTTPS == 'on') {
3085  $SCHEME = 'https';
3086  } else {
3087  $SCHEME = 'http';
3088  }
3089  $endpoint = "$SCHEME://$SERVER_NAME$SERVER_PORT$SCRIPT_NAME";
3090  }
3091 
3092  if(false == $schemaTargetNamespace) {
3093  $schemaTargetNamespace = $namespace;
3094  }
3095 
3096  $this->wsdl = new wsdl;
3097  $this->wsdl->serviceName = $serviceName;
3098  $this->wsdl->endpoint = $endpoint;
3099  $this->wsdl->namespaces['tns'] = $namespace;
3100  $this->wsdl->namespaces['soap'] = 'http://schemas.xmlsoap.org/wsdl/soap/';
3101  $this->wsdl->namespaces['wsdl'] = 'http://schemas.xmlsoap.org/wsdl/';
3102  if ($schemaTargetNamespace != $namespace) {
3103  $this->wsdl->namespaces['types'] = $schemaTargetNamespace;
3104  }
3105  $this->wsdl->schemas[$schemaTargetNamespace][0] = new xmlschema('', '', $this->wsdl->namespaces);
3106  $this->wsdl->schemas[$schemaTargetNamespace][0]->schemaTargetNamespace = $schemaTargetNamespace;
3107  $this->wsdl->schemas[$schemaTargetNamespace][0]->imports['http://schemas.xmlsoap.org/soap/encoding/'][0] = array('location' => '', 'loaded' => true);
3108  $this->wsdl->schemas[$schemaTargetNamespace][0]->imports['http://schemas.xmlsoap.org/wsdl/'][0] = array('location' => '', 'loaded' => true);
3109  $this->wsdl->bindings[$serviceName.'Binding'] = array(
3110  'name'=>$serviceName.'Binding',
3111  'style'=>$style,
3112  'transport'=>$transport,
3113  'portType'=>$serviceName.'PortType');
3114  $this->wsdl->ports[$serviceName.'Port'] = array(
3115  'binding'=>$serviceName.'Binding',
3116  'location'=>$endpoint,
3117  'bindingType'=>'http://schemas.xmlsoap.org/wsdl/soap/');
3118  }
if($err=$client->getError()) $namespace
$style
Definition: example_012.php:70
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']
parses a WSDL file, allows access to it's data, other utility methods
Definition: nusoap.php:3133
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
Create styles array
The data for the language used.

◆ fault()

soap_server::fault (   $faultcode,
  $faultstring,
  $faultactor = '',
  $faultdetail = '' 
)

create a fault.

this also acts as a flag to the server that a fault has occured.

Parameters
stringfaultcode
stringfaultstring
stringfaultactor
stringfaultdetail public

Definition at line 2926 of file nusoap.php.

2926  {
2927  $this->fault = new soap_fault($faultcode,$faultactor,$faultstring,$faultdetail);
2928  }
soap_fault class, allows for creation of faults mainly used for returning faults from deployed functi...
Definition: nusoap.php:669
fault($faultcode, $faultstring, $faultactor='', $faultdetail='')
create a fault.
Definition: nusoap.php:2926

◆ invoke_method()

soap_server::invoke_method ( )

invokes a PHP function for the requested SOAP method

The following fields are set by this function (when successful)

methodreturn

Note that the PHP function that is called may also set the following fields to affect the response sent to the client

responseHeaders outgoing_headers

This sets the fault field on error

private

Definition at line 2634 of file nusoap.php.

References nusoap_base\debug(), wsdl\getOperationData(), and nusoap_base\varDump().

2634  {
2635  $this->debug('entering invoke_method');
2636  // does method exist?
2637  if(!function_exists($this->methodname)){
2638  // "method not found" fault here
2639  $this->debug("method '$this->methodname' not found!");
2640  $this->result = 'fault: method not found';
2641  $this->fault('Server',"method '$this->methodname' not defined in service");
2642  return;
2643  }
2644  if($this->wsdl){
2645  if(!$this->opData = $this->wsdl->getOperationData($this->methodname)){
2646  //if(
2647  $this->fault('Server',"Operation '$this->methodname' is not defined in the WSDL for this service");
2648  return;
2649  }
2650  $this->debug('opData is ' . $this->varDump($this->opData));
2651  }
2652  $this->debug("method '$this->methodname' exists");
2653  // evaluate message, getting back parameters
2654  // verify that request parameters match the method's signature
2655  if(! $this->verify_method($this->methodname,$this->methodparams)){
2656  // debug
2657  $this->debug('ERROR: request not verified against method signature');
2658  $this->result = 'fault: request failed validation against method signature';
2659  // return fault
2660  $this->fault('Server',"Operation '$this->methodname' not defined in service.");
2661  return;
2662  }
2663 
2664  // if there are parameters to pass
2665  $this->debug('params var dump '.$this->varDump($this->methodparams));
2666  if($this->methodparams){
2667  $this->debug("calling '$this->methodname' with params");
2668  if (! function_exists('call_user_func_array')) {
2669  $this->debug('calling method using eval()');
2670  $funcCall = $this->methodname.'(';
2671  foreach($this->methodparams as $param) {
2672  $funcCall .= "\"$param\",";
2673  }
2674  $funcCall = substr($funcCall, 0, -1).')';
2675  $this->debug('function call:<br>'.$funcCall);
2676  @eval("\$this->methodreturn = $funcCall;");
2677  } else {
2678  $this->debug('calling method using call_user_func_array()');
2679  $this->methodreturn = call_user_func_array("$this->methodname",$this->methodparams);
2680  }
2681  } else {
2682  // call method w/ no parameters
2683  $this->debug("calling $this->methodname w/ no params");
2684  $m = $this->methodname;
2685  $this->methodreturn = @$m();
2686  }
2687  $this->debug('methodreturn var dump'.$this->varDump($this->methodreturn));
2688  $this->debug("leaving invoke_method: called method $this->methodname, received $this->methodreturn of type ".gettype($this->methodreturn));
2689  }
parses a WSDL file, allows access to it&#39;s data, other utility methods
Definition: nusoap.php:3133
verify_method($operation, $request)
takes the value that was created by parsing the request and compares to the method&#39;s signature...
Definition: nusoap.php:2846
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
varDump($data)
Definition: nusoap.php:567
getOperationData($operation, $bindingType='soap')
returns an associative array of data necessary for calling an operation
Definition: nusoap.php:3679
fault($faultcode, $faultstring, $faultactor='', $faultdetail='')
create a fault.
Definition: nusoap.php:2926
+ Here is the call graph for this function:

◆ parse_http_headers()

soap_server::parse_http_headers ( )

parses HTTP request headers.

The following fields are set by this function (when successful)

headers request xml_encoding SOAPAction

private

Definition at line 2451 of file nusoap.php.

References $_SERVER, and nusoap_base\debug().

2451  {
2452  global $HTTP_SERVER_VARS;
2453  global $_SERVER;
2454 
2455  $this->request = '';
2456  if(function_exists('getallheaders')){
2457  $this->headers = getallheaders();
2458  foreach($this->headers as $k=>$v){
2459  $this->request .= "$k: $v\r\n";
2460  $this->debug("$k: $v");
2461  }
2462  // get SOAPAction header
2463  if(isset($this->headers['SOAPAction'])){
2464  $this->SOAPAction = str_replace('"','',$this->headers['SOAPAction']);
2465  }
2466  // get the character encoding of the incoming request
2467  if(strpos($this->headers['Content-Type'],'=')){
2468  $enc = str_replace('"','',substr(strstr($this->headers["Content-Type"],'='),1));
2469  if(eregi('^(ISO-8859-1|US-ASCII|UTF-8)$',$enc)){
2470  $this->xml_encoding = strtoupper($enc);
2471  } else {
2472  $this->xml_encoding = 'US-ASCII';
2473  }
2474  } else {
2475  // should be US-ASCII, but for XML, let's be pragmatic and admit UTF-8 is most common
2476  $this->xml_encoding = 'UTF-8';
2477  }
2478  } elseif(isset($_SERVER) && is_array($_SERVER)){
2479  foreach ($_SERVER as $k => $v) {
2480  if (substr($k, 0, 5) == 'HTTP_') {
2481  $k = str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($k, 5)))));
2482  } else {
2483  $k = str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', $k))));
2484  }
2485  if ($k == 'Soapaction') {
2486  // get SOAPAction header
2487  $k = 'SOAPAction';
2488  $v = str_replace('"', '', $v);
2489  $v = str_replace('\\', '', $v);
2490  $this->SOAPAction = $v;
2491  } else if ($k == 'Content-Type') {
2492  // get the character encoding of the incoming request
2493  if (strpos($v, '=')) {
2494  $enc = substr(strstr($v, '='), 1);
2495  $enc = str_replace('"', '', $enc);
2496  $enc = str_replace('\\', '', $enc);
2497  if (eregi('^(ISO-8859-1|US-ASCII|UTF-8)$', $enc)) {
2498  $this->xml_encoding = strtoupper($enc);
2499  } else {
2500  $this->xml_encoding = 'US-ASCII';
2501  }
2502  } else {
2503  // should be US-ASCII, but for XML, let's be pragmatic and admit UTF-8 is most common
2504  $this->xml_encoding = 'UTF-8';
2505  }
2506  }
2507  $this->headers[$k] = $v;
2508  $this->request .= "$k: $v\r\n";
2509  $this->debug("$k: $v");
2510  }
2511  } elseif (is_array($HTTP_SERVER_VARS)) {
2512  foreach ($HTTP_SERVER_VARS as $k => $v) {
2513  if (substr($k, 0, 5) == 'HTTP_') {
2514  $k = str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($k, 5)))));
2515  if ($k == 'Soapaction') {
2516  // get SOAPAction header
2517  $k = 'SOAPAction';
2518  $v = str_replace('"', '', $v);
2519  $v = str_replace('\\', '', $v);
2520  $this->SOAPAction = $v;
2521  } else if ($k == 'Content-Type') {
2522  // get the character encoding of the incoming request
2523  if (strpos($v, '=')) {
2524  $enc = substr(strstr($v, '='), 1);
2525  $enc = str_replace('"', '', $enc);
2526  $enc = str_replace('\\', '', $enc);
2527  if (eregi('^(ISO-8859-1|US-ASCII|UTF-8)$', $enc)) {
2528  $this->xml_encoding = strtoupper($enc);
2529  } else {
2530  $this->xml_encoding = 'US-ASCII';
2531  }
2532  } else {
2533  // should be US-ASCII, but for XML, let's be pragmatic and admit UTF-8 is most common
2534  $this->xml_encoding = 'UTF-8';
2535  }
2536  }
2537  $this->headers[$k] = $v;
2538  $this->request .= "$k: $v\r\n";
2539  $this->debug("$k: $v");
2540  }
2541  }
2542  }
2543  }
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
+ Here is the call graph for this function:

◆ parse_request()

soap_server::parse_request (   $data = '')

parses a request

The following fields are set by this function (when successful)

headers request xml_encoding SOAPAction request requestSOAP methodURI methodname methodparams requestHeaders document

This sets the fault field on error

Parameters
string$dataXML string private

Definition at line 2567 of file nusoap.php.

References $data, date, and nusoap_base\debug().

2567  {
2568  $this->debug('entering parse_request() on '.date('H:i Y-m-d'));
2569  $this->parse_http_headers();
2570  $this->debug('got character encoding: '.$this->xml_encoding);
2571  // uncompress if necessary
2572  if (isset($this->headers['Content-Encoding']) && $this->headers['Content-Encoding'] != '') {
2573  $this->debug('got content encoding: ' . $this->headers['Content-Encoding']);
2574  if ($this->headers['Content-Encoding'] == 'deflate' || $this->headers['Content-Encoding'] == 'gzip') {
2575  // if decoding works, use it. else assume data wasn't gzencoded
2576  if (function_exists('gzuncompress')) {
2577  if ($this->headers['Content-Encoding'] == 'deflate' && $degzdata = @gzuncompress($data)) {
2578  $data = $degzdata;
2579  } elseif ($this->headers['Content-Encoding'] == 'gzip' && $degzdata = gzinflate(substr($data, 10))) {
2580  $data = $degzdata;
2581  } else {
2582  $this->fault('Server', 'Errors occurred when trying to decode the data');
2583  return;
2584  }
2585  } else {
2586  $this->fault('Server', 'This Server does not support compressed data');
2587  return;
2588  }
2589  }
2590  }
2591  $this->request .= "\r\n".$data;
2592  $this->requestSOAP = $data;
2593  // parse response, get soap parser obj
2594  $parser = new soap_parser($data,$this->xml_encoding);
2595  // parser debug
2596  $this->debug("parser debug: \n".$parser->debug_str);
2597  // if fault occurred during message parsing
2598  if($err = $parser->getError()){
2599  $this->result = 'fault: error in msg parsing: '.$err;
2600  $this->fault('Server',"error in msg parsing:\n".$err);
2601  // else successfully parsed request into soapval object
2602  } else {
2603  // get/set methodname
2604  $this->methodURI = $parser->root_struct_namespace;
2605  $this->methodname = $parser->root_struct_name;
2606  $this->debug('method name: '.$this->methodname);
2607  $this->debug('calling parser->get_response()');
2608  $this->methodparams = $parser->get_response();
2609  // get SOAP headers
2610  $this->requestHeaders = $parser->getHeaders();
2611  // add document for doclit support
2612  $this->document = $parser->document;
2613  }
2614  $this->debug('leaving parse_request() on '.date('H:i Y-m-d'));
2615  }
parse_http_headers()
parses HTTP request headers.
Definition: nusoap.php:2451
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
soap_parser class parses SOAP XML messages into native PHP values
Definition: nusoap.php:4431
date( 'd-M-Y', $objPHPExcel->getProperties() ->getCreated())
$parser
Definition: BPMN2Parser.php:24
fault($faultcode, $faultstring, $faultactor='', $faultdetail='')
create a fault.
Definition: nusoap.php:2926
+ Here is the call graph for this function:

◆ register()

soap_server::register (   $name,
  $in = false,
  $out = false,
  $namespace = false,
  $soapaction = false,
  $style = false,
  $use = false,
  $documentation = '' 
)

register a service with the server

Parameters
string$methodname
string$inassoc array of input values: key = param name, value = param type
string$outassoc array of output values: key = param name, value = param type
string$namespace
string$soapaction
string$styleoptional (rpc|document)
string$useoptional (encoded|literal)
string$documentationoptional Description to include in WSDL public

Definition at line 2882 of file nusoap.php.

References $_SERVER, $GLOBALS, $namespace, $out, $style, wsdl\addOperation(), and array.

2882  {
2883  if($this->externalWSDLURL){
2884  die('You cannot bind to an external WSDL file, and register methods outside of it! Please choose either WSDL or no WSDL.');
2885  }
2886  if(false == $in) {
2887  }
2888  if(false == $out) {
2889  }
2890  if(false == $namespace) {
2891  }
2892  if(false == $soapaction) {
2893  $SERVER_NAME = isset($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : $GLOBALS['SERVER_NAME'];
2894  $SCRIPT_NAME = isset($_SERVER['SCRIPT_NAME']) ? $_SERVER['SCRIPT_NAME'] : $GLOBALS['SCRIPT_NAME'];
2895  $soapaction = "http://$SERVER_NAME$SCRIPT_NAME/$name";
2896  }
2897  if(false == $style) {
2898  $style = "rpc";
2899  }
2900  if(false == $use) {
2901  $use = "encoded";
2902  }
2903 
2904  $this->operations[$name] = array(
2905  'name' => $name,
2906  'in' => $in,
2907  'out' => $out,
2908  'namespace' => $namespace,
2909  'soapaction' => $soapaction,
2910  'style' => $style);
2911  if($this->wsdl){
2912  $this->wsdl->addOperation($name,$in,$out,$namespace,$soapaction,$style,$use,$documentation);
2913  }
2914  return true;
2915  }
if($err=$client->getError()) $namespace
$style
Definition: example_012.php:70
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']
parses a WSDL file, allows access to it&#39;s data, other utility methods
Definition: nusoap.php:3133
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
addOperation($name, $in=false, $out=false, $namespace=false, $soapaction=false, $style='rpc', $use='encoded', $documentation='')
register a service with the server
Definition: nusoap.php:4362
Create styles array
The data for the language used.
if(php_sapi_name() !='cli') $in
Definition: Utf8Test.php:37
+ Here is the call graph for this function:

◆ send_response()

soap_server::send_response ( )

sends an HTTP response

The following fields are set by this function (when successful)

outgoing_headers response

private

Definition at line 2773 of file nusoap.php.

References nusoap_base\debug(), and header.

2773  {
2774  $this->debug('Enter send_response');
2775  if ($this->fault) {
2776  $payload = $this->fault->serialize();
2777  $this->outgoing_headers[] = "HTTP/1.0 500 Internal Server Error";
2778  $this->outgoing_headers[] = "Status: 500 Internal Server Error";
2779  } else {
2780  $payload = $this->responseSOAP;
2781  // Some combinations of PHP+Web server allow the Status
2782  // to come through as a header. Since OK is the default
2783  // just do nothing.
2784  // $this->outgoing_headers[] = "HTTP/1.0 200 OK";
2785  // $this->outgoing_headers[] = "Status: 200 OK";
2786  }
2787  // add debug data if in debug mode
2788  if(isset($this->debug_flag) && $this->debug_flag){
2789  while (strpos($this->debug_str, '--')) {
2790  $this->debug_str = str_replace('--', '- -', $this->debug_str);
2791  }
2792  $payload .= "<!--\n" . $this->debug_str . "\n-->";
2793  }
2794  $this->outgoing_headers[] = "Server: $this->title Server v$this->version";
2795  ereg('\$Revisio' . 'n: ([^ ]+)', $this->revision, $rev);
2796  $this->outgoing_headers[] = "X-SOAP-Server: $this->title/$this->version (".$rev[1].")";
2797  // Let the Web server decide about this
2798  //$this->outgoing_headers[] = "Connection: Close\r\n";
2799  $this->outgoing_headers[] = "Content-Type: text/xml; charset=$this->soap_defencoding";
2800  //begin code to compress payload - by John
2801  if (strlen($payload) > 1024 && isset($this->headers) && isset($this->headers['Accept-Encoding'])) {
2802  if (strstr($this->headers['Accept-Encoding'], 'deflate')) {
2803  if (function_exists('gzcompress')) {
2804  if (isset($this->debug_flag) && $this->debug_flag) {
2805  $payload .= "<!-- Content being deflated -->";
2806  }
2807  $this->outgoing_headers[] = "Content-Encoding: deflate";
2808  $payload = gzcompress($payload);
2809  } else {
2810  if (isset($this->debug_flag) && $this->debug_flag) {
2811  $payload .= "<!-- Content will not be deflated: no gzcompress -->";
2812  }
2813  }
2814  } else if (strstr($this->headers['Accept-Encoding'], 'gzip')) {
2815  if (function_exists('gzencode')) {
2816  if (isset($this->debug_flag) && $this->debug_flag) {
2817  $payload .= "<!-- Content being gzipped -->";
2818  }
2819  $this->outgoing_headers[] = "Content-Encoding: gzip";
2820  $payload = gzencode($payload);
2821  } else {
2822  if (isset($this->debug_flag) && $this->debug_flag) {
2823  $payload .= "<!-- Content will not be gzipped: no gzencode -->";
2824  }
2825  }
2826  }
2827  }
2828  //end code
2829  $this->outgoing_headers[] = "Content-Length: ".strlen($payload);
2830  reset($this->outgoing_headers);
2831  foreach($this->outgoing_headers as $hdr){
2832  header($hdr, false);
2833  }
2834  $this->response = join("\r\n",$this->outgoing_headers)."\r\n".$payload;
2835  print $payload;
2836  }
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
Add a drawing to the header
Definition: 04printing.php:69
fault($faultcode, $faultstring, $faultactor='', $faultdetail='')
create a fault.
Definition: nusoap.php:2926
+ Here is the call graph for this function:

◆ serialize_return()

soap_server::serialize_return ( )

serializes the return value from a PHP function into a full SOAP Envelope

The following fields are set by this function (when successful)

responseSOAP

This sets the fault field on error

private

Definition at line 2702 of file nusoap.php.

References array, nusoap_base\debug(), nusoap_base\getError(), nusoap_base\serialize_val(), nusoap_base\serializeEnvelope(), wsdl\serializeRPCParameters(), and nusoap_base\varDump().

2702  {
2703  $this->debug("Entering serialize_return");
2704  // if we got nothing back. this might be ok (echoVoid)
2705  if(isset($this->methodreturn) && ($this->methodreturn != '' || is_bool($this->methodreturn))) {
2706  // if fault
2707  if(get_class($this->methodreturn) == 'soap_fault'){
2708  $this->debug('got a fault object from method');
2709  $this->fault = $this->methodreturn;
2710  return;
2711  } elseif ($this->methodreturnisliteralxml) {
2712  $return_val = $this->methodreturn;
2713  // returned value(s)
2714  } else {
2715  $this->debug('got a(n) '.gettype($this->methodreturn).' from method');
2716  $this->debug('serializing return value');
2717  if($this->wsdl){
2718  // weak attempt at supporting multiple output params
2719  if(sizeof($this->opData['output']['parts']) > 1){
2720  $opParams = $this->methodreturn;
2721  } else {
2722  // TODO: is this really necessary?
2723  $opParams = array($this->methodreturn);
2724  }
2725  $return_val = $this->wsdl->serializeRPCParameters($this->methodname,'output',$opParams);
2726  if($errstr = $this->wsdl->getError()){
2727  $this->debug('got wsdl error: '.$errstr);
2728  $this->fault('Server', 'got wsdl error: '.$errstr);
2729  return;
2730  }
2731  } else {
2732  $return_val = $this->serialize_val($this->methodreturn, 'return');
2733  }
2734  }
2735  $this->debug('return val: '.$this->varDump($return_val));
2736  } else {
2737  $return_val = '';
2738  $this->debug('got no response from method');
2739  }
2740  $this->debug('serializing response');
2741  if ($this->wsdl) {
2742  if ($this->opData['style'] == 'rpc') {
2743  $payload = '<ns1:'.$this->methodname.'Response xmlns:ns1="'.$this->methodURI.'">'.$return_val.'</ns1:'.$this->methodname."Response>";
2744  } else {
2745  $payload = $return_val;
2746  }
2747  } else {
2748  $payload = '<ns1:'.$this->methodname.'Response xmlns:ns1="'.$this->methodURI.'">'.$return_val.'</ns1:'.$this->methodname."Response>";
2749  }
2750  $this->result = 'successful';
2751  if($this->wsdl){
2752  //if($this->debug_flag){
2753  $this->debug("WSDL debug data:\n".$this->wsdl->debug_str);
2754  // }
2755  // Added: In case we use a WSDL, return a serialized env. WITH the usedNamespaces.
2756  $this->responseSOAP = $this->serializeEnvelope($payload,$this->responseHeaders,$this->wsdl->usedNamespaces,$this->opData['style']);
2757  } else {
2758  $this->responseSOAP = $this->serializeEnvelope($payload,$this->responseHeaders);
2759  }
2760  $this->debug("Leaving serialize_return");
2761  }
serializeEnvelope($body, $headers=false, $namespaces=array(), $style='rpc', $use='encoded')
serialize message
Definition: nusoap.php:417
parses a WSDL file, allows access to it&#39;s data, other utility methods
Definition: nusoap.php:3133
getError()
returns error string if present
Definition: nusoap.php:171
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
serialize_val($val, $name=false, $type=false, $name_ns=false, $type_ns=false, $attributes=false, $use='encoded')
serializes PHP values in accordance w/ section 5.
Definition: nusoap.php:212
Create styles array
The data for the language used.
varDump($data)
Definition: nusoap.php:567
serializeRPCParameters($operation, $direction, $parameters)
serialize a PHP value according to a WSDL message definition
Definition: nusoap.php:3870
fault($faultcode, $faultstring, $faultactor='', $faultdetail='')
create a fault.
Definition: nusoap.php:2926
+ Here is the call graph for this function:

◆ service()

soap_server::service (   $data)

processes request and returns response

Parameters
string$datausually is the value of $HTTP_RAW_POST_DATA public

Definition at line 2399 of file nusoap.php.

References $_SERVER, $data, $GLOBALS, header, and wsdl\serialize().

2399  {
2400  global $QUERY_STRING;
2401  if(isset($_SERVER['QUERY_STRING'])){
2402  $qs = $_SERVER['QUERY_STRING'];
2403  } elseif(isset($GLOBALS['QUERY_STRING'])){
2404  $qs = $GLOBALS['QUERY_STRING'];
2405  } elseif(isset($QUERY_STRING) && $QUERY_STRING != ''){
2406  $qs = $QUERY_STRING;
2407  }
2408 
2409  if(isset($qs) && ereg('wsdl', $qs) ){
2410  // This is a request for WSDL
2411  if($this->externalWSDLURL){
2412  if (strpos($this->externalWSDLURL,"://")!==false) { // assume URL
2413  header('Location: '.$this->externalWSDLURL);
2414  } else { // assume file
2415  header("Content-Type: text/xml\r\n");
2416  $fp = fopen($this->externalWSDLURL, 'r');
2417  fpassthru($fp);
2418  }
2419  } else {
2420  header("Content-Type: text/xml; charset=ISO-8859-1\r\n");
2421  print $this->wsdl->serialize();
2422  }
2423  } elseif($data == '' && $this->wsdl){
2424  // print web interface
2425  print $this->webDescription();
2426  } else {
2427  // handle the request
2428  $this->parse_request($data);
2429  if (! $this->fault) {
2430  $this->invoke_method();
2431  }
2432  if (! $this->fault) {
2433  $this->serialize_return();
2434  }
2435  $this->send_response();
2436  }
2437  }
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']
parses a WSDL file, allows access to it&#39;s data, other utility methods
Definition: nusoap.php:3133
send_response()
sends an HTTP response
Definition: nusoap.php:2773
parse_request($data='')
parses a request
Definition: nusoap.php:2567
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
serialize_return()
serializes the return value from a PHP function into a full SOAP Envelope
Definition: nusoap.php:2702
serialize()
serialize the parsed wsdl
Definition: nusoap.php:3741
Add a drawing to the header
Definition: 04printing.php:69
invoke_method()
invokes a PHP function for the requested SOAP method
Definition: nusoap.php:2634
webDescription()
prints html description of services
Definition: nusoap.php:2935
fault($faultcode, $faultstring, $faultactor='', $faultdetail='')
create a fault.
Definition: nusoap.php:2926
+ Here is the call graph for this function:

◆ soap_server()

soap_server::soap_server (   $wsdl = false)

constructor

the optional parameter is a path to a WSDL file that you'd like to bind the server instance to.

Parameters
mixed$wsdlfile path or URL (string), or wsdl instance (object) public

Definition at line 2346 of file nusoap.php.

References $_SERVER, nusoap_base\debug(), nusoap_base\getError(), and wsdl\wsdl().

2346  {
2347 
2348  // turn on debugging?
2349  global $debug;
2350  global $_REQUEST;
2351  global $_SERVER;
2352  global $HTTP_SERVER_VARS;
2353 
2354  if (isset($debug)) {
2355  $this->debug_flag = $debug;
2356  } else if (isset($_REQUEST['debug'])) {
2357  $this->debug_flag = $_REQUEST['debug'];
2358  } else if (isset($_SERVER['QUERY_STRING'])) {
2359  $qs = explode('&', $_SERVER['QUERY_STRING']);
2360  foreach ($qs as $v) {
2361  if (substr($v, 0, 6) == 'debug=') {
2362  $this->debug_flag = substr($v, 6);
2363  }
2364  }
2365  } else if (isset($HTTP_SERVER_VARS['QUERY_STRING'])) {
2366  $qs = explode('&', $HTTP_SERVER_VARS['QUERY_STRING']);
2367  foreach ($qs as $v) {
2368  if (substr($v, 0, 6) == 'debug=') {
2369  $this->debug_flag = substr($v, 6);
2370  }
2371  }
2372  }
2373 
2374  // wsdl
2375  if($wsdl){
2376  if (is_object($wsdl) && is_a($wsdl, 'wsdl')) {
2377  $this->wsdl = $wsdl;
2378  $this->externalWSDLURL = $this->wsdl->wsdl;
2379  $this->debug('Use existing wsdl instance from ' . $this->externalWSDLURL);
2380  } else {
2381  $this->debug('Create wsdl from ' . $wsdl);
2382  $this->wsdl = new wsdl($wsdl);
2383  $this->externalWSDLURL = $wsdl;
2384  }
2385  $this->debug("wsdl...\n" . $this->wsdl->debug_str);
2386  $this->wsdl->debug_str = '';
2387  if($err = $this->wsdl->getError()){
2388  die('WSDL ERROR: '.$err);
2389  }
2390  }
2391  }
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']
parses a WSDL file, allows access to it&#39;s data, other utility methods
Definition: nusoap.php:3133
getError()
returns error string if present
Definition: nusoap.php:171
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
wsdl($wsdl='', $proxyhost=false, $proxyport=false, $proxyusername=false, $proxypassword=false, $timeout=0, $response_timeout=30)
constructor
Definition: nusoap.php:3181
+ Here is the call graph for this function:

◆ verify_method()

soap_server::verify_method (   $operation,
  $request 
)

takes the value that was created by parsing the request and compares to the method's signature, if available.

Parameters
mixed
Returns
boolean private

Definition at line 2846 of file nusoap.php.

References wsdl\getOperationData().

2846  {
2847  if(isset($this->wsdl) && is_object($this->wsdl)){
2848  if($this->wsdl->getOperationData($operation)){
2849  return true;
2850  }
2851  } elseif(isset($this->operations[$operation])){
2852  return true;
2853  }
2854  return false;
2855  }
parses a WSDL file, allows access to it&#39;s data, other utility methods
Definition: nusoap.php:3133
getOperationData($operation, $bindingType='soap')
returns an associative array of data necessary for calling an operation
Definition: nusoap.php:3679
+ Here is the call graph for this function:

◆ webDescription()

soap_server::webDescription ( )

prints html description of services

private

Definition at line 2935 of file nusoap.php.

References $_SERVER, $data, $GLOBALS, and wsdl\getOperations().

2935  {
2936  $b = '
2937  <html><head><title>NuSOAP: '.$this->wsdl->serviceName.'</title>
2938  <style type="text/css">
2939  body { font-family: arial; color: #000000; background-color: #ffffff; margin: 0px 0px 0px 0px; }
2940  p { font-family: arial; color: #000000; margin-top: 0px; margin-bottom: 12px; }
2941  pre { background-color: silver; padding: 5px; font-family: Courier New; font-size: x-small; color: #000000;}
2942  ul { margin-top: 10px; margin-left: 20px; }
2943  li { list-style-type: none; margin-top: 10px; color: #000000; }
2944  .content{
2945  margin-left: 0px; padding-bottom: 2em; }
2946  .nav {
2947  padding-top: 10px; padding-bottom: 10px; padding-left: 15px; font-size: .70em;
2948  margin-top: 10px; margin-left: 0px; color: #000000;
2949  background-color: #ccccff; width: 20%; margin-left: 20px; margin-top: 20px; }
2950  .title {
2951  font-family: arial; font-size: 26px; color: #ffffff;
2952  background-color: #999999; width: 105%; margin-left: 0px;
2953  padding-top: 10px; padding-bottom: 10px; padding-left: 15px;}
2954  .hidden {
2955  position: absolute; visibility: hidden; z-index: 200; left: 250px; top: 100px;
2956  font-family: arial; overflow: hidden; width: 600;
2957  padding: 20px; font-size: 10px; background-color: #999999;
2958  layer-background-color:#FFFFFF; }
2959  a,a:active { color: charcoal; font-weight: bold; }
2960  a:visited { color: #666666; font-weight: bold; }
2961  a:hover { color: cc3300; font-weight: bold; }
2962  </style>
2963  <script language="JavaScript" type="text/javascript">
2964  <!--
2965  // POP-UP CAPTIONS...
2966  function lib_bwcheck(){ //Browsercheck (needed)
2967  this.ver=navigator.appVersion
2968  this.agent=navigator.userAgent
2969  this.dom=document.getElementById?1:0
2970  this.opera5=this.agent.indexOf("Opera 5")>-1
2971  this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0;
2972  this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
2973  this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
2974  this.ie=this.ie4||this.ie5||this.ie6
2975  this.mac=this.agent.indexOf("Mac")>-1
2976  this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0;
2977  this.ns4=(document.layers && !this.dom)?1:0;
2978  this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
2979  return this
2980  }
2981  var bw = new lib_bwcheck()
2982  //Makes crossbrowser object.
2983  function makeObj(obj){
2984  this.evnt=bw.dom? document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?document.layers[obj]:0;
2985  if(!this.evnt) return false
2986  this.css=bw.dom||bw.ie4?this.evnt.style:bw.ns4?this.evnt:0;
2987  this.wref=bw.dom||bw.ie4?this.evnt:bw.ns4?this.css.document:0;
2988  this.writeIt=b_writeIt;
2989  return this
2990  }
2991  // A unit of measure that will be added when setting the position of a layer.
2992  //var px = bw.ns4||window.opera?"":"px";
2993  function b_writeIt(text){
2994  if (bw.ns4){this.wref.write(text);this.wref.close()}
2995  else this.wref.innerHTML = text
2996  }
2997  //Shows the messages
2998  var oDesc;
2999  function popup(divid){
3000  if(oDesc = new makeObj(divid)){
3001  oDesc.css.visibility = "visible"
3002  }
3003  }
3004  function popout(){ // Hides message
3005  if(oDesc) oDesc.css.visibility = "hidden"
3006  }
3007  //-->
3008  </script>
3009  </head>
3010  <body>
3011  <div class=content>
3012  <br><br>
3013  <div class=title>'.$this->wsdl->serviceName.'</div>
3014  <div class=nav>
3015  <p>View the <a href="'.(isset($GLOBALS['PHP_SELF']) ? $GLOBALS['PHP_SELF'] : $_SERVER['PHP_SELF']).'?wsdl">WSDL</a> for the service.
3016  Click on an operation name to view it&apos;s details.</p>
3017  <ul>';
3018  foreach($this->wsdl->getOperations() as $op => $data){
3019  $b .= "<li><a href='#' onclick=\"popup('$op')\">$op</a></li>";
3020  // create hidden div
3021  $b .= "<div id='$op' class='hidden'>
3022  <a href='#' onclick='popout()'><font color='#ffffff'>Close</font></a><br><br>";
3023  foreach($data as $donnie => $marie){ // loop through opdata
3024  if($donnie == 'input' || $donnie == 'output'){ // show input/output data
3025  $b .= "<font color='white'>".ucfirst($donnie).':</font><br>';
3026  foreach($marie as $captain => $tenille){ // loop through data
3027  if($captain == 'parts'){ // loop thru parts
3028  $b .= "&nbsp;&nbsp;$captain:<br>";
3029  //if(is_array($tenille)){
3030  foreach($tenille as $joanie => $chachi){
3031  $b .= "&nbsp;&nbsp;&nbsp;&nbsp;$joanie: $chachi<br>";
3032  }
3033  //}
3034  } else {
3035  $b .= "&nbsp;&nbsp;$captain: $tenille<br>";
3036  }
3037  }
3038  } else {
3039  $b .= "<font color='white'>".ucfirst($donnie).":</font> $marie<br>";
3040  }
3041  }
3042  $b .= '</div>';
3043  }
3044  $b .= '
3045  <ul>
3046  </div>
3047  </div></body></html>';
3048  return $b;
3049  }
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']
parses a WSDL file, allows access to it&#39;s data, other utility methods
Definition: nusoap.php:3133
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
getOperations($bindingType='soap')
returns an assoc array of operation names => operation data
Definition: nusoap.php:3649
+ Here is the call graph for this function:

Field Documentation

◆ $debug_flag

soap_server::$debug_flag = false

Definition at line 2337 of file nusoap.php.

◆ $document

soap_server::$document = ''

Definition at line 2317 of file nusoap.php.

◆ $externalWSDLURL

soap_server::$externalWSDLURL = false

Definition at line 2336 of file nusoap.php.

◆ $fault

soap_server::$fault = false

Definition at line 2331 of file nusoap.php.

◆ $headers

soap_server::$headers = array()

Definition at line 2314 of file nusoap.php.

◆ $methodname

soap_server::$methodname = ''

Definition at line 2320 of file nusoap.php.

◆ $methodparams

soap_server::$methodparams = array()

Definition at line 2321 of file nusoap.php.

◆ $methodreturn

soap_server::$methodreturn = false

Definition at line 2329 of file nusoap.php.

◆ $methodreturnisliteralxml

soap_server::$methodreturnisliteralxml = false

Definition at line 2330 of file nusoap.php.

◆ $methodURI

soap_server::$methodURI = ''

Definition at line 2319 of file nusoap.php.

◆ $operations

soap_server::$operations = array()

Definition at line 2334 of file nusoap.php.

◆ $outgoing_headers

soap_server::$outgoing_headers = array()

Definition at line 2325 of file nusoap.php.

◆ $request

soap_server::$request = ''

Definition at line 2315 of file nusoap.php.

◆ $requestHeaders

soap_server::$requestHeaders = ''

Definition at line 2316 of file nusoap.php.

◆ $requestSOAP

soap_server::$requestSOAP = ''

Definition at line 2318 of file nusoap.php.

◆ $response

soap_server::$response = ''

Definition at line 2326 of file nusoap.php.

◆ $responseHeaders

soap_server::$responseHeaders = ''

Definition at line 2327 of file nusoap.php.

◆ $responseSOAP

soap_server::$responseSOAP = ''

Definition at line 2328 of file nusoap.php.

◆ $result

soap_server::$result = 'successful'

Definition at line 2332 of file nusoap.php.

◆ $SOAPAction

soap_server::$SOAPAction = ''

Definition at line 2323 of file nusoap.php.

◆ $wsdl

soap_server::$wsdl = false

Definition at line 2335 of file nusoap.php.

◆ $xml_encoding

soap_server::$xml_encoding = ''

Definition at line 2322 of file nusoap.php.


The documentation for this class was generated from the following file: