Service of type Nette\Mail\SmtpMailer not found – Nette 2.3
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.

- jasin755
 - Člen | 116
 
Zdravím,
provedl jsem upgrade a Nette 2.3 a začlo mi to házet problém s DI.
Konkrétně:
Service '105_Exsys_Email_EmailService': Service of type Nette\Mail\SmtpMailer needed by Exsys\Email\EmailService::__construct() not found. Did you register it in configuration file?
díval jsem se na namespace a měl by být OK. Ještě radší přikládám composer.json:
{
	"repositories" : [
		{
			"type": "package",
			"package":{
				"name": "h4kuna/gettext-latte",
				"version": "1.4",
				"source": {
					"url": "https://github.com/jasin755/gettext-latte",
					"type": "git",
					"reference": "1.3"
				},
				"autoload": {
					"classmap": [""]
				}
			}
		}
	],
	"require" : {
		"nette/nette" : "2.3.0",
		"kdyby/doctrine" : "~2.0",
		"jkuchar/pdfresponse" : "dev-master",
		"h4kuna/gettext-latte" : "1.4.*@dev",
		"olicek/google-map-api" : "dev-master",
		"jms/serializer" : "dev-master",
		"doctrine/search" : "dev-master",
		"ruflin/Elastica" : "dev-master"
	},
	"autoload" : {
		"psr-0" : {
			"Exsys\\" : "app/Model",
			"Nella\\" : "app/Model",
			"Extractor\\" : "app/Model"
		},
		"classmap" : ["app/presenters"]
	}
}
				
- studna
 - Člen | 181
 
Pokud potřebuješ používat SmtpMailer, musíš si ho „zapnout“ https://doc.nette.org/cs/configuring#….
Ve 2.3 je výchozí SendmailMailer,
který odesílá pomocí fce mail().
Nejlepší bude, když si konstruktor služby
Exsys\Email\EmailService upravíš tak, aby příjmal obecné
rozhraní IMailer
namísto konkrétní třídy.