##api.submissions.unknownError## ( 3.1.1.2, restful_urls = Off, PHP=5.6.38 )

Like a few other people, I’m having issues with ##api.submissions.unknownError## flashing up three times when going on to the submissions tab. I seem to be able to upload submissions anyway, but I am nervous of proceeding too far with this error flashing away.

Restful URLs and PHP versions seem as recommended. I don’t know what else to do! Suggestions very gratefully received…

PHP log contains no errors per se, mainly bumf about standards.

[26-Sep-2018 12:05:04 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:05:07 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:06:47 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:06:47 UTC] PHP Strict Standards: Declaration of SubmissionFileDAO::fromRow() should be compatible with PKPSubmissionFileDAO::fromRow($row, $fileImplementation) in /home/seanking/public_html/acmejournal.org/classes/article/SubmissionFileDAO.inc.php on line 23
[26-Sep-2018 12:06:49 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:06:49 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:06:49 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:06:49 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:06:49 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:06:49 UTC] PHP Strict Standards: Declaration of SubmissionFileDAO::fromRow() should be compatible with PKPSubmissionFileDAO::fromRow($row, $fileImplementation) in /home/seanking/public_html/acmejournal.org/classes/article/SubmissionFileDAO.inc.php on line 23
[26-Sep-2018 12:06:49 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:07:29 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:07:29 UTC] PHP Strict Standards: Declaration of ArticleHandler::initialize() should be compatible with PKPHandler::initialize($request) in /home/seanking/public_html/acmejournal.org/pages/article/ArticleHandler.inc.php on line 395
[26-Sep-2018 12:07:29 UTC] PHP Deprecated: Non-static method PKPRequest::_checkThis() should not be called statically, assuming $this from incompatible context in /home/seanking/public_html/acmejournal.org/lib/pkp/classes/core/Dispatcher.inc.php on line 245
[26-Sep-2018 12:07:29 UTC] ojs2: 404 Not Found
[26-Sep-2018 12:08:24 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:08:24 UTC] PHP Strict Standards: Declaration of ArticleHandler::initialize() should be compatible with PKPHandler::initialize($request) in /home/seanking/public_html/acmejournal.org/pages/article/ArticleHandler.inc.php on line 395
[26-Sep-2018 12:08:24 UTC] PHP Deprecated: Non-static method PKPRequest::_checkThis() should not be called statically, assuming $this from incompatible context in /home/seanking/public_html/acmejournal.org/lib/pkp/classes/core/Dispatcher.inc.php on line 245
[26-Sep-2018 12:08:24 UTC] ojs2: 404 Not Found
[26-Sep-2018 12:09:52 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:53 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:53 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:53 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:54 UTC] PHP Strict Standards: Declaration of IssueGridRow::initialize() should be compatible with GridRow::initialize($request, $template = NULL) in /home/seanking/public_html/acmejournal.org/controllers/grid/issues/IssueGridRow.inc.php on line 130
[26-Sep-2018 12:09:54 UTC] PHP Strict Standards: Declaration of IssueGridRow::initialize() should be compatible with GridRow::initialize($request, $template = NULL) in /home/seanking/public_html/acmejournal.org/controllers/grid/issues/IssueGridRow.inc.php on line 130
[26-Sep-2018 12:09:54 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:54 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:55 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:56 UTC] PHP Strict Standards: Declaration of SubmissionFileDAO::fromRow() should be compatible with PKPSubmissionFileDAO::fromRow($row, $fileImplementation) in /home/seanking/public_html/acmejournal.org/classes/article/SubmissionFileDAO.inc.php on line 23
[26-Sep-2018 12:09:56 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:57 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:57 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:57 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:57 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:57 UTC] PHP Strict Standards: Declaration of SubmissionFileDAO::fromRow() should be compatible with PKPSubmissionFileDAO::fromRow($row, $fileImplementation) in /home/seanking/public_html/acmejournal.org/classes/article/SubmissionFileDAO.inc.php on line 23
[26-Sep-2018 12:09:57 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386
[26-Sep-2018 12:09:57 UTC] PHP Strict Standards: Declaration of PKPUsageEventPlugin::getEnabled() should be compatible with LazyLoadPlugin::getEnabled($contextId = NULL) in /home/seanking/public_html/acmejournal.org/lib/pkp/plugins/generic/usageEvent/PKPUsageEventPlugin.inc.php on line 386

See what errors end up in your javascript console when you log in to the dashboard.
Especially important is the url of the api call which in your case is returning 404 for some reason or the other.

@ajnyga

Thanks for the suggestion. The api errors seemed to disappear yesterday when I had loaded some articles up into an issue. But now they are back again…

Below is a cut and paste of the javascript console when I logged into the Dashboard and the error came up. There’s nothing very obvious to me, but perhaps you can interpret?

Invalid chrome URI: /
Empty string passed to getElementById(). jquery.js:2778:12
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:214:3
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:214:3
ajaxErrorCallback
https://acmejournal.org/js/build.js:6:36896
ajaxErrorCallback self-hosted:986:17 error
https://acmejournal.org/js/build.js:1:46507
fire
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:3099:10
fireWith
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:3211:7
done
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:9312:5
callback
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:9720:8
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:204:4
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen/<
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:204:4
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:214:3
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:214:3
ajaxErrorCallback
https://acmejournal.org/js/build.js:6:36896
ajaxErrorCallback self-hosted:986:17 error
https://acmejournal.org/js/build.js:1:46507
fire
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:3099:10
fireWith
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:3211:7
done
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:9312:5
callback
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:9720:8
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:204:4
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen/<
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:204:4
[Show/hide message details.] TypeError: $handledElement is undefined
ModalHandler.js:210:4
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen/<
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:210:4
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:214:3
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:214:3
ajaxErrorCallback
https://acmejournal.org/js/build.js:6:36896
ajaxErrorCallback self-hosted:986:17 error
https://acmejournal.org/js/build.js:1:46507
fire
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:3099:10
fireWith
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:3211:7
done
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:9312:5
callback
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:9720:8
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:204:4
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen/<
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:204:4
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:210:4
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen/<
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:210:4

Digging some more into this…
Javaconsole errors:

[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:214:3
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:214:3
ajaxErrorCallback
https://acmejournal.org/js/build.js:6:36896
ajaxErrorCallback self-hosted:986:17 error
https://acmejournal.org/js/build.js:1:46507
fire
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:3099:10
fireWith
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:3211:7
done
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:9312:5
callback
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:9720:8
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:204:4
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen/<
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:204:4
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:214:3
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:214:3
ajaxErrorCallback
https://acmejournal.org/js/build.js:6:36896
ajaxErrorCallback self-hosted:986:17 error
https://acmejournal.org/js/build.js:1:46507
fire
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:3099:10
fireWith
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:3211:7
done
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:9312:5
callback
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:9720:8
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:204:4
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen/<
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:204:4
[Show/hide message details.] TypeError: $handledElement is undefined
ModalHandler.js:210:4
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen/<
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:210:4
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:214:3
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:214:3
ajaxErrorCallback
https://acmejournal.org/js/build.js:6:36896
ajaxErrorCallback self-hosted:986:17 error
https://acmejournal.org/js/build.js:1:46507
fire
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:3099:10
fireWith
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:3211:7
done
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:9312:5
callback
https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js:9720:8
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:204:4
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen/<
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:204:4
[Show/hide message details.] TypeError: $handledElement is undefined ModalHandler.js:210:4
$.pkp.controllers.modal.ModalHandler.prototype.modalOpen/<
https://acmejournal.org/lib/pkp/js/controllers/modal/ModalHandler.js:210:4

Sorry to overload, but looking at XHR URLs of the kind below seem to be getting a 503 unavailable response…??

XHRGEThttps://acmejournal.org/index.php/ACME/api/v1/submissions?status=1&assignedTo=-1&searchPhrase=&count=20&offset=0&=1538047936724[HTTP/1.1 503 Service Unavailable 270ms]

With one journal I had a similar problems where the API calls were returning 502 errors with no good reason. I was also seeing a problem where the registration form was not loading fully.

Can you try this: delete your OJS file cache from the cache folder and cache/t_compile folder and see if that helps for a while?

In the case of the other journal, we just had to change the server. I could not get the tech support there to answer basic questions so tracking down the problem was impossible.

Not saying that this is the same problem, just sounds the same.

@NateWr do you have an idea why the API calls would return 503 or 502 errors when the site itself is working?

I’m not aware of any place where OJS as an application deliberately returns 502/503. The 5** range is usually reserved for server-level errors, but I’ve never seen something like a fatal error in PHP return anything but a 500 error.

Looking at 502 (Bad Gateway) and 503 (Service Unavailable), my first guess would be maybe a firewall or some kind of server-level traffic filtering or re-routing happening.

If it’s happening only with API calls, you might google “slim api” and the error codes. That’s the framework we use to serve our REST API.

Seeing some 502 + Slim related things with Nginx, but the server that had problems in my case was Apache. And yes: the site itself was working, but API calls were returning 502. The same applies to the problem above I believe: the site itself is working but the API calls are sending 503.

@ajnyga
Thanks for the interest and help with this.

I tried deleting the contents of the cache/t_compile folder and that made no difference.

I’m afraid I couldn’t find the OJS file cache you mention (or rather wasn’t sure quite what you mean). There’s a lot of stuff in the cache…

Hi, the file cache was the t_compile folder. Emptying that folder helped some times on the server where I experienced this problem. It was really hard to say what was going on there because of the limited tech support.

EDIT:
Just a note that the url
https://acmejournal.org/index.php/ACME/api/v1/submissions?status=1&assignedTo=-1&searchPhrase=&count=20&offset=0&=1538047936724
did return 404 for me a couple of times (which is what it should, because I am not logged in as an editor to your system). But now it is again returning 503.

So something did happen for a while?

edit: nevermind. The difference seems to be whether you click the url from here or if you reload the url by hitting enter. You basically end up having either 404 or 503.

Do you have an .htaccess file?

No, I don’t seem to have a .htaccess

At least not at base level of acmejournal.org

https://acmejournal.org/index.php/ACME/api/v1/submissions?status=1&assignedTo=-1&searchPhrase=&count=20&offset=0&=1538047936724

gives me a 503 if I’m logged in and a 404 if I’m not…

ok, 404 is what you should get if not logged in.

But the 503, I can not explain. Or the fact that I too get 503 if I click the link from here. And 404 if I reload the page

Actually, now when I tried (logged in ) I got an odd JSON screen
Capture1 Capture2

This is exactly what happened to me in the other server. Sometimes it just worked, but a lot of times it returned 502.

That is basically what you should see from the url when you are logged in.

What happens if you go to the Dashboard now?

@NateWr
Thanks for the suggestions.
I shall ask my host technical support about any kind of firewall/filtering that might be impacting.
I did google ‘slim api’ but my understanding of such matters is rather limited…

I get the api error and 503 is back again…!!

And probably if you do another round of file cache deleting you get a new JSON response eventually. But this is as far I got with the problem on the other server and just decided to get a new server.

OK - it depends on whether my other tab is resting on ‘submissions’ in the dashboard or not.

If I am, say, in ‘issues’ then the proper JSON screen shows.

Click back to submissions,a api errors appear, and then refresh the link and we’re back to 503…