HWIOAuthBundle
で動作するようにセットアップしようとしていFOSUserBundle
ます。
を拡張する独自のユーザー プロバイダーを作成する際にFOSUBUserProvider
、次のことを行いました。
namespace Naroga\Reader\CommonBundle\Service\Security;
use HWI\Bundle\OAuthBundle\Security\Core\User\FOSUBUserProvider;
use HWI\Bundle\OAuthBundle\OAuth\Response\UserResponseInterface;
class NarogaUserProvider extends FOSUBUserProvider {
public function loadUserByOAuthUserResponse(UserResponseInterface $response) {
[...]
}
}
私の services.yml は次のとおりです。
naroga.reader.common.security.user_provider:
class: Naroga\Reader\CommonBundle\Service\Security\NarogaUserProvider
arguments: [ @fos_user.user_manager ]
プログラムを実行するたびに、次のエラーが発生します。
Argument 2 passed to HWI\Bundle\OAuthBundle\Security\Core\User\FOSUBUserProvider::__construct() must be of the type array, none given, called in
FOSUBUserProvider::__construct
のシグネチャはpublic function __construct(UserManagerInterface $userManager, array $properties)
.
オーバーライドできるように、サービスの 2 番目のパラメーターとして何を定義すればよいかわかりませんFOSUBUserProvider
。私はそれをグーグルで調べてきましたが、私が見つけたのは同じ質問をしている人だけで、答えはありません。
FOSUBUserProvider の署名に準拠するために 2 番目のパラメーターが何でなければならないかを教えてくれる優しい魂に永遠に感謝します。
ありがとうございました。