-
Notifications
You must be signed in to change notification settings - Fork 495
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OAI-PMH responses indicating errors should be processable by OAI-PMH clients #3797
Comments
@tkgesis thanks but when I run |
[#|2017-04-26T13:29:06.671-0400|WARNING| |
'dc' is not a supported metadataPrefix, while 'oai_dc' is. |
According to http://www.openarchives.org/OAI/openarchivesprotocol.html#ErrorConditions |
Ah, so you get the same error at https://dataverse.unc.edu/oai?verb=ListIdentifiers&set=census&metadataPrefix=foobar presumably. |
generated by 4.5 build 41-dc58ae1: [#|2017-04-27T06:00:08.092-0400|WARNING|glassfish 4.1|edu.harvard.iq.dataverse.harvest.server.web.servlet.OAIServlet|_ThreadID=48;_ThreadName=jk-connector(2);_TimeMillis=1493287208092;_LevelValue=900;| [#|2017-04-27T06:00:08.093-0400|WARNING|glassfish 4.1|javax.enterprise.web|_ThreadID=48;_ThreadName=jk-connector(2);_TimeMillis=1493287208093;_LevelValue=900;| |
@donsizemore thanks for the stacktrace and the version of Dataverse you're running. Here's where "Unknown servlet exception in Get." is coming from: https://github.com/IQSS/dataverse/blob/v4.5.1/src/main/java/edu/harvard/iq/dataverse/harvest/server/web/servlet/OAIServlet.java#L262 |
@tkgesis @donsizemore has this been fixed? I just went to https://dataverse.unc.edu/oai?verb=ListIdentifiers&set=census&metadataPrefix=dc and now it says "HTTP Status 503 - Sorry. OAI Service is disabled on this Dataverse node" like this: Previously it was a 500 error: #3797 (comment) |
Just noting that I get a 500 on demo running 5.10.1 with this:
|
@pdurbin I just tried, and I get: |
@donsizemore nice! Same! Here it is with a little pretty printing:
Closing! (@tkgesis please let us know if it still isn't fixed for you.) |
Oh, wait... a 200 response...
I assume we want non-200 like @tkgesis asked for. Re-opening. Sorry for the noise! |
Right. He's looking for an error response. |
Ok, at least we already return
|
Note: you might want to open an issue at gdcc/xoai and tag me. |
I just mentioned it during the standup - there's a good chance this has already been addressed, during the revamping of the XOAI library by @poikilotherm. demo.dataverse.org just happens to be running a version of Dataverse from before that PR got merged (I'm going to go ahead and upgrade it to v5.12.1, and then this could be re-tested). The OAI protocol description can be found here: http://www.openarchives.org/OAI/openarchivesprotocol.html (it's really straightforward). I'm fairly positive that the 200/OK response is correct. I.e., the protocol always returns 200 on the HTTP level - "yes, your request has been processed" - and then supplies the description of the result (such as "set does not exist" or "no records found", etc.) inside the body of the response. (but I encourage everybody to double-check things like this in the spec). |
Latest library from XOAI (deployed to demo) fixes this issue. |
Now I'm glad investing all the work for updating the lib and how we use it actually pays off! 🥰 |
A valid OAI request such as
https://dataverse.unc.edu/oai?verb=ListIdentifiers&set=census&metadataPrefix=dc
should return a response processable for OAI-PMH clients or HTTP 5XX.
The text was updated successfully, but these errors were encountered: