Chyba autentizace: Cannot instantiate service ‚Nette\Security\IAuthenticator‘, class ‚Authenticator‘ not found
- r.a.b.b
- Člen | 7
Verze Nette: Nette Framework 2.0-dev (revision 7616569 released on
2011–03–10) (2.0 ALPHA pro PHP 5.2)
Verze PHP: PHP 5.3
Dobrý den,
při volání
$user->login($form[‚login‘]->value,$form[‚password‘]->value);
v LoginForm.php mě to hlásí chybu Cannot instantiate service
‚Nette\Security\IAuthenticator‘, class ‚Authenticator‘ not found.
Dělal jsem to podle tutoriálu. Procházel jsem si jiná témata na fóru kde
se to již řešilo, avšak nepodařilo se mi to rozchodit.
Chyba přesně vypadá takto:
AmbiguousServiceException
Cannot instantiate service 'Nette\Security\IAuthenticator', class 'Authenticator' not found.
Call stack
1. Environment/Environment.php (335) source ► ServiceLocator-> getService (arguments ►)
2. Web/User.php (163) source ► Environment:: getService (arguments ►)
3. Web/User.php (73) source ► User-> getAuthenticationHandler ()
4. forms/LoginForm.php (34) source ► User-> login (arguments ►)
...
radek 34: $user->login($form['login']->value,$form['password']->value);
...
5. <PHP inner-code> Forms\LoginForm-> formSubmited (arguments ►)
6. Utils/Callback.php (111) source ► call_user_func_array (arguments ►)
7. Utils/ObjectMixin.php (55) source ► Callback-> invokeArgs (arguments ►)
...
Můžete mi poradit??
- r.a.b.b
- Člen | 7
Třida je v adresari libs/Acl/Security v config.ini
mam:
…
; service.Nette-Security-IAuthenticator = UsersModel
service.Nette-Loaders-RobotLoader.option.directory[] = %appDir%
service.Nette-Loaders-RobotLoader.option.directory[] = %libsDir%
service.Nette-Loaders-RobotLoader.run = TRUE
service.Nette-Security-IAuthorizator = Acl\Security\Acl
service.Nette-Security-IAuthenticator = Acl\Security\Authenticator
…
a temp mam vymazany
Zkousim vse mozne podle fora ale zatim bez uspechu.
- 22
- Člen | 1478
nevím, ale zkus příště prosím formátovat kód..
service.Nette-Security-IAuthenticator = UsersModel //toto asi vyhodit!
service.Nette-Security-IAuthorizator = Acl
service.Nette-Security-IAuthenticator = Authenticator
nestačí jen takto? ja už starej `config.ini syntax `zapomněl :-)
- r.a.b.b
- Člen | 7
Ted to config.ini mam takto:
;service.Nette-Security-IAuthenticator = UsersModel
service.Nette-Loaders-RobotLoader.option.directory[] = %appDir%
service.Nette-Loaders-RobotLoader.option.directory[] = %libsDir%
service.Nette-Loaders-RobotLoader.run = TRUE
service.Nette-Security-IAuthorizator = Acl
service.Nette-Security-IAuthenticator = Authenticator
a bohužel pořád žádná změna :)