[OJS 3.2.1-1 wiht Postgres] Crossref XML Exprt Plugins not working

Hi,
the CrossRef XML Export Plugin is not displaying the articles.

The following error is appearing in the log:

ror] [pid 13360] [client 172.20.7.116:55065] PHP Fatal error:  Uncaught Error: Call to a member function getId() on null in /var/www/ojs-3.2.1-1/controllers/grid/submissions/ExportPublishedSubmissionsListGridCellProvider.inc.php:77\nStack trace:\n#0 /var/www/ojs-3.2.1-1/lib/pkp/classes/controllers/grid/GridCellProvider.inc.php(56): ExportPublishedSubmissionsListGridCellProvider->getCellActions(Object(Request), Object(GridRow), Object(GridColumn))\n#1 /var/www/ojs-3.2.1-1/lib/pkp/classes/controllers/grid/GridHandler.inc.php(1104): GridCellProvider->render(Object(Request), Object(GridRow), Object(GridColumn))\n#2 /var/www/ojs-3.2.1-1/lib/pkp/classes/controllers/grid/GridHandler.inc.php(1011): GridHandler->_renderCellInternally(Object(Request), Object(GridRow), Object(GridColumn))\n#3 /var/www/ojs-3.2.1-1/lib/pkp/classes/controllers/grid/GridHandler.inc.php(988): GridHandler->renderRowInternally(Object(Request), Object(GridRow))\n#4 /var/www/ojs-3.2.1-1/lib/pkp/classes/controllers/grid/GridHandler.inc.php(1033): GridHandler->renderRowsInternally(Object(Request), Array)\n#5 /var/ww in /var/www/ojs-3.2.1-1/controllers/grid/submissions/ExportPublishedSubmissionsListGridCellProvider.inc.php on line 77, referer: https://periodicos.ufes.br/romanitas/management/importexport/plugin/CrossRefExportPlugin

What could it be? In some other journals, it does not display any articles and in others it works normally. In this one, it keeps charging all the time.
image

Hi @Adriano_Jose,

It looks like OJS is trying to generate a list that includes a submission that doesn’t have a properly designated issue. If you’re handy with coding, you can determine which submission it is by looking in controllers/grid/submissions/ExportPublishedSubmissionsListGridCellProvider.inc.php around line 77:

$dispatcher->url($request, ROUTE_COMPONENT, null, 'grid.issues.BackIssueGridHandler', 'editIssue', null, array('issueId' => $issue->getId())),

The call that’s causing problems is $issue->getId() – the $issue object doesn’t exist. You can trace a little higher in the code to where it’s fetched from the database:

$issue = $issueDao->getById($issueId, $contextId);

I would suggest adding an error_log above that to dump the $issueId and $submission->getId(), then inspecting that submission in the database to look for a data inconsistency.

Regards,
Alec Smecher
Public Knowledge Project Team