PKP PN Plugin - Failed Ajax request or invalid JSON returned

Describe the issue or problem

Last week we upgraded from OJS 3.3.0.16 to 3.3.9.9 to 3.4.0.5. The updated version of OJS seems to be working fine, but when we reinstalled the PKP PN plugin, we get a “Failed Ajax request or invalid JSON returned” when we click on the plugin’s settings.

Note: We are new to PKP PN and have not yet had a successful deposit. That said, when on OJS 3.3.0.16 we configured the settings without a problem. We can still see “Network Status: The PKP PN can accept deposits from this journal.”

Steps I took leading up to the issue
For example:

  1. Go to OJS Dashboard > Settings > Website > Plugins > Installed Plugins > PKP PN Plugin
  2. Click on “Settings”
  3. See error

What application are you using?
OJS 3.4.05
PKP PN v3.0.0.0 released on 2024-04-09

Additional information
Please add any screenshots, logs or other information we can use to investigate this problem.

Error Log:

[29-Apr-2024 19:47:59 UTC] PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /home/libblog/ojs.lib.umassd.edu/cache/t_compile/c6d7e5f62ed544dac13f48ac5ae04bcf9f44f842^6a7c2a0a7e0b00393b7c904fa63005c7abbfc745_0.plugins-1-plugins-generic-pln-generic-pln.settings.tpl.php:116
Stack trace:
#0 /home/libblog/ojs.lib.umassd.edu/lib/pkp/lib/vendor/smarty/smarty/libs/sysplugins/smarty_template_resource_base.php(123): content_662f9ec7a62de9_06292341(Object(Smarty_Internal_Template))
#1 /home/libblog/ojs.lib.umassd.edu/lib/pkp/lib/vendor/smarty/smarty/libs/sysplugins/smarty_template_compiled.php(114): Smarty_Template_Resource_Base->getRenderedTemplateCode(Object(Smarty_Internal_Template))
#2 /home/libblog/ojs.lib.umassd.edu/lib/pkp/lib/vendor/smarty/smarty/libs/sysplugins/smarty_internal_template.php(217): Smarty_Template_Compiled->render(Object(Smarty_Internal_Template))
#3 /home/libblog/ojs.lib.umassd.edu/lib/pkp/lib/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatebase.php(238): Smarty_Internal_Template->render(false, 0)
#4 /home/libblog/ojs.lib.umassd.edu/lib/pkp/lib/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatebase.php(116): Smarty_Internal_TemplateBase->_execute(Object(Smarty_Internal_Template), NULL, ‘c6d7e5f62ed544d…’, NULL, 0)
#5 /home/libblog/ojs.lib.umassd.edu/lib/pkp/classes/template/PKPTemplateManager.php(1204): Smarty_Internal_TemplateBase->fetch(‘plugins-1-plugi…’, NULL, ‘c6d7e5f62ed544d…’, NULL)
#6 /home/libblog/ojs.lib.umassd.edu/lib/pkp/classes/form/Form.php(217): PKP\template\PKPTemplateManager->fetch(‘plugins-1-plugi…’)
#7 /home/libblog/ojs.lib.umassd.edu/plugins/generic/pln/classes/form/SettingsForm.php(114): PKP\form\Form->fetch(Object(APP\core\Request), NULL, false)
#8 /home/libblog/ojs.lib.umassd.edu/plugins/generic/pln/PlnPlugin.php(357): APP\plugins\generic\pln\classes\form\SettingsForm->fetch(Object(APP\core\Request))
#9 /home/libblog/ojs.lib.umassd.edu/lib/pkp/classes/controllers/grid/plugins/PluginGridHandler.php(282): APP\plugins\generic\pln\PlnPlugin->manage(Array, Object(APP\core\Request))
#10 [internal function]: PKP\controllers\grid\plugins\PluginGridHandler->manage(Array, Object(APP\core\Request))
#11 /home/libblog/ojs.lib.umassd.edu/lib/pkp/classes/core/PKPRouter.php(334): call_user_func(Array, Array, Object(APP\core\Request))
#12 /home/libblog/ojs.lib.umassd.edu/lib/pkp/classes/core/PKPComponentRouter.php(291): PKP\core\PKPRouter->_authorizeInitializeAndCallRequest(Array, Object(APP\core\Request), Array)
#13 /home/libblog/ojs.lib.umassd.edu/lib/pkp/classes/core/Dispatcher.php(165): PKP\core\PKPComponentRouter->route(Object(APP\core\Request))
#14 /home/libblog/ojs.lib.umassd.edu/lib/pkp/classes/core/PKPApplication.php(388): PKP\core\Dispatcher->dispatch(Object(APP\core\Request))
#15 /home/libblog/ojs.lib.umassd.edu/index.php(21): PKP\core\PKPApplication->execute()
#16 {main}

Here what appears on line 116 of /home/libblog/ojs.lib.umassd.edu/cache/t_compile/c6d7e5f62ed544dac13f48ac5ae04bcf9f44f842^6a7c2a0a7e0b00393b7c904fa63005c7abbfc745_0.plugins-1-plugins-generic-pln-generic-pln.settings.tpl.php

<input type=“text” id=“journal_uuid” name=“journal_uuid” size=“36” maxlength=“36” class=“textField” value="<?php echo call_user_func_array($_smarty_tpl->registered_plugins[ 'modifier' ][ 'escape' ][ 0 ], array( $_smarty_tpl->tpl_vars['journal_uuid']->value ));?>

In case anyone else experiences this issue, we resolved the error by deleting the plugin and reinstalling it from the Gallery.

Didn’t work at first, but then I deleted data and template caches before installing the plugin from the gallery and it worked.