The following error is shown at /admin/structure/webform/settings:
The website encountered an unexpected error. Please try again later.
TypeError: Argument 2 passed to Drupal\webform\Form\WebformAdminSettingsForm::buildExcludedPlugins() must be of the type array, null given, called in modules/contrib/webform/src/Form/WebformAdminSettingsForm.php on line 690 in Drupal\webform\Form\WebformAdminSettingsForm->buildExcludedPlugins() (line 1218 of modules/contrib/webform/src/Form/WebformAdminSettingsForm.php).
Drupal\webform\Form\WebformAdminSettingsForm->buildExcludedPlugins(Object, NULL) (Line: 690)
Drupal\webform\Form\WebformAdminSettingsForm->buildForm(Array, Object)
call_user_func_array(Array, Array) (Line: 514)
Drupal\Core\Form\FormBuilder->retrieveForm('webform_admin_settings_form', Object) (Line: 271)
Drupal\Core\Form\FormBuilder->buildForm('webform_admin_settings_form', Object) (Line: 74)
Drupal\Core\Controller\FormController->getContentResult(Object, Object)
call_user_func_array(Array, Array) (Line: 123)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() (Line: 574)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 124)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext(Array, Array) (Line: 97)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
call_user_func_array(Object, Array) (Line: 144)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 64)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 57)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 99)
Drupal\page_cache\StackMiddleware\PageCache->pass(Object, 1, 1) (Line: 78)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 50)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 656)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
This is likely related to the incorrect settings in config/sync/webform.settings.yml, e.g.
Breaks on:
excluded_types: { }
but it should be:
excluded_elements: { }
Looks like an old/manual export setting cause the problem (this prevented submission of forms with attachments).
Comments
Comment #2
kenorb commentedComment #3
kenorb commentedComment #4
jrockowitz commentedTo properly update your site you need to run the database updates and then export all your configuration.
webform_update_8048() changes 'excluded_types' to 'excluded_elements'.
Comment #5
kenorb commentedOk, re-exporting the config from the newer version worked fine (drush config-import --partial).
Comment #6
harrywiseman commentedCould you please explain how I would do this without uninstalling and then reinstalling as I would then lose all data and would lose places this has been used (within Paragraphs and fields etc.)
The only place I can see it updating is in the install file. Help would be greatly appreciated.
Thanks,
Harry
Comment #7
jrockowitz commentedYou can manually reimport the default webform.settings.yml using /admin/config/development/configuration/single/import.
You might also want to export and compare your existing configuration using
/admin/config/development/configuration/single/export/system.simple/webform.settings
Comment #8
georgedamonkey commentedI'm having this issue as well, and attempted to manually reimport the default webform.settings.yml using the link you provided. I choose Configuration type - Webform options. I paste in the contents of webform.settings.yml. When I click the Import button I get this error message:
Error message
Missing ID key "id" for this Webform options import.
Is there something I need to put in under advanced - custom entity id?
Comment #9
Boymix81 commentedHi,
I update with success the default webform's configuration but my old custom webform doesn't work if I click on settings I look the following error :
Drupal\Core\Database\DatabaseExceptionWrapper: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'drupal8MyNickTest.webform' doesn't exist: SELECT w.next_serial AS next_serial FROM {webform} w WHERE webform_id = :db_condition_placeholder_0; Array ( [:db_condition_placeholder_0] => how_much_your_nickname_belongs_t ) in Drupal\webform\WebformEntityStorage->getNextSerial() (line 177 of /var/www/vhosts/mynickname.org/drupal8.mynickname.org/modules/webform/src/WebformEntityStorage.php)
I attach my webform custom configuration (how_much_your_nickname_belongs_t), I find "elements" node instead "element" node like webform_update_8048() replace command maybe this is the problem ? I manually imported configuration with "element" node but this doesn't work and export function return attached configuration.
Could you help me please ?
Thank you,
Best Regards.
Bye Boymix81.
Comment #10
jrockowitz commented@see #2896357: webform_update_8060 Table webform already exists error