Errors after installing Omeka S

I have installed Omeka S Beta2 on both my local XAMPP server (PHP 5.6.19) and on my server at Reclaim Hosting. I get these errors when I go to the URL for the install folder:

XAMPP: Fatal error: Class 'Zend\ServiceManager\AbstractPluginManager' not found in C:\xampp\htdocs\omeka-s-b2\vendor\zendframework\zend-form\src\FormElementManager\FormElementManagerV2Polyfill.php on line 28

Reclaim: Parse error: syntax error, unexpected '.' in /home/swhplibr/public_html/omeka-s-b2/application/src/I18n/Translator.php on line 32

I am successfully running Omeka Classic 2.4 on both servers.

To narrow this down, I tried putting invalid credentials in database.ini. The same XAMPP error occurred. On Reclaim, I got a database access error which suggests that the error occurs after the DB connection has been validated.

Can anyone suggest a way to diagnose the cause of these problems?

In the Reclaim case, you’re probably using too old of a version of PHP. See if you can switch versions or ask Reclaim to do so, so you’re on 5.6 or higher.

On your local 5.6 install, I haven’t seen that specific error before… it’s possible it’s something that’s Windows-specific, but it doesn’t look like it. Make sure first of all that all the S files are there and intact (re-unzip the zip if necessary).

Thank you John. PHP was indeed the problem on my Reclaim server which was running v5.5. I asked them to install a newer version and five minutes later Omeka S was up and running with PHP 5.6.30. My hat is off to Jim Groom at Reclaim Hosting for such responsive support.

Regarding Windows, I downloaded a new S Beta 2 zip file and diffed the contents against the one I previously downloaded and found no differences. I’ll poke around some more, and also try with with Beta 1.

I was able to get S Beta 2 to come up on XAMPP Windows (as John suggested, some files were missing after unzipping - a mystery).

The “Install Omeka S Create First User” page appeared and I supplied the required information and pressed Submit. The page reappeared with the error:

There were errors during installation.
Invalid path to file.

To debug this, I created a new database and ran the install again from a debugger. An exception occurs in the install() function on line 68 of


application\src\Installation\Installer.php

which is trying to perform task

“Omeka\Installation\Task\InstallDefaultVocabularies\Task”

The exception is “Invalid path to file.” The file path is

"C:\xampp\htdocs\omeka-s-beta2\omeka-s\application\src\Service\RdfImporter.php"

That file exists.

At this point I’m stumped. Suggestions?

First guess is the easy, simple possibility of the file permissions not being correct for the server to read that file.

I debugged this further and found the problem in on lines 112 - 114 of

\application\src\Service\RdfImporter.php

112 if ($file != realpath($file) || !is_file($file)) {
113     throw new \Exception('Invalid path to file.');
114 }

It’s the Windows vs. Linux back-slash vs. forward-slash difference. At runtime, the value of $file was

C:\xampp\htdocs\omeka-s-beta2\omeka-s/application/src/Service/RdfImporter.php

but the result of realpath($file) was

C:\xampp\htdocs\omeka-s-beta2\omeka-s\application\src\Service\RdfImporter.php

The comparison failed because of the differing slashes which threw an exception.

I commented-out those three lines and the installation completed successfully.

I’m hoping this same issue isn’t lurking elsewhere in Omeka S, but grateful to be past this instance.

It seems that Microsoft Windows is not compatible with the standards of the web nowadays.

The difference between Windows and Linux file paths has always existed and continues to challenge developers who want their web apps to run on both kinds of servers.

Omeka Team, should I report this as an issue via GitHub or do you log them yourself from the posts in this forum?

We often file bugs ourselves based on things users post here, but always feel free to file one yourself if there isn’t one on some issue. I haven’t created one for this yet.