Projekt

Allgemein

Profil

Geonetwork-Fehler im Zusammenspiel mit Thüringer-Katalog

Problem

Beim CSW-Harvesten des Katalogs

http://www.geoportal-th.de:8081/SDIProCSW/Service.svc/get?Request=GetCapabilities&Service=CSW&Version=2.0.2

aus Thüringen tritt folgender Fehler in Geonetwork 2.10.4 auf:

class org.fao.geonet.csw.common.exceptions.OperationNotSupportedEx
Check with your administrator the error.
OperationNotSupportedEx ... Raised exception when searching: null
Check with your administrator the error.
Raised exception when searching: null OperationAbortedEx
org.fao.geonet.csw.common.exceptions.OperationNotSupportedEx:
code=OperationNotSupported, locator=Binary, message=null
class org.fao.geonet.csw.common.exceptions.OperationNotSupportedEx
Check with your administrator the error.
OperationNotSupportedEx ... Raised exception when searching:
null Check with your administrator the error.
Raised exception when searching: null OperationAbortedEx
org.fao.geonet.csw.common.exceptions.OperationNotSupportedEx:
code=OperationNotSupported, locator=Binary, message=null

Erklärung:

Anfrage von Geonetwork an den Katalog:

POST /SDIProCSW/Service.svc/post HTTP/1.1
User-Agent: Jakarta Commons-HttpClient/3.0.1
Host: www.geoportal-th.de:8081
Content-Length: 460
Content-Type: application/xml; charset=UTF8
<?xml version="1.0" encoding="UTF-8"?>
<csw:GetRecords
xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" 
xmlns:dc="http://purl.org/dc/elements/1.1/" 
service="CSW" 
version="2.0.2" 
resultType="results" 
outputFormat="application/xml" 
outputSchema="http://www.isotc211.org/2005/gmd" 
startPosition="1" 
maxRecords="20">
<csw:Query typeNames="csw:Record,gmd:MD_Metadata">
<csw:ElementSetName>summary</csw:ElementSetName>
</csw:Query>
</csw:GetRecords>

Antwort vom Katalog:

HTTP/1.1 200 OK
Date: Mon, 25 Apr 2016 13:19:43 GMT
Server: Apache
Cache-Control: private
Content-Length: 452
Content-Type: text/xml
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Vary: Accept-Encoding
<?xml version="1.0" encoding="utf-8"?>
<ExceptionReport
xsi:schemaLocation="http://www.opengis.net/ows http://schemas.opengis.net/ows/1.0.0/owsExceptionReport.version="1.2.0" 
xmlns="http://www.opengis.net/ows" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Exception exceptionCode="OperationNotSupported" locator="Binary">
<ExceptionText>The operation 'Binary' is not supported by this service.</ExceptionText>
</Exception>
</ExceptionReport>
Der Thüringer-Katalog kommt mit dem typeNames-Query nicht zurecht (siehe oben den
orangenen Text).

Lösung 1:

Wird nur ein Element verwendet (= csw:Record oder gmd:MD_Metadata) (= keine Trennung mit Komma), funktioniert alles. Angepasste (Zeilenumbrüche eingefügt) Beispiel-Anfrage aus Geonetwork 2.10.4:

<?xml version="1.0" encoding="UTF-8"?>
<csw:GetRecords
xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" 
xmlns:dc="http://purl.org/dc/elements/1.1/" 
service="CSW" 
version="2.0.2" 
resultType="results" 
outputFormat="application/xml" 
outputSchema="http://www.isotc211.org/2005/gmd" 
startPosition="1" 
maxRecords="20">
<csw:Query typeNames="csw:Record">
<csw:ElementSetName>summary</csw:ElementSetName>
</csw:Query>
</csw:GetRecords>

Lösung 2:

Werden beide Elemente verwendet (= csw:Record und gmd:MD_Metadata) (= Trennung mit Leerzeichen), funktioniert alles. Angepasste (Zeilenumbrüche eingefügt) Beispiel-Anfrage aus Geonetwork 3.1-develop:

<?xml version="1.0" encoding="UTF-8"?>
<csw:GetRecords
xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" 
xmlns:dc="http://purl.org/dc/elements/1.1/" 
xmlns:gmd="http://www.isotc211.org/2005/gmd" 
service="CSW" 
version="2.0.2" 
resultType="results" 
outputFormat="application/xml" 
outputSchema="http://www.isotc211.org/2005/gmd" 
startPosition="1" 
maxRecords="20">
<csw:Query typeNames="gmd:MD_Metadata csw:Record">
<csw:ElementSetName>summary</csw:ElementSetName>
</csw:Query>
</csw:GetRecords>