2016-01-05 3 views
0

Я получаю сообщение об ошибке:SOAP-ERROR: Разбор WSDL: Не удалось загрузить из - XAMPP

SOAP-ERROR: Parsing WSDL: Couldn't load from ' https://apphom.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl ' : failed to load external entity " https://apphom.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl

Я использую:

  • XAMPP для Windows, 5.6.15 5.6. 15
  • для Windows 8.1
  • PHP Version 5.6.15

И в моем php.ini я включил опции:

extension=php_openssl.dll 
extension=php_curl.dll 
extension=php_xmlrpc.dll 

Но я не могу решить эту ошибку, уже исследованные несколько решений.

Исходный код, который я пытаюсь запустить, here

ответ

0

Я решил эту проблему путем переписывания мой метод

перед тем

public static function getSoapClient() 
{ 
    if (!self::$_soapClient) { 
     $wsdl = Bootstrap::getConfig()->getWsdlAtendeCliente(); 

     self::$_soapClient = new \SoapClient($wsdl, array(
      "trace"    => Bootstrap::getConfig()->getEnv() != Config::ENV_PRODUCTION, 
      "exceptions"   => Bootstrap::getConfig()->getEnv() != Config::ENV_PRODUCTION, 
      'encoding'   => self::WEB_SERVICE_CHARSET, 
      'connection_timeout' => 60, 
      'cache_wsdl'   => WSDL_CACHE_MEMORY, 
     )); 
    } 

    return self::$_soapClient; 
} 

после

public static function getSoapClient() 
{ 
    if (!self::$_soapClient) { 
     $wsdl = Bootstrap::getConfig()->getWsdlAtendeCliente(); 

     $opts = array(
      'ssl' => array(
       'ciphers'   =>'RC4-SHA', 
       'verify_peer'  =>false, 
       'verify_peer_name' =>false 
      ) 
     ); 
     // SOAP 1.1 client 
     $params = array (
      'encoding'    => self::WEB_SERVICE_CHARSET, 
      'verifypeer'   => false, 
      'verifyhost'   => false, 
      'soap_version'   => SOAP_1_1, 
      'trace'     => Bootstrap::getConfig()->getEnv() != Config::ENV_PRODUCTION, 
      'exceptions'   => Bootstrap::getConfig()->getEnv() != Config::ENV_PRODUCTION, 
      "connection_timeout" => 180, 
      'stream_context'  => stream_context_create($opts) 
     ); 

     self::$_soapClient = new \SoapClient($wsdl, $params); 
    } 

    return self::$_soapClient; 
} 
Смежные вопросы