Level 104
What exactly are you trying to do??
I don't understand why you are trying to inject a ServiceProvider into a Controller method; are you sure you understand what service providers are for, and the problems they solve?
When function "incomingPOST" is reached, the error is generated. Without the "OrderServiceProvider $order", there is no error. I have been on it days, googling, watching videos and I still cannot understand why I receive this error from the code below (I have tried different options without success):
Route:
$app->post('/post', 'App\Http\Controllers\PostController@incomingPOST');
});```
Controller
```<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
use Log;
use \App\Classes\OrderClass;
use \App\Providers\OrderServiceProvider;
class PostController extends Controller
{
private $token, $request;
public function __construct()
{
}
public function incomingPOST(Request $request, OrderServiceProvider $order)
...
Service provider:
<?php
namespace App\Providers;
use Illuminate\Support\Facades\Gate;
use Illuminate\Support\ServiceProvider;
class OrderServiceProvider extends ServiceProvider
{
/**
* Register any application services.
*
* @return void
*/
public function register()
{
$this->app->bind('order', function($app){
return new \App\Classes\OrderClass;
});
}
}
In app.php
$app->register('App\Providers\OrderServiceProvider');
Full error code
[2016-11-01 23:57:36] lumen.ERROR: Illuminate\Contracts\Container\BindingResolutionException: Unresolvable dependency resolving [Parameter #0 [ <required> $app ]] in class Illuminate\Support\ServiceProvider in /var/www/trade/vendor/illuminate/container/Container.php:850
Stack trace:
#0 /var/www/trade/vendor/illuminate/container/Container.php(817): Illuminate\Container\Container->resolveNonClass(Object(ReflectionParameter))
#1 /var/www/trade/vendor/illuminate/container/Container.php(788): Illuminate\Container\Container->getDependencies(Array, Array)
#2 /var/www/trade/vendor/illuminate/container/Container.php(644): Illuminate\Container\Container->build('App\\Providers\\O...', Array)
#3 /var/www/trade/vendor/laravel/lumen-framework/src/Application.php(211): Illuminate\Container\Container->make('App\\Providers\\O...', Array)
#4 /var/www/trade/vendor/illuminate/container/Container.php(574): Laravel\Lumen\Application->make('App\\Providers\\O...')
#5 /var/www/trade/vendor/illuminate/container/Container.php(534): Illuminate\Container\Container->addDependencyForCallParameter(Object(ReflectionParameter), Array, Array)
#6 /var/www/trade/vendor/illuminate/container/Container.php(506): Illuminate\Container\Container->getMethodDependencies(Array, Array)
#7 /var/www/trade/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(610): Illuminate\Container\Container->call(Array, Array)
#8 /var/www/trade/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(576): Laravel\Lumen\Application->callControllerCallable(Array, Array)
#9 /var/www/trade/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(550): Laravel\Lumen\Application->callLumenController(Object(App\Http\Controllers\PostController), 'incomingPOST', Array)
#10 /var/www/trade/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(512): Laravel\Lumen\Application->callControllerAction(Array)
#11 /var/www/trade/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(492): Laravel\Lumen\Application->callActionOnArrayBasedRoute(Array)
#12 [internal function]: Laravel\Lumen\Application->Laravel\Lumen\Concerns{closure}(Object(Illuminate\Http\Request))
#13 /var/www/trade/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(52): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#14 /var/www/trade/app/Http/Middleware/SessionMiddleware.php(22): Laravel\Lumen\Routing\Pipeline->Laravel\Lumen\Routing{closure}(Object(Illuminate\Http\Request))
#15 /var/www/trade/vendor/illuminate/pipeline/Pipeline.php(137): App\Http\Middleware\SessionMiddleware->handle(Object(Illuminate\Http\Request), Object(Closure))
#16 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}(Object(Illuminate\Http\Request))
#17 /var/www/trade/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#18 /var/www/trade/vendor/illuminate/pipeline/Pipeline.php(104): Laravel\Lumen\Routing\Pipeline->Laravel\Lumen\Routing{closure}(Object(Illuminate\Http\Request))
#19 /var/www/trade/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(647): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#20 /var/www/trade/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(493): Laravel\Lumen\Application->sendThroughPipeline(Array, Object(Closure))
#21 /var/www/trade/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(394): Laravel\Lumen\Application->handleFoundRoute(Array)
#22 /var/www/trade/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(650): Laravel\Lumen\Application->Laravel\Lumen\Concerns{closure}()
#23 /var/www/trade/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(400): Laravel\Lumen\Application->sendThroughPipeline(Array, Object(Closure))
#24 /var/www/trade/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(341): Laravel\Lumen\Application->dispatch(NULL)
#25 /var/www/trade/public/index.php(28): Laravel\Lumen\Application->run()
#26 {main}
Please or to participate in this conversation.