Neverending Zotero Import


So I'm trying out the zotero import plugin, and I can't seem to get it working.

I've created a private key and entered it with the Atom feed URL at the Zotero Import page, and then I wait ... and wait ...

The page keeps "Loading..." as long as I let it (so far) with no response. I also checked the db and there's nothing populating it. I just tried it with a pretty small collection, so I don't think it's a question of size or collection complexity.

Also, I found that within that same browser session, I can't just stop the import page loading and go elsewhere in the site. I had to actually delete the session cookie to do anything else.

Any thoughts or suggestions? This is a pretty standard LAMP setup on shared hosting, if that makes any difference.


My advice is to keep trying. The plugin is only as stable as the Zotero API, so if that is slow, unresponsive, or just plain broken, so is the plugin.

Normally I'd suspect that your hosting company doesn't allow program execution functions like exex() to be called by Apache, but it seems that the background import process isn't even being called.

The plugin may be hanging during library verification, which calls the Zotero API. This is odd, though, since it should eventually throw an error. Is a new collection being created every time you try to import? If not, then it definitely is hanging on either form validation or library verification. I'd be surprised if it was the former. Again, keep trying.

If it continues not to work, I'd like to reproduce the error using your Atom URL and private key, if at all possible. We can trade these via email. (I'll be out of town until Monday.)

I have no idea about the session problem, though it sounds sketchy. Anyone else from Omeka have ideas about this?

Hi Jim. I suspected something on the Zotero API end as well, but I haven't been able to isolate that. I've noticed, however, that if I just try API requests in a web browser (like ...?key=myprivatekey) it occasionally returns nothing, or it will actually prompt for a username and password. This happens maybe one time out of every four, and entering no login credentials and reloading lets me access the feed items as expected.

However! I just noticed that, on the Omeka end, collections are actually being created, with names appropriate to the Zotero collections I'm trying to import.

I'm still poking around, but I thought that was significant enough to share for now. I'll post further if I find out anything else.

I just tried out the CSV Importer plugin, and I discovered that just trying to visit admin/csv-import causes the same hang. So it seems I have a deeper problem in Omeka.

Looks like this describes my problem exactly:

As I am also on bluehost for this site, and I've recently learned more about navigating their policy on background processes, I may have a way forward with this. Will update.

AHA! Got it.

So, recently I've learned that bluehost does allow background processes, but they have specific limitations on how they're called. I don't know much about how or why this works, but I've discovered that to create a background process from, say, ssh, I just have to prefix whatever I'm doing with 'setsid'.

So for Omeka, I went into application/config/config.ini and set background.php.path = "setsid /usr/bin/php-cli".

I'm not sure why, but it does seem to work.

Also, I don't know if this makes a difference, but our account is on a static IP, which cost extra but comes with extra privileges.