| exception |
Symfony\Component\Filesystem\Exception\IOException {#1351
#message: "Failed to create "/var/www/SAE301/public/uploads/articles/": mkdir(): Permission denied"
#code: 0
#file: "/var/www/SAE301/vendor/symfony/filesystem/Filesystem.php"
#line: 98
-path: "/var/www/SAE301/public/uploads/articles/"
trace: {
/var/www/SAE301/vendor/symfony/filesystem/Filesystem.php:98 {
Symfony\Component\Filesystem\Filesystem->mkdir(Traversable|array|string $dirs, int $mode = 511): void …
› if (!self::box('mkdir', $dir, $mode, true) && !is_dir($dir)) {
› throw new IOException(\sprintf('Failed to create "%s": ', $dir).self::$lastError, 0, null, $dir);
› }
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Form/Type/FileUploadType.php:154 {
EasyCorp\Bundle\EasyAdminBundle\Form\Type\FileUploadType->{closure:EasyCorp\Bundle\EasyAdminBundle\Form\Type\FileUploadType::configureOptions():142} …
› if ($isLocalFilesystem && !is_dir($value)) {
› $this->filesystem->mkdir($value);
› }
}
/var/www/SAE301/vendor/symfony/options-resolver/OptionsResolver.php:1124 {
Symfony\Component\OptionsResolver\OptionsResolver->offsetGet(mixed $option, bool $triggerDeprecation = true): mixed …
› foreach ($this->normalizers[$option] as $normalizer) {
› $value = $normalizer($this, $value);
› }
}
/var/www/SAE301/vendor/symfony/options-resolver/OptionsResolver.php:903 {
Symfony\Component\OptionsResolver\OptionsResolver->resolve(array $options = []): array …
› foreach ($clone->defaults as $option => $_) {
› $clone->offsetGet($option);
› }
}
/var/www/SAE301/vendor/symfony/form/ResolvedFormType.php:77 {
Symfony\Component\Form\ResolvedFormType->createBuilder(FormFactoryInterface $factory, string $name, array $options = []): FormBuilderInterface …
› try {
› $options = $this->getOptionsResolver()->resolve($options);
› } catch (ExceptionInterface $e) {
}
/var/www/SAE301/vendor/symfony/form/Extension/DataCollector/Proxy/ResolvedTypeDataCollectorProxy.php:58 {
Symfony\Component\Form\Extension\DataCollector\Proxy\ResolvedTypeDataCollectorProxy->createBuilder(FormFactoryInterface $factory, string $name, array $options = []): FormBuilderInterface …
› {
› $builder = $this->proxiedType->createBuilder($factory, $name, $options);
›
}
/var/www/SAE301/vendor/symfony/form/FormFactory.php:67 {
Symfony\Component\Form\FormFactory->createNamedBuilder(string $name, string $type = '…51', mixed $data = null, array $options = []): FormBuilderInterface …
›
› $builder = $type->createBuilder($this, $name, $options);
›
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Form/Type/CrudFormType.php:112 {
EasyCorp\Bundle\EasyAdminBundle\Form\Type\CrudFormType->buildForm(FormBuilderInterface $builder, array $options): void …
›
› $formField = $builder->getFormFactory()->createNamedBuilder($name, $formFieldType, null, $formFieldOptions);
› $formField->setAttribute('ea_entity', $entityDto);
}
/var/www/SAE301/vendor/symfony/form/ResolvedFormType.php:100 {
Symfony\Component\Form\ResolvedFormType->buildForm(FormBuilderInterface $builder, array $options): void …
›
› $this->innerType->buildForm($builder, $options);
›
}
/var/www/SAE301/vendor/symfony/form/Extension/DataCollector/Proxy/ResolvedTypeDataCollectorProxy.php:73 {
Symfony\Component\Form\Extension\DataCollector\Proxy\ResolvedTypeDataCollectorProxy->buildForm(FormBuilderInterface $builder, array $options): void …
› {
› $this->proxiedType->buildForm($builder, $options);
› }
}
/var/www/SAE301/vendor/symfony/form/FormFactory.php:75 {
Symfony\Component\Form\FormFactory->createNamedBuilder(string $name, string $type = '…51', mixed $data = null, array $options = []): FormBuilderInterface …
› // createBuilder() or buildForm() in the resolved form type
› $type->buildForm($builder, $builder->getOptions());
›
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Factory/FormFactory.php:35 {
EasyCorp\Bundle\EasyAdminBundle\Factory\FormFactory->createEditFormBuilder(EntityDto $entityDto, KeyValueStore $formOptions, AdminContext $context): FormBuilderInterface …
›
› return $this->symfonyFormFactory->createNamedBuilder($entityDto->getName(), CrudFormType::class, $entityDto->getInstance(), $formOptions->all());
› }
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Controller/AbstractCrudController.php:550 {
EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController->createEditFormBuilder(EntityDto $entityDto, KeyValueStore $formOptions, AdminContext $context): FormBuilderInterface …
› {
› return $this->container->get(FormFactory::class)->createEditFormBuilder($entityDto, $formOptions, $context);
› }
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Controller/AbstractCrudController.php:545 {
EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController->createEditForm(EntityDto $entityDto, KeyValueStore $formOptions, AdminContext $context): FormInterface …
› {
› return $this->createEditFormBuilder($entityDto, $formOptions, $context)->getForm();
› }
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Controller/AbstractCrudController.php:259 {
EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController->edit(AdminContext $context) …
›
› $editForm = $this->createEditForm($context->getEntity(), $context->getCrud()->getEditFormOptions(), $context);
› $editForm->handleRequest($context->getRequest());
}
/var/www/SAE301/vendor/symfony/http-kernel/HttpKernel.php:183 {
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Request $request, int $type = self::MAIN_REQUEST): Response …
› // call controller
› $response = $controller(...$arguments);
›
}
/var/www/SAE301/vendor/symfony/http-kernel/HttpKernel.php:76 {
Symfony\Component\HttpKernel\HttpKernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
› try {
› return $response = $this->handleRaw($request, $type);
› } catch (\Throwable $e) {
}
/var/www/SAE301/vendor/symfony/http-kernel/Kernel.php:191 {
Symfony\Component\HttpKernel\Kernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
› try {
› return $this->getHttpKernel()->handle($request, $type, $catch);
› } finally {
}
/var/www/SAE301/vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35 {
Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run(): int …
› {
› $response = $this->kernel->handle($this->request);
›
}
/var/www/SAE301/vendor/autoload_runtime.php:32 {
require_once …
› ->getRunner($app)
› ->run()
› );
}
/var/www/SAE301/public/index.php:5 {
›
› require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
›
arguments: {
"/var/www/SAE301/vendor/autoload_runtime.php"
}
}
}
} |
| logger |
Symfony\Bridge\Monolog\Processor\DebugProcessor {#90
-records: [
2 => [
[
"timestamp" => 1768298732
"timestamp_rfc3339" => "2026-01-13T10:05:32.064+00:00"
"message" => "Matched route "{route}"."
"priority" => 200
"priorityName" => "INFO"
"context" => [
"route" => "admin"
"route_parameters" => [
"_route" => "admin"
"_controller" => "App\Controller\Admin\DashboardController::index"
]
"request_uri" => "http://sae301.mmi24c04.mmi-troyes.fr/admin?crudAction=edit&crudControllerFqcn=App%5CController%5CAdmin%5CArticleCrudController&entityId=6"
"method" => "GET"
]
"channel" => "request"
]
[
"timestamp" => 1768298732
"timestamp_rfc3339" => "2026-01-13T10:05:32.065+00:00"
"message" => "Checking for authenticator support."
"priority" => 100
"priorityName" => "DEBUG"
"context" => [
"firewall_name" => "main"
"authenticators" => 0
]
"channel" => "security"
]
[
"timestamp" => 1768298732
"timestamp_rfc3339" => "2026-01-13T10:05:32.073+00:00"
"message" => "Connecting with parameters {params}"
"priority" => 200
"priorityName" => "INFO"
"context" => [
"params" => [
"use_savepoints" => true
"driver" => "pdo_mysql"
"idle_connection_ttl" => 600
"host" => "127.0.0.1"
"port" => 3306
"user" => "sae301"
"password" => "<redacted>"
"driverOptions" => []
"defaultTableOptions" => []
"dbname" => "sae301"
"serverVersion" => "10.11.2-MariaDB"
"charset" => "utf8mb4"
]
]
"channel" => "doctrine"
]
[
"timestamp" => 1768298732
"timestamp_rfc3339" => "2026-01-13T10:05:32.076+00:00"
"message" => "Executing statement: {sql} (parameters: {params}, types: {types})"
"priority" => 100
"priorityName" => "DEBUG"
"context" => [
"sql" => "SELECT t0.id AS id_1, t0.title AS title_2, t0.slug AS slug_3, t0.content AS content_4, t0.image AS image_5, t0.category AS category_6, t0.created_at AS created_at_7, t0.updated_at AS updated_at_8, t0.published AS published_9, t0.excerpt AS excerpt_10 FROM article t0 WHERE t0.id = ?"
"params" => [
1 => "6"
]
"types" => [
1 => Doctrine\DBAL\ParameterType {#748
+name: "INTEGER"
}
]
]
"channel" => "doctrine"
]
[
"timestamp" => 1768298732
"timestamp_rfc3339" => "2026-01-13T10:05:32.091+00:00"
"message" => "User Deprecated: Since easycorp/easyadmin-bundle 4.14.0: Not using pretty admin URLs is deprecated because they will become the only available URLs starting from EasyAdmin 5.0.0. Read the docs to learn how to enable pretty URLs in your application."
"priority" => 200
"priorityName" => "INFO"
"context" => [
"exception" => ErrorException {#1156
#message: "User Deprecated: Since easycorp/easyadmin-bundle 4.14.0: Not using pretty admin URLs is deprecated because they will become the only available URLs starting from EasyAdmin 5.0.0. Read the docs to learn how to enable pretty URLs in your application."
#code: 0
#file: "/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Router/AdminUrlGenerator.php"
#line: 325
#severity: E_USER_DEPRECATED
trace: {
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Router/AdminUrlGenerator.php:325 {
EasyCorp\Bundle\EasyAdminBundle\Router\AdminUrlGenerator->generateUrl(): string …
› if (!$usePrettyUrls && \in_array($routeParameters[EA::CRUD_ACTION] ?? Action::INDEX, Crud::ACTION_NAMES, true)) {
› trigger_deprecation(
› 'easycorp/easyadmin-bundle',
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Field/Configurator/BooleanConfigurator.php:49 {
EasyCorp\Bundle\EasyAdminBundle\Field\Configurator\BooleanConfigurator->configure(FieldDto $field, EntityDto $entityDto, AdminContext $context): void …
› ->set('csrfToken', $this->csrfTokenManager?->getToken(BooleanField::CSRF_TOKEN_NAME))
› ->generateUrl();
› $field->setCustomOption(BooleanField::OPTION_TOGGLE_URL, $toggleUrl);
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Factory/FieldFactory.php:115 {
EasyCorp\Bundle\EasyAdminBundle\Factory\FieldFactory->processFields(EntityDto $entityDto, FieldCollection $fields, ?string $currentPage = null): void …
› // @phpstan-ignore-next-line argument.type
› $configurator->configure($fieldDto, $entityDto, $context);
› }
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Controller/AbstractCrudController.php:224 {
EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController->edit(AdminContext $context) …
›
› $this->container->get(FieldFactory::class)->processFields($context->getEntity(), FieldCollection::new($this->configureFields(Crud::PAGE_EDIT)), Crud::PAGE_EDIT);
› $context->getCrud()->setFieldAssets($this->getFieldAssets($context->getEntity()->getFields()));
}
/var/www/SAE301/vendor/symfony/http-kernel/HttpKernel.php:183 {
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Request $request, int $type = self::MAIN_REQUEST): Response …
› // call controller
› $response = $controller(...$arguments);
›
}
/var/www/SAE301/vendor/symfony/http-kernel/HttpKernel.php:76 {
Symfony\Component\HttpKernel\HttpKernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
› try {
› return $response = $this->handleRaw($request, $type);
› } catch (\Throwable $e) {
}
/var/www/SAE301/vendor/symfony/http-kernel/Kernel.php:191 {
Symfony\Component\HttpKernel\Kernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
› try {
› return $this->getHttpKernel()->handle($request, $type, $catch);
› } finally {
}
/var/www/SAE301/vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35 {
Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run(): int …
› {
› $response = $this->kernel->handle($this->request);
›
}
/var/www/SAE301/vendor/autoload_runtime.php:32 {
require_once …
› ->getRunner($app)
› ->run()
› );
}
/var/www/SAE301/public/index.php:5 {
›
› require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
›
arguments: {
"/var/www/SAE301/vendor/autoload_runtime.php"
}
}
}
}
]
"channel" => "deprecation"
]
[
"timestamp" => 1768298732
"timestamp_rfc3339" => "2026-01-13T10:05:32.092+00:00"
"message" => "User Deprecated: Since easycorp/easyadmin-bundle 4.14.0: Not using pretty admin URLs is deprecated because they will become the only available URLs starting from EasyAdmin 5.0.0. Read the docs to learn how to enable pretty URLs in your application."
"priority" => 200
"priorityName" => "INFO"
"context" => [
"exception" => ErrorException {#836
#message: "User Deprecated: Since easycorp/easyadmin-bundle 4.14.0: Not using pretty admin URLs is deprecated because they will become the only available URLs starting from EasyAdmin 5.0.0. Read the docs to learn how to enable pretty URLs in your application."
#code: 0
#file: "/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Router/AdminUrlGenerator.php"
#line: 325
#severity: E_USER_DEPRECATED
trace: {
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Router/AdminUrlGenerator.php:325 {
EasyCorp\Bundle\EasyAdminBundle\Router\AdminUrlGenerator->generateUrl(): string …
› if (!$usePrettyUrls && \in_array($routeParameters[EA::CRUD_ACTION] ?? Action::INDEX, Crud::ACTION_NAMES, true)) {
› trigger_deprecation(
› 'easycorp/easyadmin-bundle',
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Factory/ActionFactory.php:308 {
EasyCorp\Bundle\EasyAdminBundle\Factory\ActionFactory->generateActionUrl(Request $request, ActionDto $actionDto, ?EntityDto $entityDto = null): string …
›
› return $this->adminUrlGenerator->unsetAllExcept(...$urlParametersToKeep)->setAll($requestParameters)->generateUrl();
› }
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Factory/ActionFactory.php:195 {
EasyCorp\Bundle\EasyAdminBundle\Factory\ActionFactory->processAction(string $pageName, ActionDto $actionDto, ?EntityDto $entityDto = null): ActionDto …
›
› $actionDto->setLinkUrl($this->generateActionUrl($adminContext->getRequest(), $actionDto, $entityDto));
›
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Factory/ActionFactory.php:79 {
EasyCorp\Bundle\EasyAdminBundle\Factory\ActionFactory->processEntityActions(EntityDto $entityDto, ActionConfigDto $actionsDto): void …
›
› $processedItems[$item->getName()] = $this->processAction($currentPage, $item, $entityDto);
› } elseif ($item instanceof ActionGroupDto) {
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Controller/AbstractCrudController.php:226 {
EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController->edit(AdminContext $context) …
› $context->getCrud()->setFieldAssets($this->getFieldAssets($context->getEntity()->getFields()));
› $this->container->get(ActionFactory::class)->processEntityActions($context->getEntity(), $context->getCrud()->getActionsConfig());
› /** @var TEntity $entityInstance */
}
/var/www/SAE301/vendor/symfony/http-kernel/HttpKernel.php:183 {
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Request $request, int $type = self::MAIN_REQUEST): Response …
› // call controller
› $response = $controller(...$arguments);
›
}
/var/www/SAE301/vendor/symfony/http-kernel/HttpKernel.php:76 {
Symfony\Component\HttpKernel\HttpKernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
› try {
› return $response = $this->handleRaw($request, $type);
› } catch (\Throwable $e) {
}
/var/www/SAE301/vendor/symfony/http-kernel/Kernel.php:191 {
Symfony\Component\HttpKernel\Kernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
› try {
› return $this->getHttpKernel()->handle($request, $type, $catch);
› } finally {
}
/var/www/SAE301/vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35 {
Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run(): int …
› {
› $response = $this->kernel->handle($this->request);
›
}
/var/www/SAE301/vendor/autoload_runtime.php:32 {
require_once …
› ->getRunner($app)
› ->run()
› );
}
/var/www/SAE301/public/index.php:5 {
›
› require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
›
arguments: {
"/var/www/SAE301/vendor/autoload_runtime.php"
}
}
}
}
]
"channel" => "deprecation"
]
[
"timestamp" => 1768298732
"timestamp_rfc3339" => "2026-01-13T10:05:32.093+00:00"
"message" => "User Deprecated: Since easycorp/easyadmin-bundle 4.14.0: Not using pretty admin URLs is deprecated because they will become the only available URLs starting from EasyAdmin 5.0.0. Read the docs to learn how to enable pretty URLs in your application."
"priority" => 200
"priorityName" => "INFO"
"context" => [
"exception" => ErrorException {#838
#message: "User Deprecated: Since easycorp/easyadmin-bundle 4.14.0: Not using pretty admin URLs is deprecated because they will become the only available URLs starting from EasyAdmin 5.0.0. Read the docs to learn how to enable pretty URLs in your application."
#code: 0
#file: "/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Router/AdminUrlGenerator.php"
#line: 325
#severity: E_USER_DEPRECATED
trace: {
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Router/AdminUrlGenerator.php:325 {
EasyCorp\Bundle\EasyAdminBundle\Router\AdminUrlGenerator->generateUrl(): string …
› if (!$usePrettyUrls && \in_array($routeParameters[EA::CRUD_ACTION] ?? Action::INDEX, Crud::ACTION_NAMES, true)) {
› trigger_deprecation(
› 'easycorp/easyadmin-bundle',
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Factory/ActionFactory.php:308 {
EasyCorp\Bundle\EasyAdminBundle\Factory\ActionFactory->generateActionUrl(Request $request, ActionDto $actionDto, ?EntityDto $entityDto = null): string …
›
› return $this->adminUrlGenerator->unsetAllExcept(...$urlParametersToKeep)->setAll($requestParameters)->generateUrl();
› }
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Factory/ActionFactory.php:195 {
EasyCorp\Bundle\EasyAdminBundle\Factory\ActionFactory->processAction(string $pageName, ActionDto $actionDto, ?EntityDto $entityDto = null): ActionDto …
›
› $actionDto->setLinkUrl($this->generateActionUrl($adminContext->getRequest(), $actionDto, $entityDto));
›
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Factory/ActionFactory.php:79 {
EasyCorp\Bundle\EasyAdminBundle\Factory\ActionFactory->processEntityActions(EntityDto $entityDto, ActionConfigDto $actionsDto): void …
›
› $processedItems[$item->getName()] = $this->processAction($currentPage, $item, $entityDto);
› } elseif ($item instanceof ActionGroupDto) {
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Controller/AbstractCrudController.php:226 {
EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController->edit(AdminContext $context) …
› $context->getCrud()->setFieldAssets($this->getFieldAssets($context->getEntity()->getFields()));
› $this->container->get(ActionFactory::class)->processEntityActions($context->getEntity(), $context->getCrud()->getActionsConfig());
› /** @var TEntity $entityInstance */
}
/var/www/SAE301/vendor/symfony/http-kernel/HttpKernel.php:183 {
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Request $request, int $type = self::MAIN_REQUEST): Response …
› // call controller
› $response = $controller(...$arguments);
›
}
/var/www/SAE301/vendor/symfony/http-kernel/HttpKernel.php:76 {
Symfony\Component\HttpKernel\HttpKernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
› try {
› return $response = $this->handleRaw($request, $type);
› } catch (\Throwable $e) {
}
/var/www/SAE301/vendor/symfony/http-kernel/Kernel.php:191 {
Symfony\Component\HttpKernel\Kernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
› try {
› return $this->getHttpKernel()->handle($request, $type, $catch);
› } finally {
}
/var/www/SAE301/vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35 {
Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run(): int …
› {
› $response = $this->kernel->handle($this->request);
›
}
/var/www/SAE301/vendor/autoload_runtime.php:32 {
require_once …
› ->getRunner($app)
› ->run()
› );
}
/var/www/SAE301/public/index.php:5 {
›
› require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
›
arguments: {
"/var/www/SAE301/vendor/autoload_runtime.php"
}
}
}
}
]
"channel" => "deprecation"
]
[
"timestamp" => 1768298732
"timestamp_rfc3339" => "2026-01-13T10:05:32.098+00:00"
"message" => "Uncaught PHP Exception Symfony\Component\Filesystem\Exception\IOException: "Failed to create "/var/www/SAE301/public/uploads/articles/": mkdir(): Permission denied" at Filesystem.php line 98"
"priority" => 500
"priorityName" => "CRITICAL"
"context" => [
"exception" => Symfony\Component\Filesystem\Exception\IOException {#1351
#message: "Failed to create "/var/www/SAE301/public/uploads/articles/": mkdir(): Permission denied"
#code: 0
#file: "/var/www/SAE301/vendor/symfony/filesystem/Filesystem.php"
#line: 98
-path: "/var/www/SAE301/public/uploads/articles/"
trace: {
/var/www/SAE301/vendor/symfony/filesystem/Filesystem.php:98 {
Symfony\Component\Filesystem\Filesystem->mkdir(Traversable|array|string $dirs, int $mode = 511): void …
› if (!self::box('mkdir', $dir, $mode, true) && !is_dir($dir)) {
› throw new IOException(\sprintf('Failed to create "%s": ', $dir).self::$lastError, 0, null, $dir);
› }
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Form/Type/FileUploadType.php:154 {
EasyCorp\Bundle\EasyAdminBundle\Form\Type\FileUploadType->{closure:EasyCorp\Bundle\EasyAdminBundle\Form\Type\FileUploadType::configureOptions():142} …
› if ($isLocalFilesystem && !is_dir($value)) {
› $this->filesystem->mkdir($value);
› }
}
/var/www/SAE301/vendor/symfony/options-resolver/OptionsResolver.php:1124 {
Symfony\Component\OptionsResolver\OptionsResolver->offsetGet(mixed $option, bool $triggerDeprecation = true): mixed …
› foreach ($this->normalizers[$option] as $normalizer) {
› $value = $normalizer($this, $value);
› }
}
/var/www/SAE301/vendor/symfony/options-resolver/OptionsResolver.php:903 {
Symfony\Component\OptionsResolver\OptionsResolver->resolve(array $options = []): array …
› foreach ($clone->defaults as $option => $_) {
› $clone->offsetGet($option);
› }
}
/var/www/SAE301/vendor/symfony/form/ResolvedFormType.php:77 {
Symfony\Component\Form\ResolvedFormType->createBuilder(FormFactoryInterface $factory, string $name, array $options = []): FormBuilderInterface …
› try {
› $options = $this->getOptionsResolver()->resolve($options);
› } catch (ExceptionInterface $e) {
}
/var/www/SAE301/vendor/symfony/form/Extension/DataCollector/Proxy/ResolvedTypeDataCollectorProxy.php:58 {
Symfony\Component\Form\Extension\DataCollector\Proxy\ResolvedTypeDataCollectorProxy->createBuilder(FormFactoryInterface $factory, string $name, array $options = []): FormBuilderInterface …
› {
› $builder = $this->proxiedType->createBuilder($factory, $name, $options);
›
}
/var/www/SAE301/vendor/symfony/form/FormFactory.php:67 {
Symfony\Component\Form\FormFactory->createNamedBuilder(string $name, string $type = '…51', mixed $data = null, array $options = []): FormBuilderInterface …
›
› $builder = $type->createBuilder($this, $name, $options);
›
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Form/Type/CrudFormType.php:112 {
EasyCorp\Bundle\EasyAdminBundle\Form\Type\CrudFormType->buildForm(FormBuilderInterface $builder, array $options): void …
›
› $formField = $builder->getFormFactory()->createNamedBuilder($name, $formFieldType, null, $formFieldOptions);
› $formField->setAttribute('ea_entity', $entityDto);
}
/var/www/SAE301/vendor/symfony/form/ResolvedFormType.php:100 {
Symfony\Component\Form\ResolvedFormType->buildForm(FormBuilderInterface $builder, array $options): void …
›
› $this->innerType->buildForm($builder, $options);
›
}
/var/www/SAE301/vendor/symfony/form/Extension/DataCollector/Proxy/ResolvedTypeDataCollectorProxy.php:73 {
Symfony\Component\Form\Extension\DataCollector\Proxy\ResolvedTypeDataCollectorProxy->buildForm(FormBuilderInterface $builder, array $options): void …
› {
› $this->proxiedType->buildForm($builder, $options);
› }
}
/var/www/SAE301/vendor/symfony/form/FormFactory.php:75 {
Symfony\Component\Form\FormFactory->createNamedBuilder(string $name, string $type = '…51', mixed $data = null, array $options = []): FormBuilderInterface …
› // createBuilder() or buildForm() in the resolved form type
› $type->buildForm($builder, $builder->getOptions());
›
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Factory/FormFactory.php:35 {
EasyCorp\Bundle\EasyAdminBundle\Factory\FormFactory->createEditFormBuilder(EntityDto $entityDto, KeyValueStore $formOptions, AdminContext $context): FormBuilderInterface …
›
› return $this->symfonyFormFactory->createNamedBuilder($entityDto->getName(), CrudFormType::class, $entityDto->getInstance(), $formOptions->all());
› }
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Controller/AbstractCrudController.php:550 {
EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController->createEditFormBuilder(EntityDto $entityDto, KeyValueStore $formOptions, AdminContext $context): FormBuilderInterface …
› {
› return $this->container->get(FormFactory::class)->createEditFormBuilder($entityDto, $formOptions, $context);
› }
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Controller/AbstractCrudController.php:545 {
EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController->createEditForm(EntityDto $entityDto, KeyValueStore $formOptions, AdminContext $context): FormInterface …
› {
› return $this->createEditFormBuilder($entityDto, $formOptions, $context)->getForm();
› }
}
/var/www/SAE301/vendor/easycorp/easyadmin-bundle/src/Controller/AbstractCrudController.php:259 {
EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController->edit(AdminContext $context) …
›
› $editForm = $this->createEditForm($context->getEntity(), $context->getCrud()->getEditFormOptions(), $context);
› $editForm->handleRequest($context->getRequest());
}
/var/www/SAE301/vendor/symfony/http-kernel/HttpKernel.php:183 {
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Request $request, int $type = self::MAIN_REQUEST): Response …
› // call controller
› $response = $controller(...$arguments);
›
}
/var/www/SAE301/vendor/symfony/http-kernel/HttpKernel.php:76 {
Symfony\Component\HttpKernel\HttpKernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
› try {
› return $response = $this->handleRaw($request, $type);
› } catch (\Throwable $e) {
}
/var/www/SAE301/vendor/symfony/http-kernel/Kernel.php:191 {
Symfony\Component\HttpKernel\Kernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
› try {
› return $this->getHttpKernel()->handle($request, $type, $catch);
› } finally {
}
/var/www/SAE301/vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35 {
Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run(): int …
› {
› $response = $this->kernel->handle($this->request);
›
}
/var/www/SAE301/vendor/autoload_runtime.php:32 {
require_once …
› ->getRunner($app)
› ->run()
› );
}
/var/www/SAE301/public/index.php:5 {
›
› require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
›
arguments: {
"/var/www/SAE301/vendor/autoload_runtime.php"
}
}
}
}
]
"channel" => "request"
]
]
]
-errorCount: [
2 => 1
]
-requestStack: Symfony\Component\HttpKernel\Debug\VirtualRequestStack {#89 …}
} |