[OJS 3.1.2.1] Articles "deposit" button returns blank page

Hi there,
As attached picture, the “deposit” and “download xml” buttons return blank page.
Only “Mark active” button works.
I recently upgrade from OJS 2.4.8.4. to OJS 3.1.2.1.
Other functions work well.

Any help appreciated

1 2

I tried the 4 article to deposit to crossref.
And OJS error_log file (in ojs directory) shows following errors:

[20-Aug-2019 16:54:06 UTC] PHP Fatal error: Uncaught Error: Call to a member function setDeployment() on null in /home1/insanbil/public_html/jhumansciences/ojs/classes/plugins/PubObjectsExportPlugin.inc.php:356
Stack trace:
#0 /home1/insanbil/public_html/jhumansciences/ojs/plugins/importexport/crossref/CrossRefExportPlugin.inc.php(222): PubObjectsExportPlugin->exportXML(Array, ‘article=>crossr…’, Object(Journal), false)
#1 /home1/insanbil/public_html/jhumansciences/ojs/classes/plugins/PubObjectsExportPlugin.inc.php(163): CrossRefExportPlugin->executeExportAction(Object(Request), Array, ‘article=>crossr…’, ‘exportSubmissio…’, ‘articles’, false)
#2 /home1/insanbil/public_html/jhumansciences/ojs/classes/plugins/DOIPubIdExportPlugin.inc.php(31): PubObjectsExportPlugin->display(Array, Object(Request))
#3 /home1/insanbil/public_html/jhumansciences/ojs/lib/pkp/pages/management/PKPToolsHandler.inc.php(98): DOIPubIdExportPlugin->display(Array, Object(Request))
#4 /home1/insanbil/public_html/jhumansciences/ojs/lib/pkp/classes/core/PKPRouter.inc.php(390): P in /home1/insanbil/public_html/jhumansciences/ojs/classes/plugins/PubObjectsExportPlugin.inc.php on line 356

Hi @birkok,

Hmm, it looks like your filters are improperly installed. Did the upgrade complete successfully? What do you get when you run the following database query?

SELECT * FROM versions WHERE product='ojs2';

Regards,
Alec Smecher
Public Knowledge Project Team

Hi Alec,

Thank you for your concern.

  1. I think it wasn’t installed properly, because during installation ended up with white screen. After that I changed “installed=on”, then OJS 3 hes been seen. So it must not been installed properly.

When I try to install again with “installed=off”, gives white screen, and if I catch the upgrade button then gives following message:

DB Error: Table ‘insanbil_ojs3.articles’ doesn’t exist

  1. Here is the result when I run your database query:

Ek%20A%C3%A7%C4%B1klama%202019-09-02%20100106

Thanks a lot

Meanwhile, still old version’s information is shown at system page as follows:

Ek%20A%C3%A7%C4%B1klama%202019-09-02%20113419

Hi all,

The system wasn’t upgraded fully to OJS 3.x and still thinks it’s running OJS 2.4.8-1. Is there any chance that you have either a backup of the OJS 2.x database before the upgrade to 3.x was first attempted? Failing that, do you have an error log from the failed upgrade process?

Regards,
Alec Smecher
Public Knowledge Project Team

Yes I keep OJS 2.4.8-1 database.

But I cannot rolling back since lots of article received

Hi @birkok,

This is unfortunately going to be a bit of a mess – your database was only partially upgraded to OJS 3.x, so all of its content as of that time will be somewhere between the two versions, depending on how far the upgrade got before it stopped. (Do you have the error message that the upgrade failed with? This will be the easiest way to figure out how far the upgrade got, and thus to know what upgrade steps might still be needed.)

The more specific problem you’re encountering with the CrossRef export is happening because the last steps of the upgrade didn’t run. These steps install the filters (like the OJS article to CrossRef XML filter).

It may be possible to work around this problem by doing the following – but make sure to take a good backup first, and I’m afraid this is going to be a little experimental because of the difficult history of your installation:

  • Force your database to consider itself to be OJS 3.1.2-1. Do this with…

    UPDATE versions SET major=3, minor=1, revision=2, build=1 WHERE product='ojs2' and current=1;
    

    The system should now report that it’s running OJS 3.1.2-1 as expected after this change.

  • Run the upgrade script to install the filters:

    php tools/upgrade.php upgrade
    

Again, please make sure to take a complete backup before doing any of this!

Regards,
Alec Smecher
Public Knowledge Project Team

Hi @birkok,

This is equivalent to hitting the “Upgrade” button when you have Installed set to Off.

Regards,
Alec Smecher
Public Knowledge Project Team

Hi @birkok,

What do you get for this query now?

SELECT * FROM versions WHERE product='ojs2';

Regards,
Alec Smecher
Public Knowledge Project Team

Hi @asmecher
Because of time zone I just could answer.

Here is what I get for the query:

Ek%20A%C3%A7%C4%B1klama%202019-09-03%20103729
(Meanwhile I didn’t run the following unles you say to do so:)

Hi @birkok,

Ah, yes, you definitely need to run the UPDATE query first.

Regards,
Alec Smecher
Public Knowledge Project Team

Hi @birkok,

Hmm, that contradicts the screenshot of your versions table you posted above. Does it still look the same?

Thanks,
Alec Smecher
Public Knowledge Project Team

Hi @birkok,

You won’t be able to run that query on a database that doesn’t have an incompletely-executed upgrade on it.

Regards,
Alec Smecher
Public Knowledge Project Team

Hi @asmecher,

I run the query in OJS2 database and get following result:

Ek%20A%C3%A7%C4%B1klama%202019-09-03%20203706

What is next step?

Hi @birkok,

That was the first step described in this message. Now you’ll need to run the upgrade process to complete the second step.

Regards,
Alec Smecher
Public Knowledge Project Team

Hi @birkok,

If this works as I expect, it won’t mean rolling back. The UPDATE query tricks OJS into believing that the upgrade was successfully completed, i.e. that the database is an OJS 3.1.2-1 database. The second step then runs any necessary upgrade steps, i.e. none, and then reviews the filters and plugins installed in the system to ensure that they’re registered with the database. It’s this last part that you’re missing.

Regards,
Alec Smecher
Public Knowledge Project Team

Hi @birkok,

If you turn installed to On, what version does the system report compared to above?

Regards,
Alec Smecher
Public Knowledge Project Team

Hi @birkok,

I’m confused – you previously wrote:

I recently upgrade from OJS 2.4.8.4. to OJS 3.1.2.1.
Other functions work well.

…but now it looks like the system isn’t working with OJS 3.1.2-1?

Regards,
Alec Smecher
Public Knowledge Project Team

I try to install to a new directory, not current production site. Because don’t want to lost new published articles.
If it works I am planning to transfer published articles to working site.
So I did the following: