Соединение с Soap, как отловить connect timeout error
Добавлено: 2012.11.15, 10:15
Через логин-форму беру от юзера логин/пароль и запросом к soap сравниваю их с данными, отдаваемые сервером. Всё хорошо, данные отдаются, сравниваю, отдаю в валидейт формы,
но если удалённый сервер лежит, то по таймауту выдается страшный экран с ошибкой:
Пытаюсь отлавливать этот эксепшн, но вижу, что-то неправильно делаю, т.к. не срабатывает:
Чего-то похоже, не хватает.
Как правильно закодить такую ситуацию?
Хотя бы Вместо экрана с PHP error делать редирект на нужную страницу с уведомлением, что "временно не работает"
но если удалённый сервер лежит, то по таймауту выдается страшный экран с ошибкой:
Код: Выделить всё
PHP Error
SoapClient::SoapClient(http://xx.xx.xxx.xx:xxxx/uccp?wsdl): failed to open stream: Connection timed out
Код: Выделить всё
try {
$obj = new SoapClient(UC::WSDL, array( "login" => UC::USER,"password" => UC::PASS, "exceptions" => 1, "trace" => 1));
return $obj;
}
catch (SoapFault $e) {
Yii::log($obj->__getLastRequest());
Yii::log($obj->__getLastResponse());
throw new CHttpException(503,'Невозможно установить соединение с UCC-провайдером. Повторите попытку позже.');
}
Как правильно закодить такую ситуацию?
Хотя бы Вместо экрана с PHP error делать редирект на нужную страницу с уведомлением, что "временно не работает"