rainlab / mailchimp-plugin

Provides MailChimp integration services
MIT License
11 stars 16 forks source link

Exception while form submit #40

Closed chrisvidal closed 6 months ago

chrisvidal commented 6 months ago

Still got this error on one of my client server while its working well on another server.

Any hint on where to look at to solve this please?

TypeError: Symfony\Component\Mailer\Transport\Dsn::__construct(): Argument #2 ($host) must be of type string, null given, called in /var/www/html/vendor/laravel/framework/src/Illuminate/Mail/MailManager.php on line 186 and defined in /var/www/html/vendor/symfony/mailer/Transport/Dsn.php:28
Stack trace:
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Mail/MailManager.php(186): Symfony\Component\Mailer\Transport\Dsn->__construct()
#1 /var/www/html/vendor/laravel/framework/src/Illuminate/Mail/MailManager.php(164): Illuminate\Mail\MailManager->createSmtpTransport()
#2 /var/www/html/vendor/october/rain/src/Mail/MailManager.php(37): Illuminate\Mail\MailManager->createSymfonyTransport()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Mail/MailManager.php(97): October\Rain\Mail\MailManager->resolve()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Mail/MailManager.php(75): Illuminate\Mail\MailManager->get()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Mail/MailManager.php(554): Illuminate\Mail\MailManager->mailer()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(338): Illuminate\Mail\MailManager->__call()
#7 /var/www/html/plugins/abwebdevelopers/forms/components/CustomForm.php(624): Illuminate\Support\Facades\Facade::__callStatic()
#8 /var/www/html/plugins/abwebdevelopers/forms/components/CustomForm.php(341): ABWebDevelopers\Forms\Components\CustomForm->sendNotification()
#9 /var/www/html/modules/system/traits/DependencyMaker.php(29): ABWebDevelopers\Forms\Components\CustomForm->onFormSubmit()
#10 /var/www/html/modules/cms/classes/ComponentBase.php(231): Cms\Classes\ComponentBase->makeCallMethod()
#11 /var/www/html/modules/cms/classes/controller/HasAjaxRequests.php(350): Cms\Classes\ComponentBase->runAjaxHandler()
#12 /var/www/html/modules/cms/classes/controller/HasAjaxRequests.php(129): Cms\Classes\Controller->runAjaxHandler()
#13 /var/www/html/modules/cms/classes/Controller.php(386): Cms\Classes\Controller->execAjaxHandlers()
#14 /var/www/html/modules/cms/classes/Controller.php(226): Cms\Classes\Controller->runPage()
#15 /var/www/html/modules/cms/classes/CmsController.php(71): Cms\Classes\Controller->run()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): Cms\Classes\CmsController->run()
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\Routing\Controller->callAction()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Route.php(260): Illuminate\Routing\ControllerDispatcher->dispatch()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Route.php(205): Illuminate\Routing\Route->runController()
#20 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(798): Illuminate\Routing\Route->run()
#21 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(141): Illuminate\Routing\Router->Illuminate\Routing\{closure}()
#22 /var/www/html/plugins/vdlp/twofactorauthentication/classes/TwoFactorMiddleware.php(57): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Vdlp\TwoFactorAuthentication\Classes\TwoFactorMiddleware->handle()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Routing\Middleware\SubstituteBindings->handle()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#27 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\View\Middleware\ShareErrorsFromSession->handle()
#28 /var/www/html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(121): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(64): Illuminate\Session\Middleware\StartSession->handleStatefulRequest()
#30 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Session\Middleware\StartSession->handle()
#31 /var/www/html/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#32 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(67): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Cookie\Middleware\EncryptCookies->handle()
#35 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#36 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(799): Illuminate\Pipeline\Pipeline->then()
#37 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(776): Illuminate\Routing\Router->runRouteWithinStack()
#38 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(740): Illuminate\Routing\Router->runRoute()
#39 /var/www/html/vendor/october/rain/src/Router/CoreRouter.php(32): Illuminate\Routing\Router->dispatchToRoute()
#40 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(190): October\Rain\Router\CoreRouter->dispatch()
#41 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(141): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}()
#42 /var/www/html/plugins/zaxbux/securityheaders/classes/SecurityHeaderMiddleware.php(20): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#43 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Zaxbux\SecurityHeaders\Classes\SecurityHeaderMiddleware->handle()
#44 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(86): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#45 /var/www/html/vendor/october/rain/src/Foundation/Http/Middleware/CheckForMaintenanceMode.php(23): Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle()
#46 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): October\Rain\Foundation\Http\Middleware\CheckForMaintenanceMode->handle()
#47 /var/www/html/plugins/vdlp/redirect/classes/RedirectMiddleware.php(41): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#48 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Vdlp\Redirect\Classes\RedirectMiddleware->handle()
#49 /var/www/html/plugins/zaxbux/securityheaders/classes/NonceGeneratorMiddleware.php(22): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#50 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Zaxbux\SecurityHeaders\Classes\NonceGeneratorMiddleware->handle()
#51 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#52 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(165): Illuminate\Pipeline\Pipeline->then()
#53 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(134): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter()
#54 /var/www/html/index.php(70): Illuminate\Foundation\Http\Kernel->handle()
daftspunk commented 6 months ago

Hey @chrisvidal

Check the mail configuration. This error suggests that the mail hostname is empty in your .env file.

MAIL_HOST=null
chrisvidal commented 6 months ago

thanks @daftspunk this MAIL_HOST variable is supposed to be used when the platform is sending an email, however here this is not the case as it is supposed to register an email onto a mailchimp account. So I am not sure to understand what I should be setting in this variables. And it's working fine on the UAT server with the same MAIL_HOST=null

daftspunk commented 6 months ago

Hey again,

In the working UAT env, take a look at the system_settings table with the system_mail_settings key. This can adjust the mail host, and it can even exist in the cache (if not found in the database).

Nonetheless the MAIL_HOST value should never be null and this is the exact reason behind the error.

Argument 2 ($host) must be of type string, null given

In new installs, we even set it to mailpit specifically so it is set to something:

https://github.com/octobercms/october/blob/3.x/.env.example#L37

It's like a quirk of Laravel