Error 500 Internal Server Error

GET https://library.freie-volksmission.de/_all_dbs/api/recent

Forwarded to ErrorController (452514)

Exceptions

locale_compose(): Argument #1 ($subtags) must contain a "language" key

Exception

ValueError

  1. } elseif (\function_exists('locale_parse')) {
  2. $localeSubTags = locale_parse($locale);
  3. $locale = null;
  4. if (1 < \count($localeSubTags)) {
  5. array_pop($localeSubTags);
  6. $locale = locale_compose($localeSubTags) ?: null;
  7. }
  8. } elseif ($i = strrpos($locale, '_') ?: strrpos($locale, '-')) {
  9. $locale = substr($locale, 0, $i);
  10. } else {
  11. $locale = null;
in vendor/symfony/translation/Translator.php locale_compose (line 420)
  1. } elseif (\function_exists('locale_parse')) {
  2. $localeSubTags = locale_parse($locale);
  3. $locale = null;
  4. if (1 < \count($localeSubTags)) {
  5. array_pop($localeSubTags);
  6. $locale = locale_compose($localeSubTags) ?: null;
  7. }
  8. } elseif ($i = strrpos($locale, '_') ?: strrpos($locale, '-')) {
  9. $locale = substr($locale, 0, $i);
  10. } else {
  11. $locale = null;
in vendor/symfony/translation/Translator.php -> computeFallbackLocales (line 389)
  1. private function loadFallbackCatalogues(string $locale): void
  2. {
  3. $current = $this->catalogues[$locale];
  4. foreach ($this->computeFallbackLocales($locale) as $fallback) {
  5. if (!isset($this->catalogues[$fallback])) {
  6. $this->initializeCatalogue($fallback);
  7. }
  8. $fallbackCatalogue = new MessageCatalogue($fallback, $this->getAllMessages($this->catalogues[$fallback]));
in vendor/symfony/translation/Translator.php -> loadFallbackCatalogues (line 278)
  1. } catch (NotFoundResourceException $e) {
  2. if (!$this->computeFallbackLocales($locale)) {
  3. throw $e;
  4. }
  5. }
  6. $this->loadFallbackCatalogues($locale);
  7. }
  8. private function initializeCacheCatalogue(string $locale): void
  9. {
  10. if (isset($this->catalogues[$locale])) {
  1. }
  2. protected function initializeCatalogue(string $locale): void
  3. {
  4. $this->initialize();
  5. parent::initializeCatalogue($locale);
  6. }
  7. /**
  8. * @internal
  9. */
in vendor/symfony/translation/Translator.php -> initializeCatalogue (line 306)
  1. $this->catalogues[$locale] = include $cache->getPath();
  2. }
  3. private function dumpCatalogue(string $locale, ConfigCacheInterface $cache): void
  4. {
  5. $this->initializeCatalogue($locale);
  6. $fallbackContent = $this->getFallbackContent($this->catalogues[$locale]);
  7. $content = \sprintf(<<<EOF
  8. <?php
in vendor/symfony/translation/Translator.php -> dumpCatalogue (line 291)
  1. }
  2. $this->assertValidLocale($locale);
  3. $cache = $this->getConfigCacheFactory()->cache($this->getCatalogueCachePath($locale),
  4. function (ConfigCacheInterface $cache) use ($locale) {
  5. $this->dumpCatalogue($locale, $cache);
  6. }
  7. );
  8. if (isset($this->catalogues[$locale])) {
  9. /* Catalogue has been initialized as it was written out to cache. */
in vendor/symfony/config/ResourceCheckerConfigCacheFactory.php -> {closure:Symfony\Component\Translation\Translator::initializeCacheCatalogue():290} (line 34)
  1. public function cache(string $file, callable $callable): ConfigCacheInterface
  2. {
  3. $cache = new ResourceCheckerConfigCache($file, $this->resourceCheckers);
  4. if (!$cache->isFresh()) {
  5. $callable($cache);
  6. }
  7. return $cache;
  8. }
  9. }
  1. /* Catalogue already initialized. */
  2. return;
  3. }
  4. $this->assertValidLocale($locale);
  5. $cache = $this->getConfigCacheFactory()->cache($this->getCatalogueCachePath($locale),
  6. function (ConfigCacheInterface $cache) use ($locale) {
  7. $this->dumpCatalogue($locale, $cache);
  8. }
  9. );
in vendor/symfony/translation/Translator.php -> initializeCacheCatalogue (line 263)
  1. protected function loadCatalogue(string $locale): void
  2. {
  3. if (null === $this->cacheDir) {
  4. $this->initializeCatalogue($locale);
  5. } else {
  6. $this->initializeCacheCatalogue($locale);
  7. }
  8. }
  9. protected function initializeCatalogue(string $locale): void
  10. {
in vendor/symfony/translation/Translator.php -> loadCatalogue (line 237)
  1. } else {
  2. $this->assertValidLocale($locale);
  3. }
  4. if (!isset($this->catalogues[$locale])) {
  5. $this->loadCatalogue($locale);
  6. }
  7. return $this->catalogues[$locale];
  8. }
in vendor/symfony/translation/Translator.php -> getCatalogue (line 187)
  1. return '';
  2. }
  3. $domain ??= 'messages';
  4. $catalogue = $this->getCatalogue($locale);
  5. $locale = $catalogue->getLocale();
  6. while (!$catalogue->defines($id, $domain)) {
  7. if ($cat = $catalogue->getFallbackCatalogue()) {
  8. $catalogue = $cat;
  9. $locale = $catalogue->getLocale();
  1. ) {
  2. }
  3. public function trans(?string $id, array $parameters = [], ?string $domain = null, ?string $locale = null): string
  4. {
  5. $trans = $this->translator->trans($id = (string) $id, $parameters, $domain, $locale);
  6. $this->collectMessage($locale, $domain, $id, $trans, $parameters);
  7. return $trans;
  8. }
DataCollectorTranslator->trans() in src/Controller/LibraryController.php (line 231)
  1. $count = 20;
  2. $spokenRecords = $databaseService->GetRecentRecords($request->getLocale(), RecordType::SPOKEN, $count);
  3. $spoken = [
  4. 'OriginatorText' => $translatorInterface->trans('speaker', domain: 'library'),
  5. 'Records' => []
  6. ];
  7. foreach ($spokenRecords as $spokenRecord)
  8. {
  9. $selectedLanguage = null;
  1. $this->dispatcher->dispatch($event, KernelEvents::CONTROLLER_ARGUMENTS);
  2. $controller = $event->getController();
  3. $arguments = $event->getArguments();
  4. // call controller
  5. $response = $controller(...$arguments);
  6. // view
  7. if (!$response instanceof Response) {
  8. $event = new ViewEvent($this, $request, $type, $response, $event);
  9. $this->dispatcher->dispatch($event, KernelEvents::VIEW);
  1. $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  2. $this->requestStack->push($request);
  3. $response = null;
  4. try {
  5. return $response = $this->handleRaw($request, $type);
  6. } catch (\Throwable $e) {
  7. if ($e instanceof \Error && !$this->handleAllThrowables) {
  8. throw $e;
  9. }
  1. $this->boot();
  2. ++$this->requestStackSize;
  3. $this->resetServices = true;
  4. try {
  5. return $this->getHttpKernel()->handle($request, $type, $catch);
  6. } finally {
  7. --$this->requestStackSize;
  8. }
  9. }
  1. ) {
  2. }
  3. public function run(): int
  4. {
  5. $response = $this->kernel->handle($this->request);
  6. if (Kernel::VERSION_ID >= 60400) {
  7. $response->send(false);
  8. if (\function_exists('fastcgi_finish_request') && !$this->debug) {
in vendor/autoload_runtime.php -> run (line 29)
  1. $app = $app(...$args);
  2. exit(
  3. $runtime
  4. ->getRunner($app)
  5. ->run()
  6. );
require_once('/var/www/library/vendor/autoload_runtime.php') in public/index.php (line 5)
  1. <?php
  2. use App\Kernel;
  3. require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
  4. return function (array $context) {
  5. return new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);
  6. };

Logs

Level Channel Message
INFO 12:28:21 request Matched route "_profiler".
{
    "route": "_profiler",
    "route_parameters": {
        "_route": "_profiler",
        "_controller": "web_profiler.controller.profiler::panelAction",
        "token": "b04859"
    },
    "request_uri": "https://library.freie-volksmission.de/_profiler/b04859",
    "method": "GET"
}
DEBUG 12:28:21 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure"
}
DEBUG 12:28:21 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest"
}
DEBUG 12:28:21 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest"
}
DEBUG 12:28:21 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale"
}
DEBUG 12:28:21 event Notified event "kernel.request" to listener "Symfony\Component\AssetMapper\AssetMapperDevServerSubscriber::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\AssetMapper\\AssetMapperDevServerSubscriber::onKernelRequest"
}
DEBUG 12:28:21 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest"
}
DEBUG 12:28:21 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest"
}
DEBUG 12:28:21 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest"
}
DEBUG 12:28:21 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator"
}
DEBUG 12:28:21 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest"
}
DEBUG 12:28:21 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController"
}
DEBUG 12:28:21 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController"
}
DEBUG 12:28:21 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsCsrfTokenValidAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsCsrfTokenValidAttributeListener::onKernelControllerArguments"
}
DEBUG 12:28:21 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments"
}
DEBUG 12:28:21 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments"
}
DEBUG 12:28:21 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\Controller\ArgumentResolver\RequestPayloadValueResolver::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\Controller\\ArgumentResolver\\RequestPayloadValueResolver::onKernelControllerArguments"
}
DEBUG 12:28:21 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments"
}

Stack Trace

ValueError
ValueError:
locale_compose(): Argument #1 ($subtags) must contain a "language" key

  at vendor/symfony/translation/Translator.php:420
  at locale_compose()
     (vendor/symfony/translation/Translator.php:420)
  at Symfony\Component\Translation\Translator->computeFallbackLocales()
     (vendor/symfony/translation/Translator.php:389)
  at Symfony\Component\Translation\Translator->loadFallbackCatalogues()
     (vendor/symfony/translation/Translator.php:278)
  at Symfony\Component\Translation\Translator->initializeCatalogue()
     (vendor/symfony/framework-bundle/Translation/Translator.php:127)
  at Symfony\Bundle\FrameworkBundle\Translation\Translator->initializeCatalogue()
     (vendor/symfony/translation/Translator.php:306)
  at Symfony\Component\Translation\Translator->dumpCatalogue()
     (vendor/symfony/translation/Translator.php:291)
  at Symfony\Component\Translation\Translator->{closure:Symfony\Component\Translation\Translator::initializeCacheCatalogue():290}()
     (vendor/symfony/config/ResourceCheckerConfigCacheFactory.php:34)
  at Symfony\Component\Config\ResourceCheckerConfigCacheFactory->cache()
     (vendor/symfony/translation/Translator.php:289)
  at Symfony\Component\Translation\Translator->initializeCacheCatalogue()
     (vendor/symfony/translation/Translator.php:263)
  at Symfony\Component\Translation\Translator->loadCatalogue()
     (vendor/symfony/translation/Translator.php:237)
  at Symfony\Component\Translation\Translator->getCatalogue()
     (vendor/symfony/translation/Translator.php:187)
  at Symfony\Component\Translation\Translator->trans()
     (vendor/symfony/translation/DataCollectorTranslator.php:38)
  at Symfony\Component\Translation\DataCollectorTranslator->trans()
     (src/Controller/LibraryController.php:231)
  at App\Controller\LibraryController->ApiRecent()
     (vendor/symfony/http-kernel/HttpKernel.php:183)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw()
     (vendor/symfony/http-kernel/HttpKernel.php:76)
  at Symfony\Component\HttpKernel\HttpKernel->handle()
     (vendor/symfony/http-kernel/Kernel.php:182)
  at Symfony\Component\HttpKernel\Kernel->handle()
     (vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35)
  at Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run()
     (vendor/autoload_runtime.php:29)
  at require_once('/var/www/library/vendor/autoload_runtime.php')
     (public/index.php:5)