From: Craig J. <jo...@ut...> - 2010-12-15 07:22:02
|
Hi All, We are currently having some problems harvesting from an OAI-PMH server based at the Australian Antartic Division (http://services.aad.gov.au/oai/provider) When harvesting iso-mcp records from this server we get the following error: <error id="operation-aborted"> <message>Raised exception when searching</message> <class>OperationAbortedEx</class> <stack> <at class="org.fao.geonet.kernel.harvest.harvester.oaipmh.Harvester" file="Harvester.java" line="170" method="search" /> <at class="org.fao.geonet.kernel.harvest.harvester.oaipmh.Harvester" file="Harvester.java" line="103" method="harvest" /> <at class="org.fao.geonet.kernel.harvest.harvester.oaipmh.OaiPmhHarvester" file="OaiPmhHarvester.java" line="217" method="doHarvest" /> <at class="org.fao.geonet.kernel.harvest.harvester.AbstractHarvester $HarvestWithIndexProcessor" file="AbstractHarvester.java" line="371" method="process" /> <at class="org.fao.geonet.kernel.MetadataIndexerProcessor" file="MetadataIndexerProcessor.java" line="39" method="processWithFastIndexing" /> <at class="org.fao.geonet.kernel.harvest.harvester.AbstractHarvester" file="AbstractHarvester.java" line="398" method="harvest" /> <at class="org.fao.geonet.kernel.harvest.harvester.Executor" file="Executor.java" line="87" method="run" /> </stack> <object>BadResumptionTokenException: code=badResumptionToken, message=The 'resumptionToken' argument is unrecognizable</object> </error> The resumption token being returned is: <resumptionToken completeListSize="1147" cursor="0">0/300/1147/iso-mcp/null/null/null</resumptionToken> However, the OAI-PMH harvester seems to be expecting a resumptionToken in a different format: private void parseToken(String strToken) throws BadResumptionTokenException { String[] temp = strToken.split(SEPARATOR); if (temp.length != 6) throw new BadResumptionTokenException("unknown resumptionToken format: "+strToken); set = temp[0]; prefix = temp[1]; from = temp[2] ; until = temp[3] ; randomid = temp[4]; pos = Integer.parseInt( temp[5] ); } Where the separator is '-'. Looking at the OAI-PMH spec at http://www.openarchives.org/OAI/openarchivesprotocol.html I can't see any reference to how the resumptionToken should be formatted. Harvesting from this server in previous versions worked fine because the harvester did not rely on a specific format for the resumption token. Can some one clarify why harvesting from this server no longer works? Is a specific format for the resumptionToken required and if so where is this mandated? Please note that I'm running the harvester in the BlueNetMEST 1.4.2, but the code is now the same in geonetwork trunk. Thanks, -- Craig Jones eMII Infrastructure Programmer IMOS e-Marine Information Infrastructure Facility (eMII) Ph: +61 3 6226 8567 |