container nenajde sluzbu authenticator ak je vytvorena pomocou factory

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
bazo
Člen | 620
+
0
-

neviem ci je to bug, alebo zamyslane chovanie, ale v novsich verziach nette systemovy container nenajde sluzbu authenticator, ak je vytvorena pomocou factory, pouzivanej v starsich verziach

config.neon:

services:
	authenticator:
		factory: \AuthenticatorFactory::create

dostanem error service Nette\Security\IAuthenticator not found, aj ked ta trieda implementuje toto rozhranie.

riesenie je bud registrivat authentication handler rucne alebo zmenit config:

services:
	documentManager:
		factory: \Services\Factories\DocumentManagerFactory::create

	hasher: \Security\Passwords\PasswordHasher

	authenticator: \Services\Authenticator(@hasher, @documentManager::getRepository('Account'))

a asi sa to bude tykat aj viacerych defaultnych sluzieb

Editoval bazo (31. 12. 2011 10:49)

Aurielle
Člen | 1281
+
0
-

V novém Configuratoru se musí u factory uvést i class, viz https://forum.nette.org/…sledni-verzi.

Filip Procházka
Moderator | 4668
+
0
-

Jenom pokud není možné ho přečíst z annotace @return té továrny.