после обновления symfony от 2.3
до 2.4
я получил ServiceNotFoundException
Fatal error: Uncaught exception 'Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException' with message 'The service "monolog.handler.mojhandler" has a dependency on a non-existent service "swiftmailer.transport.real".' in E:\wamp\www\project\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\Compiler\CheckExceptionOnInvalidReferenceBehaviorPass.php on line 59
вот мой config_prod.yml
imports: - { resource: config.yml } monolog: handlers: main: type: fingers_crossed action_level: error handler: streamed streamed: type: stream path: %kernel.logs_dir%/%kernel.environment%.log level: debug mail: type: fingers_crossed action_level: error handler: buffered channels: ["!app"] # Dont log app because we dont' want 404 errors sending buffered: type: buffer handler: mojhandler mojhandler: type: swift_mailer from_email: %mojhandler_logger_email% to_email: %mojhandler_logger_email% subject: "[Panel] An Error Occurred!" level: debug
и вот моя конфигурация swiftmailer из config.yml
# Swiftmailer Configuration swiftmailer: transport: %mailer_transport% host: %mailer_host% username: %mailer_user% password: %mailer_password% port: %mailer_port% auth_mode: %mailer_auth_mode% encryption: %mailer_encryption%
как я могу это исправить?
По-видимому, это ошибка при обновлении до Monolog Bundle 2.5.0, которая вызывает это, если у вас нет значения конфигурации «spool», установленного в конфигурации swiftmailer.
Кажется, что это ошибка, если мы не задаем конфигурационное значение «spool» в конфигурации swiftmailer.
Чтобы решить эту проблему, мне пришлось самостоятельно создавать недостающие службы (так как я не хочу использовать катушку) в одном из моих сервисов .yml:
swiftmailer.transport.simplemailinvoker: class: Swift_Transport_SimpleMailInvoker swiftmailer.transport.eventdispatcher: class: Swift_Events_SimpleEventDispatcher swiftmailer.transport.real: class: Swift_Transport_MailTransport arguments: [@swiftmailer.transport.simplemailinvoker, @swiftmailer.transport.eventdispatcher]