Quantcast
Channel: Tópicos
Viewing all articles
Browse latest Browse all 14700

[Resolvido] Erro usando Slim Framework

$
0
0
Estou a tentar criar um sistema de compras usando a Framework Slim, no entanto estou aqui com uns problemas...

Código :
Slim Application Error
The application could not run because of the following error:
Details
Type: DI\NotFoundException
Message: No entry or class found for 'Cart\Support\Storage\SessionStorage'
File: /var/www/html/cart/vendor/php-di/php-di/src/DI/Container.php
Line: 119
Trace
#0 /var/www/html/cart/app/container.php(39): DI\Container->get('Cart\\Support\\St...')
#1 [internal function]: DI\Definition\Source\DefinitionFile->{closure}(Object(DI\Container))
#2 /var/www/html/cart/vendor/php-di/invoker/src/Invoker.php(82): call_user_func_array(Object(Closure), Array)
#3 /var/www/html/cart/vendor/php-di/php-di/src/DI/Definition/Resolver/FactoryResolver.php(66): Invoker\Invoker->call(Object(Closure), Array)
#4 /var/www/html/cart/vendor/php-di/php-di/src/DI/Definition/Resolver/ResolverDispatcher.php(58): DI\Definition\Resolver\FactoryResolver->resolve(Object(DI\Definition\FactoryDefinition), Array)
#5 /var/www/html/cart/vendor/php-di/php-di/src/DI/Container.php(285): DI\Definition\Resolver\ResolverDispatcher->resolve(Object(DI\Definition\FactoryDefinition), Array)
#6 /var/www/html/cart/vendor/php-di/php-di/src/DI/Container.php(122): DI\Container->resolveDefinition(Object(DI\Definition\FactoryDefinition))
#7 /var/www/html/cart/app/container.php(28): DI\Container->get('Cart\\Basket\\Bas...')
#8 [internal function]: DI\Definition\Source\DefinitionFile->{closure}(Object(DI\Container))
#9 /var/www/html/cart/vendor/php-di/invoker/src/Invoker.php(82): call_user_func_array(Object(Closure), Array)
#10 /var/www/html/cart/vendor/php-di/php-di/src/DI/Definition/Resolver/FactoryResolver.php(66): Invoker\Invoker->call(Object(Closure), Array)
#11 /var/www/html/cart/vendor/php-di/php-di/src/DI/Definition/Resolver/ResolverDispatcher.php(58): DI\Definition\Resolver\FactoryResolver->resolve(Object(DI\Definition\FactoryDefinition), Array)
#12 /var/www/html/cart/vendor/php-di/php-di/src/DI/Container.php(285): DI\Definition\Resolver\ResolverDispatcher->resolve(Object(DI\Definition\FactoryDefinition), Array)
#13 /var/www/html/cart/vendor/php-di/php-di/src/DI/Container.php(122): DI\Container->resolveDefinition(Object(DI\Definition\FactoryDefinition))
#14 /var/www/html/cart/vendor/php-di/invoker/src/ParameterResolver/Container/TypeHintContainerResolver.php(45): DI\Container->get('Slim\\Views\\Twig')
#15 /var/www/html/cart/vendor/php-di/invoker/src/ParameterResolver/ResolverChain.php(38): Invoker\ParameterResolver\Container\TypeHintContainerResolver->getParameters(Object(ReflectionMethod), Array, Array)
#16 /var/www/html/cart/vendor/php-di/invoker/src/Invoker.php(65): Invoker\ParameterResolver\ResolverChain->getParameters(Object(ReflectionMethod), Array, Array)
#17 /var/www/html/cart/vendor/php-di/slim-bridge/src/ControllerInvoker.php(47): Invoker\Invoker->call(Array, Array)
#18 /var/www/html/cart/vendor/slim/slim/Slim/Route.php(325): DI\Bridge\Slim\ControllerInvoker->__invoke(Array, Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#19 /var/www/html/cart/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(116): Slim\Route->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))
#20 /var/www/html/cart/vendor/slim/slim/Slim/Route.php(297): Slim\Route->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))
#21 /var/www/html/cart/vendor/slim/slim/Slim/App.php(443): Slim\Route->run(Object(Slim\Http\Request), Object(Slim\Http\Response))
#22 /var/www/html/cart/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(116): Slim\App->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))
#23 /var/www/html/cart/vendor/slim/slim/Slim/App.php(337): Slim\App->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))
#24 /var/www/html/cart/vendor/slim/slim/Slim/App.php(298): Slim\App->process(Object(Slim\Http\Request), Object(Slim\Http\Response))
#25 /var/www/html/cart/public/index.php(5): Slim\App->run()
#26 {main}

este é o meu container.php
Código (PHP):
<?php
  use function DI\get;
  use Slim\Views\Twig;
  use Cart\Basket\Basket;
  use Cart\Models\Product;
  use Slim\Views\TwigExtension;
  use Interop\Container\ContainerInterface;
  use Cart\Support\Storage\SessionStorage;
  use Cart\Support\Storage\Contracts\StorageInterface;
  return [
        'router' => get(Slim\Router::class),
        StorageInterface::class => function (ContainerInterface $c) {
          return new SessionStorage('cart');
        },
        Twig::class => function (ContainerInterface $c) {
          $twig = new Twig(__DIR__ . '/../resources/views', [
                'cache' => false
          ]);
          $twig->addExtension(new TwigExtension(
                $c->get('router'),
                $c->get('request')->getUri()
          ));
          $twig->getEnvironment()->addGlobal('basket', $c->get(Basket::class));
          return $twig;
        },
        Product::class => function (ContainerInterface $c) {
          return new Product;
        },
        Basket::class => function (ContainerInterface $c) {
          return new Basket(
                $c->get(SessionStorage::class),
                $c->get(Product::class)
          );
        }
 
  ];
?>

começou-me a dar erro depois de adicionar Basket::class ao container... :s

Viewing all articles
Browse latest Browse all 14700

Trending Articles