private function __buildHeader()
 {
     // we have to build the http path here since this request is client independent!
     $httpPath = ilSoapFunctions::buildHTTPPath();
     $this->xmlSetDtdDef("<!DOCTYPE Installation PUBLIC \"-//ILIAS//DTD Group//EN\" \"" . $httpPath . "/xml/ilias_client_3_10.dtd\">");
     $this->xmlSetGenCmt("Export of ILIAS clients.");
     $this->xmlHeader();
     $this->xmlStartTag("Installation", array("version" => ILIAS_VERSION, "path" => $httpPath));
     return true;
 }
Example #2
0
* @package ilias
*/
chdir("../..");
define("ILIAS_MODULE", "webservice/soap");
define("IL_SOAPMODE_NUSOAP", 0);
define("IL_SOAPMODE_INTERNAL", 0);
require_once "./Services/Init/classes/class.ilIniFile.php";
$ilIliasIniFile = new ilIniFile("./ilias.ini.php");
if (!$ilIliasIniFile) {
    define("IL_SOAPMODE", IL_SOAPMODE_NUSOAP);
} else {
    $ilIliasIniFile->read();
    $serverSettings = $ilIliasIniFile->readGroup("server");
    if (!array_key_exists("soap", $serverSettings) || $serverSettings["soap"] == "nusoap" || !class_exists("SoapServer")) {
        define("IL_SOAPMODE", IL_SOAPMODE_NUSOAP);
    } else {
        define("IL_SOAPMODE", IL_SOAPMODE_INTERNAL);
    }
}
include_once "Services/Context/classes/class.ilContext.php";
ilContext::init(ilContext::CONTEXT_SOAP);
if (IL_SOAPMODE == IL_SOAPMODE_INTERNAL && strcasecmp($_SERVER["REQUEST_METHOD"], "post") == 0) {
    // called by webservice
    //ini_set("soap.wsdl_cache_enabled", "1");
    include_once 'webservice/soap/include/inc.soap_functions.php';
    $soapServer = new SoapServer(ilSoapFunctions::buildHTTPPath() . "/webservice/soap/nusoapserver.php?wsdl");
    $soapServer->setClass("ilSoapFunctions");
    $soapServer->handle();
} else {
    include 'webservice/soap/nusoapserver.php';
}