From f87db0a214ad7a71bca4c26a5353b4072f4d42c5 Mon Sep 17 00:00:00 2001 From: Fabian Helfer Date: Thu, 12 Feb 2026 12:04:29 +0100 Subject: [PATCH 1/6] [Improvement] Init: Introduce ErrorController to handle ilCtrl routing errors as HTTP 404 --- .../ErrorHandling/ErrorPageResponder.php | 78 +++++++++++++++++++ components/ILIAS/Init/resources/error.php | 28 ++----- components/ILIAS/Init/resources/ilias.php | 24 ++++-- lang/ilias_de.lang | 2 + lang/ilias_en.lang | 2 + templates/default/tpl.error.html | 3 + 6 files changed, 110 insertions(+), 27 deletions(-) create mode 100644 components/ILIAS/Init/classes/ErrorHandling/ErrorPageResponder.php diff --git a/components/ILIAS/Init/classes/ErrorHandling/ErrorPageResponder.php b/components/ILIAS/Init/classes/ErrorHandling/ErrorPageResponder.php new file mode 100644 index 000000000000..fe06e138171a --- /dev/null +++ b/components/ILIAS/Init/classes/ErrorHandling/ErrorPageResponder.php @@ -0,0 +1,78 @@ +dic = $dic; + } + + public function handleError( + int $http_status_code, + string $error_lang_key, + ?string $link_url = null, + ?string $link_lang_key = null + ): void { + $this->dic->globalScreen()->tool()->context()->claim()->external(); + + $this->dic->language()->loadLanguageModule('error'); + + $local_tpl = new ilGlobalTemplate('tpl.error.html', true, true); + $local_tpl->setCurrentBlock('msg_box'); + $local_tpl->setVariable( + 'MESSAGE_BOX', + $this->dic->ui()->renderer()->render( + $this->dic->ui()->factory()->messageBox()->failure( + $this->dic->language()->txt($error_lang_key) + ) + ) + ); + $local_tpl->parseCurrentBlock(); + + if ($link_url !== null && $link_lang_key !== null) { + $local_tpl->setCurrentBlock('ErrorLink'); + $local_tpl->setVariable('TXT_LINK', $this->dic->language()->txt($link_lang_key)); + $local_tpl->setVariable('LINK', ilUtil::secureUrl($link_url)); + $local_tpl->parseCurrentBlock(); + } + + $this->dic->http()->saveResponse( + $this->dic->http() + ->response() + ->withStatus($http_status_code) + ->withHeader(ResponseHeader::CONTENT_TYPE, 'text/html') + ); + + $this->dic->ui()->mainTemplate()->setContent($local_tpl->get()); + $this->dic->ui()->mainTemplate()->printToStdout(); + + $this->dic->http()->close(); + } +} diff --git a/components/ILIAS/Init/resources/error.php b/components/ILIAS/Init/resources/error.php index 2f537c794b78..720fc6bc3c40 100644 --- a/components/ILIAS/Init/resources/error.php +++ b/components/ILIAS/Init/resources/error.php @@ -20,37 +20,23 @@ namespace ILIAS\Init; +use ILIAS\Init\ErrorHandling\ErrorPageResponder; + try { require_once '../vendor/composer/vendor/autoload.php'; require_once __DIR__ . '/../artifacts/bootstrap_default.php'; entry_point('ILIAS Legacy Initialisation Adapter'); - $DIC->globalScreen()->tool()->context()->claim()->external(); - - $lng->loadLanguageModule('error'); - $txt = $lng->txt('error_back_to_repository'); - - $local_tpl = new \ilGlobalTemplate('tpl.error.html', true, true); - $local_tpl->setCurrentBlock('ErrorLink'); - $local_tpl->setVariable('TXT_LINK', $txt); - $local_tpl->setVariable('LINK', \ilUtil::secureUrl(ILIAS_HTTP_PATH . '/ilias.php?baseClass=ilRepositoryGUI')); - $local_tpl->parseCurrentBlock(); - \ilSession::clear('referer'); \ilSession::clear('message'); - $DIC->http()->saveResponse( - $DIC->http() - ->response() - ->withStatus(500) - ->withHeader(\ILIAS\HTTP\Response\ResponseHeader::CONTENT_TYPE, 'text/html') + (new ErrorPageResponder($DIC))->handleError( + 500, + 'error_sry_error', + ILIAS_HTTP_PATH . '/ilias.php?baseClass=ilRepositoryGUI', + 'error_back_to_repository' ); - - $tpl->setContent($local_tpl->get()); - $tpl->printToStdout(); - - $DIC->http()->close(); } catch (\Throwable $e) { if (\defined('DEVMODE') && DEVMODE) { throw $e; diff --git a/components/ILIAS/Init/resources/ilias.php b/components/ILIAS/Init/resources/ilias.php index b331a6b6e2c1..e5a582006f3d 100644 --- a/components/ILIAS/Init/resources/ilias.php +++ b/components/ILIAS/Init/resources/ilias.php @@ -18,6 +18,8 @@ declare(strict_types=1); +use ILIAS\Init\ErrorHandling\ErrorPageResponder; + if (!file_exists('../ilias.ini.php')) { die('The ILIAS setup is not completed. Please run the setup routine.'); } @@ -31,19 +33,29 @@ try { $DIC->ctrl()->callBaseClass(); -} catch (ilCtrlException $e) { +} catch (Throwable $e) { if (defined('DEVMODE') && DEVMODE) { throw $e; } - if (!str_contains($e->getMessage(), 'not given a baseclass') && - !str_contains($e->getMessage(), 'not a baseclass')) { - throw new RuntimeException(sprintf('ilCtrl could not dispatch request: %s', $e->getMessage()), 0, $e); + $is_ctrl_error = ($e instanceof ilCtrlException) || + str_contains($e->getMessage(), 'ilCtrl'); + + if (!$is_ctrl_error) { + throw $e; } - $DIC->logger()->root()->error($e->getMessage()); + $DIC->logger()->root()->error( + sprintf('ilCtrl could not dispatch request: %s', $e->getMessage()) + ); $DIC->logger()->root()->error($e->getTraceAsString()); - $DIC->ctrl()->redirectToURL(ilUtil::_getHttpPath()); + + (new ErrorPageResponder($DIC))->handleError( + 404, + 'http_404_not_found', + ILIAS_HTTP_PATH . '/ilias.php?baseClass=ilRepositoryGUI', + 'error_back_to_repository' + ); } $DIC['ilBench']->save(); diff --git a/lang/ilias_de.lang b/lang/ilias_de.lang index 588f6cedd46d..6514ad9d76cb 100644 --- a/lang/ilias_de.lang +++ b/lang/ilias_de.lang @@ -9217,6 +9217,8 @@ ecs#:#ecs_wiki_export_enabled#:#Freigeben ecs#:#ecs_wiki_export_obj_settings#:#Einstellungen für Wikifreigaben error#:#error_back_to_repository#:#Zurück zum Magazin error#:#error_sry_error#:#Es ist leider ein Fehler aufgetreten. +error#:#http_404_not_found#:#Die angeforderte Seite wurde nicht gefunden. +error#:#http_500_internal_server_error#:#Es ist ein interner Serverfehler aufgetreten. etal#:#appointments#:#Sitzungen etal#:#cal_type_tals#:#Gespräche etal#:#change_date_of_series#:#Gesprächsserie anpassen diff --git a/lang/ilias_en.lang b/lang/ilias_en.lang index 06c2a6135ee2..da70cdbc76f1 100644 --- a/lang/ilias_en.lang +++ b/lang/ilias_en.lang @@ -9190,6 +9190,8 @@ ecs#:#ecs_wiki_export_enabled#:#Release this Wiki ecs#:#ecs_wiki_export_obj_settings#:#Wiki Release Settings error#:#error_back_to_repository#:#Back to Repository error#:#error_sry_error#:#Sorry, an error occurred. +error#:#http_404_not_found#:#The requested page could not be found. +error#:#http_500_internal_server_error#:#An internal server error occurred. etal#:#appointments#:#Appointments etal#:#cal_type_tals#:#Talks etal#:#change_date_of_series#:#Change date of talk series diff --git a/templates/default/tpl.error.html b/templates/default/tpl.error.html index 13aab08a6d16..1a82f0db8057 100755 --- a/templates/default/tpl.error.html +++ b/templates/default/tpl.error.html @@ -1,3 +1,6 @@ + +{MESSAGE_BOX} +

From eefde6f92f0fe918ae5a1ac885eb329b1c969703 Mon Sep 17 00:00:00 2001 From: Fabian Helfer Date: Thu, 12 Feb 2026 13:08:10 +0100 Subject: [PATCH 2/6] [Improvement] Init: ErroPageResponder Add StatusCodes & remove ilCtrl Message --- components/ILIAS/Init/resources/error.php | 3 ++- components/ILIAS/Init/resources/ilias.php | 7 +++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/components/ILIAS/Init/resources/error.php b/components/ILIAS/Init/resources/error.php index 720fc6bc3c40..13f324c67f9e 100644 --- a/components/ILIAS/Init/resources/error.php +++ b/components/ILIAS/Init/resources/error.php @@ -21,6 +21,7 @@ namespace ILIAS\Init; use ILIAS\Init\ErrorHandling\ErrorPageResponder; +use ILIAS\HTTP\StatusCode; try { require_once '../vendor/composer/vendor/autoload.php'; @@ -32,7 +33,7 @@ \ilSession::clear('message'); (new ErrorPageResponder($DIC))->handleError( - 500, + StatusCode::HTTP_INTERNAL_SERVER_ERROR, 'error_sry_error', ILIAS_HTTP_PATH . '/ilias.php?baseClass=ilRepositoryGUI', 'error_back_to_repository' diff --git a/components/ILIAS/Init/resources/ilias.php b/components/ILIAS/Init/resources/ilias.php index e5a582006f3d..ec9960f191b7 100644 --- a/components/ILIAS/Init/resources/ilias.php +++ b/components/ILIAS/Init/resources/ilias.php @@ -19,6 +19,7 @@ declare(strict_types=1); use ILIAS\Init\ErrorHandling\ErrorPageResponder; +use ILIAS\HTTP\StatusCode; if (!file_exists('../ilias.ini.php')) { die('The ILIAS setup is not completed. Please run the setup routine.'); @@ -45,13 +46,11 @@ throw $e; } - $DIC->logger()->root()->error( - sprintf('ilCtrl could not dispatch request: %s', $e->getMessage()) - ); + $DIC->logger()->root()->error($e->getMessage()); $DIC->logger()->root()->error($e->getTraceAsString()); (new ErrorPageResponder($DIC))->handleError( - 404, + StatusCode::HTTP_NOT_FOUND, 'http_404_not_found', ILIAS_HTTP_PATH . '/ilias.php?baseClass=ilRepositoryGUI', 'error_back_to_repository' From e057b49842443b39cfdd0e991f4df50e87cf188e Mon Sep 17 00:00:00 2001 From: Fabian Helfer Date: Thu, 12 Feb 2026 14:19:01 +0100 Subject: [PATCH 3/6] [Improvement] Init: ErroPageResponder FallbackResponse --- .../ErrorHandling/ErrorPageResponder.php | 92 ++++++++++++++----- components/ILIAS/Init/resources/error.php | 49 ++-------- components/ILIAS/Init/resources/ilias.php | 5 +- 3 files changed, 78 insertions(+), 68 deletions(-) diff --git a/components/ILIAS/Init/classes/ErrorHandling/ErrorPageResponder.php b/components/ILIAS/Init/classes/ErrorHandling/ErrorPageResponder.php index fe06e138171a..486aed86acc3 100644 --- a/components/ILIAS/Init/classes/ErrorHandling/ErrorPageResponder.php +++ b/components/ILIAS/Init/classes/ErrorHandling/ErrorPageResponder.php @@ -21,58 +21,100 @@ namespace ILIAS\Init\ErrorHandling; use ilUtil; +use Throwable; +use DateTimeZone; +use PDOException; use ilGlobalTemplate; +use DateTimeImmutable; use ILIAS\DI\Container; +use ILIAS\HTTP\StatusCode; use ILIAS\HTTP\Response\ResponseHeader; class ErrorPageResponder { - private Container $dic; - - public function __construct(Container $dic) - { - $this->dic = $dic; - } - public function handleError( + Container $dic, int $http_status_code, - string $error_lang_key, + ?string $error_lang_key = null, ?string $link_url = null, ?string $link_lang_key = null ): void { - $this->dic->globalScreen()->tool()->context()->claim()->external(); + $dic->globalScreen()->tool()->context()->claim()->external(); - $this->dic->language()->loadLanguageModule('error'); + $dic->language()->loadLanguageModule('error'); $local_tpl = new ilGlobalTemplate('tpl.error.html', true, true); - $local_tpl->setCurrentBlock('msg_box'); - $local_tpl->setVariable( - 'MESSAGE_BOX', - $this->dic->ui()->renderer()->render( - $this->dic->ui()->factory()->messageBox()->failure( - $this->dic->language()->txt($error_lang_key) + + if ($error_lang_key !== null) { + $local_tpl->setCurrentBlock('msg_box'); + $local_tpl->setVariable( + 'MESSAGE_BOX', + $dic->ui()->renderer()->render( + $dic->ui()->factory()->messageBox()->failure( + $dic->language()->txt($error_lang_key) + ) ) - ) - ); - $local_tpl->parseCurrentBlock(); + ); + $local_tpl->parseCurrentBlock(); + } if ($link_url !== null && $link_lang_key !== null) { $local_tpl->setCurrentBlock('ErrorLink'); - $local_tpl->setVariable('TXT_LINK', $this->dic->language()->txt($link_lang_key)); + $local_tpl->setVariable('TXT_LINK', $dic->language()->txt($link_lang_key)); $local_tpl->setVariable('LINK', ilUtil::secureUrl($link_url)); $local_tpl->parseCurrentBlock(); } - $this->dic->http()->saveResponse( - $this->dic->http() + $dic->http()->saveResponse( + $dic->http() ->response() ->withStatus($http_status_code) ->withHeader(ResponseHeader::CONTENT_TYPE, 'text/html') ); - $this->dic->ui()->mainTemplate()->setContent($local_tpl->get()); - $this->dic->ui()->mainTemplate()->printToStdout(); + $dic->ui()->mainTemplate()->setContent($local_tpl->get()); + $dic->ui()->mainTemplate()->printToStdout(); + + $dic->http()->close(); + } + + public function sendFallbackResponse(Throwable $e): never + { + if (defined('DEVMODE') && DEVMODE) { + throw $e; + } + + if (!headers_sent()) { + http_response_code(StatusCode::HTTP_INTERNAL_SERVER_ERROR); + header('Content-Type: text/plain; charset=UTF-8'); + } + + $incident_id = session_id() . '_' . (new \Random\Randomizer())->getInt(1, 9999); + $timestamp = (new DateTimeImmutable()) + ->setTimezone(new DateTimeZone('UTC')) + ->format('Y-m-d\TH:i:s\Z'); + + echo "Internal Server Error\n"; + echo "Incident: $incident_id\n"; + echo "Timestamp: $timestamp\n"; + + if ($e instanceof PDOException) { + echo "Message: A database error occurred. Please contact the system administrator with the incident id.\n"; + } else { + echo "Message: {$e->getMessage()}\n"; + } + + error_log(sprintf( + "[%s] INCIDENT %s — Uncaught %s: %s in %s:%d\nStack trace:\n%s\n", + $timestamp, + $incident_id, + get_class($e), + $e->getMessage(), + $e->getFile(), + $e->getLine(), + $e->getTraceAsString() + )); - $this->dic->http()->close(); + exit(1); } } diff --git a/components/ILIAS/Init/resources/error.php b/components/ILIAS/Init/resources/error.php index 13f324c67f9e..7dab16546503 100644 --- a/components/ILIAS/Init/resources/error.php +++ b/components/ILIAS/Init/resources/error.php @@ -20,8 +20,10 @@ namespace ILIAS\Init; -use ILIAS\Init\ErrorHandling\ErrorPageResponder; +use ilSession; +use Throwable; use ILIAS\HTTP\StatusCode; +use ILIAS\Init\ErrorHandling\ErrorPageResponder; try { require_once '../vendor/composer/vendor/autoload.php'; @@ -32,48 +34,13 @@ \ilSession::clear('referer'); \ilSession::clear('message'); - (new ErrorPageResponder($DIC))->handleError( + (new ErrorPageResponder())->handleError( + $DIC, StatusCode::HTTP_INTERNAL_SERVER_ERROR, - 'error_sry_error', + null, ILIAS_HTTP_PATH . '/ilias.php?baseClass=ilRepositoryGUI', 'error_back_to_repository' ); -} catch (\Throwable $e) { - if (\defined('DEVMODE') && DEVMODE) { - throw $e; - } - - /* - * Since we are already in the `error.php` and an unexpected error occurred, we should not rely on the $DIC or any - * other components here and use "Vanilla PHP" instead to handle the error. - */ - if (!headers_sent()) { - http_response_code(500); - header('Content-Type: text/plain; charset=UTF-8'); - } - - $incident_id = session_id() . '_' . (new \Random\Randomizer())->getInt(1, 9999); - $timestamp = (new \DateTimeImmutable())->setTimezone(new \DateTimeZone('UTC'))->format('Y-m-d\TH:i:s\Z'); - - echo "Internal Server Error\n"; - echo "Incident: $incident_id\n"; - echo "Timestamp: $timestamp\n"; - if ($e instanceof \PDOException) { - echo "Message: A database error occurred. Please contact the system administrator with the incident id.\n"; - } else { - echo "Message: {$e->getMessage()}\n"; - } - - error_log(\sprintf( - "[%s] INCIDENT %s — Uncaught %s: %s in %s:%d\nStack trace:\n%s\n", - $timestamp, - $incident_id, - \get_class($e), - $e->getMessage(), - $e->getFile(), - $e->getLine(), - $e->getTraceAsString() - )); - - exit(1); +} catch (Throwable $e) { + (new ErrorPageResponder())->sendFallbackResponse($e); } diff --git a/components/ILIAS/Init/resources/ilias.php b/components/ILIAS/Init/resources/ilias.php index ec9960f191b7..7a7c3e7e8763 100644 --- a/components/ILIAS/Init/resources/ilias.php +++ b/components/ILIAS/Init/resources/ilias.php @@ -18,8 +18,8 @@ declare(strict_types=1); -use ILIAS\Init\ErrorHandling\ErrorPageResponder; use ILIAS\HTTP\StatusCode; +use ILIAS\Init\ErrorHandling\ErrorPageResponder; if (!file_exists('../ilias.ini.php')) { die('The ILIAS setup is not completed. Please run the setup routine.'); @@ -49,7 +49,8 @@ $DIC->logger()->root()->error($e->getMessage()); $DIC->logger()->root()->error($e->getTraceAsString()); - (new ErrorPageResponder($DIC))->handleError( + (new ErrorPageResponder())->handleError( + $DIC, StatusCode::HTTP_NOT_FOUND, 'http_404_not_found', ILIAS_HTTP_PATH . '/ilias.php?baseClass=ilRepositoryGUI', From 28176f749f9e48cba1eab2873e8a7eff0f0afe98 Mon Sep 17 00:00:00 2001 From: Fabian Helfer Date: Thu, 12 Feb 2026 16:58:47 +0100 Subject: [PATCH 4/6] [Improvement] Init: ErroPageResponder ilCtrlPathException --- components/ILIAS/Init/resources/ilias.php | 9 +----- .../classes/Path/class.ilCtrlExistingPath.php | 4 ++- .../UICore/exceptions/ilCtrlPathException.php | 31 +++++++++++++++++++ 3 files changed, 35 insertions(+), 9 deletions(-) create mode 100644 components/ILIAS/UICore/exceptions/ilCtrlPathException.php diff --git a/components/ILIAS/Init/resources/ilias.php b/components/ILIAS/Init/resources/ilias.php index 7a7c3e7e8763..6df93de27890 100644 --- a/components/ILIAS/Init/resources/ilias.php +++ b/components/ILIAS/Init/resources/ilias.php @@ -34,18 +34,11 @@ try { $DIC->ctrl()->callBaseClass(); -} catch (Throwable $e) { +} catch (ilCtrlException $e) { if (defined('DEVMODE') && DEVMODE) { throw $e; } - $is_ctrl_error = ($e instanceof ilCtrlException) || - str_contains($e->getMessage(), 'ilCtrl'); - - if (!$is_ctrl_error) { - throw $e; - } - $DIC->logger()->root()->error($e->getMessage()); $DIC->logger()->root()->error($e->getTraceAsString()); diff --git a/components/ILIAS/UICore/classes/Path/class.ilCtrlExistingPath.php b/components/ILIAS/UICore/classes/Path/class.ilCtrlExistingPath.php index c777bdb1ed4f..78d983ba01ab 100755 --- a/components/ILIAS/UICore/classes/Path/class.ilCtrlExistingPath.php +++ b/components/ILIAS/UICore/classes/Path/class.ilCtrlExistingPath.php @@ -18,6 +18,8 @@ declare(strict_types=1); +use ILIAS\UICore\exceptions\ilCtrlPathException; + /** * Class ilCtrlExistingPath * @@ -56,7 +58,7 @@ protected function ensureValidCidPath(): void $child_class = $this->structure->getClassNameByCid($child_cid); $allowed_children = $this->structure->getChildrenByCid($parent_cid) ?? []; if (null === $child_class || !in_array($child_class, $allowed_children, true)) { - throw new RuntimeException('ilCtrl: invalid ' . ilCtrlInterface::PARAM_CID_PATH . ' parameter requested.'); + throw new ilCtrlPathException('ilCtrl: invalid ' . ilCtrlInterface::PARAM_CID_PATH . ' parameter requested.'); } } } diff --git a/components/ILIAS/UICore/exceptions/ilCtrlPathException.php b/components/ILIAS/UICore/exceptions/ilCtrlPathException.php new file mode 100644 index 000000000000..11c3c531ce45 --- /dev/null +++ b/components/ILIAS/UICore/exceptions/ilCtrlPathException.php @@ -0,0 +1,31 @@ + Date: Fri, 13 Feb 2026 07:49:08 +0100 Subject: [PATCH 5/6] [Improvement] Init: ErroPageResponder ilCtrlPathException copyright --- .../UICore/exceptions/ilCtrlPathException.php | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/components/ILIAS/UICore/exceptions/ilCtrlPathException.php b/components/ILIAS/UICore/exceptions/ilCtrlPathException.php index 11c3c531ce45..77e215f461ff 100644 --- a/components/ILIAS/UICore/exceptions/ilCtrlPathException.php +++ b/components/ILIAS/UICore/exceptions/ilCtrlPathException.php @@ -1,20 +1,20 @@ Date: Fri, 13 Feb 2026 11:20:34 +0100 Subject: [PATCH 6/6] [Improvement] Init: ErroPageResponder Namespaces --- .../classes/ErrorHandling/{ => Http}/ErrorPageResponder.php | 2 +- components/ILIAS/Init/resources/error.php | 2 +- components/ILIAS/Init/resources/ilias.php | 2 +- .../ILIAS/UICore/classes/Path/class.ilCtrlExistingPath.php | 2 +- components/ILIAS/UICore/exceptions/ilCtrlPathException.php | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) rename components/ILIAS/Init/classes/ErrorHandling/{ => Http}/ErrorPageResponder.php (98%) diff --git a/components/ILIAS/Init/classes/ErrorHandling/ErrorPageResponder.php b/components/ILIAS/Init/classes/ErrorHandling/Http/ErrorPageResponder.php similarity index 98% rename from components/ILIAS/Init/classes/ErrorHandling/ErrorPageResponder.php rename to components/ILIAS/Init/classes/ErrorHandling/Http/ErrorPageResponder.php index 486aed86acc3..e3e6c12a9f3a 100644 --- a/components/ILIAS/Init/classes/ErrorHandling/ErrorPageResponder.php +++ b/components/ILIAS/Init/classes/ErrorHandling/Http/ErrorPageResponder.php @@ -18,7 +18,7 @@ declare(strict_types=1); -namespace ILIAS\Init\ErrorHandling; +namespace ILIAS\Init\ErrorHandling\Http; use ilUtil; use Throwable; diff --git a/components/ILIAS/Init/resources/error.php b/components/ILIAS/Init/resources/error.php index 7dab16546503..6aa4300d89bb 100644 --- a/components/ILIAS/Init/resources/error.php +++ b/components/ILIAS/Init/resources/error.php @@ -23,7 +23,7 @@ use ilSession; use Throwable; use ILIAS\HTTP\StatusCode; -use ILIAS\Init\ErrorHandling\ErrorPageResponder; +use ILIAS\Init\ErrorHandling\Http\ErrorPageResponder; try { require_once '../vendor/composer/vendor/autoload.php'; diff --git a/components/ILIAS/Init/resources/ilias.php b/components/ILIAS/Init/resources/ilias.php index 6df93de27890..be92ccbe69ef 100644 --- a/components/ILIAS/Init/resources/ilias.php +++ b/components/ILIAS/Init/resources/ilias.php @@ -19,7 +19,7 @@ declare(strict_types=1); use ILIAS\HTTP\StatusCode; -use ILIAS\Init\ErrorHandling\ErrorPageResponder; +use ILIAS\Init\ErrorHandling\Http\ErrorPageResponder; if (!file_exists('../ilias.ini.php')) { die('The ILIAS setup is not completed. Please run the setup routine.'); diff --git a/components/ILIAS/UICore/classes/Path/class.ilCtrlExistingPath.php b/components/ILIAS/UICore/classes/Path/class.ilCtrlExistingPath.php index 78d983ba01ab..f9566e9c18b0 100755 --- a/components/ILIAS/UICore/classes/Path/class.ilCtrlExistingPath.php +++ b/components/ILIAS/UICore/classes/Path/class.ilCtrlExistingPath.php @@ -18,7 +18,7 @@ declare(strict_types=1); -use ILIAS\UICore\exceptions\ilCtrlPathException; +use ILIAS\UICore\Exceptions\ilCtrlPathException; /** * Class ilCtrlExistingPath diff --git a/components/ILIAS/UICore/exceptions/ilCtrlPathException.php b/components/ILIAS/UICore/exceptions/ilCtrlPathException.php index 77e215f461ff..10a5c4d60259 100644 --- a/components/ILIAS/UICore/exceptions/ilCtrlPathException.php +++ b/components/ILIAS/UICore/exceptions/ilCtrlPathException.php @@ -18,7 +18,7 @@ declare(strict_types=1); -namespace ILIAS\UICore\exceptions; +namespace ILIAS\UICore\Exceptions; use ilCtrlException;