Michel presta Posted October 15 Share Posted October 15 (edited) Bonjour à tous j'ouvre ce topic pour avoir une réponse car il y avait un vieux message concernant ce sujet qui n'a pas trouvé de réponses: Voilà, j'ai un message d'erreur quand je veux accéder à une commande. C'est ennuyeux car je ne peux pas interagir avec cette commande (remboursement ou autre) Voici l'erreur que j'ai en mode débug: désolé si c'est un peu long: voici en premier ce qui sort quand le mode débug n'est pas activé: Oups... une erreur inattendue semble s'être produite Attempted to load class "OrderProductForViewing" from namespace "PrestaShop\PrestaShop\Core\Domain\Order\QueryResult". Did you forget a "use" statement for another namespace? [Symfony\Component\Debug\Exception\ClassNotFoundException 0] et ceci en mode débug: Type error: Argument 6 passed to PrestaShop\PrestaShop\Core\Domain\Order\QueryResult\OrderProductForViewing::__construct() must be of the type string, null given, called in /home/xxxx/public_html/src/Adapter/Order/QueryHandler/GetOrderProductsForViewingHandler.php on line 247 FatalThrowableError in src/Core/Domain/Order/QueryResult/OrderProductForViewing.php (line 189) * @param string $type * @param bool $availableOutOfStock * @param array $packItems * @param OrderProductCustomizationsForViewing|null $customizations */ public function __construct( ?int $orderDetailId, int $id, int $combinationId, string $name, string $reference, OrderProductForViewing->__construct(null, 2231, 0, 'MIJOTÉ DE CANARD 700G', '2086', null, '1', 0, 0, 38, '/img/tmp/product_mini_2231_0.jpg?time=1729004063', '0', '0', '0', '0,00 €', 0, '0,00 €', '0', '', null, '', 'product_without_combinations', false)in src/Adapter/Order/QueryHandler/GetOrderProductsForViewingHandler.php (line 247) '0', $pack_item['location'], null, '', $packItemType, (bool) Product::isAvailableWhenOutOfStock(StockAvailable::outOfStock($pack_item['id_product'])) ); } $productsForViewing[] = new OrderProductForViewing( $product['id_order_detail'], GetOrderProductsForViewingHandler->handle(object(GetOrderProductsForViewing))in src/Adapter/Order/QueryHandler/GetOrderForViewingHandler.php (line 848) * @throws InvalidSortingException */ private function getOrderProducts(OrderId $orderId, string $productsOrder): OrderProductsForViewing { return $this->getOrderProductsForViewingHandler->handle( GetOrderProductsForViewing::all($orderId->getValue(), $productsOrder) ); } /** * If there is no valid customer attached to the order, the customer must have been deleted GetOrderForViewingHandler->getOrderProducts(object(OrderId), 'DESC')in src/Adapter/Order/QueryHandler/GetOrderForViewingHandler.php (line 212) $invoiceManagementIsEnabled, new DateTimeImmutable($order->date_add), $this->getOrderCustomer($order, $orderInvoiceAddress), $this->getOrderShippingAddress($order), $orderInvoiceAddress, $this->getOrderProducts($query->getOrderId(), $query->getProductsSorting()->getValue()), $this->getOrderHistory($order), $this->getOrderDocuments($order), $this->getOrderShipping($order), $this->getOrderReturns($order), $this->getOrderPayments($order), GetOrderForViewingHandler->handle(object(GetOrderForViewing))in vendor/league/tactician/src/Handler/CommandHandlerMiddleware.php (line 71) $command, "Method '{$methodName}' does not exist on handler" ); } return $handler->{$methodName}($command); } } CommandHandlerMiddleware->execute(object(GetOrderForViewing), object(Closure))in vendor/league/tactician/src/CommandBus.php (line 62) if (! $middleware instanceof Middleware) { throw InvalidMiddlewareException::forMiddleware($middleware); } $lastCallable = function ($command) use ($middleware, $lastCallable) { return $middleware->execute($command, $lastCallable); }; } return $lastCallable; } CommandBus->League\Tactician\{closure}(object(GetOrderForViewing))in src/Core/CommandBus/Middleware/CommandRegisterMiddleware.php (line 79) $commandName = $this->commandNameExtractor->extract($command); $handler = $this->handlerLocator->getHandlerForCommand($commandName); $this->executedCommandRegistry->register($command, $handler); return $next($command); } } CommandRegisterMiddleware->execute(object(GetOrderForViewing), object(Closure))in vendor/league/tactician/src/CommandBus.php (line 62) if (! $middleware instanceof Middleware) { throw InvalidMiddlewareException::forMiddleware($middleware); } $lastCallable = function ($command) use ($middleware, $lastCallable) { return $middleware->execute($command, $lastCallable); }; } return $lastCallable; } CommandBus->League\Tactician\{closure}(object(GetOrderForViewing))in vendor/league/tactician/src/CommandBus.php (line 42) if (!is_object($command)) { throw InvalidCommandException::forUnknownValue($command); } $middlewareChain = $this->middlewareChain; return $middlewareChain($command); } /** * @param Middleware[] $middlewareList * CommandBus->handle(object(GetOrderForViewing))in src/Core/CommandBus/TacticianCommandBusAdapter.php (line 54) /** * {@inheritdoc} */ public function handle($command) { return $this->bus->handle($command); } } TacticianCommandBusAdapter->handle(object(GetOrderForViewing))in src/PrestaShopBundle/Controller/Admin/Sell/Order/OrderController.php (line 420) */ public function viewAction(int $orderId, Request $request): Response { try { /** @var OrderForViewing $orderForViewing */ $orderForViewing = $this->getQueryBus()->handle(new GetOrderForViewing($orderId, QuerySorting::DESC)); } catch (OrderException $e) { $this->addFlash('error', $this->getErrorMessageForException($e, $this->getErrorMessages($e))); return $this->redirectToRoute('admin_orders_index'); } OrderController->viewAction(161, object(Request))in vendor/symfony/symfony/src/Symfony/Component/HttpKernel/HttpKernel.php (line 151) $this->dispatcher->dispatch(KernelEvents::CONTROLLER_ARGUMENTS, $event); $controller = $event->getController(); $arguments = $event->getArguments(); // call controller $response = \call_user_func_array($controller, $arguments); // view if (!$response instanceof Response) { $event = new GetResponseForControllerResultEvent($this, $request, $type, $response); $this->dispatcher->dispatch(KernelEvents::VIEW, $event); HttpKernel->handleRaw(object(Request), 1)in vendor/symfony/symfony/src/Symfony/Component/HttpKernel/HttpKernel.php (line 68) public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true) { $request->headers->set('X-Php-Ob-Level', (string) ob_get_level()); try { return $this->handleRaw($request, $type); } catch (\Exception $e) { if ($e instanceof RequestExceptionInterface) { $e = new BadRequestHttpException($e->getMessage(), $e); } if (false === $catch) { HttpKernel->handle(object(Request), 1, false)in vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php (line 200) $this->boot(); ++$this->requestStackSize; $this->resetServices = true; try { return $this->getHttpKernel()->handle($request, $type, $catch); } finally { --$this->requestStackSize; } } Kernel->handle(object(Request), 1, false)in adminxxxxxxxx/index.php (line 82) $request = Request::createFromGlobals(); Request::setTrustedProxies([], Request::HEADER_X_FORWARDED_ALL); try { require_once __DIR__.'/../autoload.php'; $response = $kernel->handle($request, HttpKernelInterface::MASTER_REQUEST, false); $response->send(); $kernel->terminate($request, $response); } catch (NotFoundHttpException $exception) { define('ADMIN_LEGACY_CONTEXT', true); // correct Apache charset (except if it's too late) je vous remercie par avance si vous pouvez me mettre sur une piste. Sachant que j'ai déjà vidé le cache et que le problème persiste. Merci à tous. Edited November 5 by Michel presta (see edit history) Link to comment Share on other sites More sharing options...
Michel presta Posted October 16 Author Share Posted October 16 Un petit UP 😉 40 vues et personne n'a une idée ne serait-ce que pour m'orienter? Encore merci Link to comment Share on other sites More sharing options...
Prestashop Addict Posted October 16 Share Posted October 16 Bonjour, cela se produit sur toutes les commandes une une seule ? Link to comment Share on other sites More sharing options...
yama Posted October 16 Share Posted October 16 56 minutes ago, Michel presta said: Un petit UP 😉 40 vues et personne n'a une idée ne serait-ce que pour m'orienter? Encore merci Perso, non. Par contre je peux vous conseiller de pas partager le nom de votre dossier admin Link to comment Share on other sites More sharing options...
Michel presta Posted October 16 Author Share Posted October 16 merci pour vos réponses oui cela se produit sur toutes les commandes. Link to comment Share on other sites More sharing options...
Michel presta Posted October 16 Author Share Posted October 16 Il y a 3 heures, yama a dit : Perso, non. Par contre je peux vous conseiller de pas partager le nom de votre dossier admin oui c'est pas faux Merci Link to comment Share on other sites More sharing options...
Michel presta Posted October 16 Author Share Posted October 16 Il y a 3 heures, Prestashop Addict a dit : Bonjour, cela se produit sur toutes les commandes une une seule ? oui sur toutes: Attempted to load class "OrderProductForViewing" from namespace "PrestaShop\PrestaShop\Core\Domain\Order\QueryResult". Did you forget a "use" statement for another namespace? [Symfony\Component\Debug\Exception\ClassNotFoundException 0] Link to comment Share on other sites More sharing options...
yama Posted October 16 Share Posted October 16 (edited) Tu serais pas avec une version de php sur une version de PS incompatible ? https://devdocs.prestashop-project.org/1.7/basics/installation/system-requirements/ https://devdocs.prestashop-project.org/8/basics/installation/system-requirements/ https://devdocs.prestashop-project.org/9/basics/installation/system-requirements/ Edited October 16 by yama (see edit history) Link to comment Share on other sites More sharing options...
Michel presta Posted October 18 Author Share Posted October 18 (edited) J'ai essayé avec une version plus ancienne, et c'est pareil. Je ne pense pas que ça vient de là car ça fonctionnait avant. Cependant je ne sais pas jusqu'à quelle version je peux descendre avec la version 1.7.8.3 sans que ça ne gène le bon fonctionnement du site. Je suis sous PHP 7.4 et j'ai fait un essais sous 7.3. Penses tu que je devrais essayer des versions plus anciennes sachant que les versions plus récentes créent des problèmes sur mon site? Merci Edited October 21 by Michel presta (see edit history) Link to comment Share on other sites More sharing options...
Michel presta Posted October 29 Author Share Posted October 29 Re Bonjour à tous, Petit UP Mon souci persiste. Personne ne veut se pencher sur mon problème? 😊 Merci à vous. Link to comment Share on other sites More sharing options...
Nemesis tech Posted October 29 Share Posted October 29 @Michel presta Concernant ton problème, c'est un peu compliqué car c'est du debug. Il faut analyser en profondeur ton code et faire du debug step by step ... Quote Attempted to load class "OrderProductForViewing" from namespace "PrestaShop\PrestaShop\Core\Domain\Order\QueryResult". Did you forget a "use" statement for another namespace? [Symfony\Component\Debug\Exception\ClassNotFoundException 0] Ici, il manquerai surement le statement "use" de la classe qui est chargée. Quote Type error: Argument 6 passed to PrestaShop\PrestaShop\Core\Domain\Order\QueryResult\OrderProductForViewing::__construct() must be of the type string, null given, called in /home/iskm0582/public_html/src/Adapter/Order/QueryHandler/GetOrderProductsForViewingHandler.php on line 247 Ici, il y aurait un argument qui n'a pas le bon type. C'est censé être un "string" et c'est "null" qui est donné à cet argument. Donc, il y a sûrement des données en base qui ne correspondant pas avec ce qu'attend l'argument. Des "var_dump", "print_r" etc, seront donc nécessaire pour que tu puisses débuger. Link to comment Share on other sites More sharing options...
Michel presta Posted October 31 Author Share Posted October 31 Merci beaucoup, Je crains ne pas savoir quel fichier est affecté. peux tu approfondir un peu et me donner une piste plus précise? Encore merci Link to comment Share on other sites More sharing options...
Nemesis tech Posted October 31 Share Posted October 31 50 minutes ago, Michel presta said: Merci beaucoup, Je crains ne pas savoir quel fichier est affecté. peux tu approfondir un peu et me donner une piste plus précise? Encore merci Il nous faudrait obtenir la capture d'écran de toute ta page avec l'erreur. Est-ce que tu utilises un IDE type phpstorm pour travailler ? ça va énormément t'aider pour trouver le problème, les fichiers concernés, etc. Link to comment Share on other sites More sharing options...
Michel presta Posted November 1 Author Share Posted November 1 Bonjour, Le code du mode debug (tout en haut) ne suffit pas a voir d'où vient le souci? Mais voici l'erreur que j'ai dès que je veux rentrer dans une commande en back office. Encore merci d'essayer de m'aider. Link to comment Share on other sites More sharing options...
Mediacom87 Posted November 1 Share Posted November 1 Bonjour, ne vous manque-t-il pas des fichiers à votre installation ? Vous pouvez vérifier cette information dans le menu Information de votre votre BO. Si cette page ne s'affiche pas, vous pouvez utiliser mon module gratuit : https://www.prestatoolbox.fr/modules-gratuits/116-configuration-serveur.html Link to comment Share on other sites More sharing options...
Michel presta Posted November 1 Author Share Posted November 1 Merci je vais vérifier ça Link to comment Share on other sites More sharing options...
Michel presta Posted November 1 Author Share Posted November 1 en effet il semble qu'il manque ces deux fichiers: src/Core/Domain/Order/QueryResult/OrderReturnForViewing.php src/Core/Domain/Order/QueryResult/OrderProductForViewing.php J'ai chargé les deux fichiers manquants et ÇA FOOONCTIOONNNE. Merci beaucoup. La solution n'etait pas si compliquée,encore fallait il y penser. Link to comment Share on other sites More sharing options...
Michel presta Posted November 1 Author Share Posted November 1 Résolu Link to comment Share on other sites More sharing options...
Mediacom87 Posted November 1 Share Posted November 1 Link to comment Share on other sites More sharing options...
Michel presta Posted November 5 Author Share Posted November 5 Le 01/11/2024 à 6:52 PM, Mediacom87 a dit : Merci, Je ne savais pas comment mettre résolu. La solution est dans le dernier message Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now