Veel

Looge geoserveris geotifi andmepood

Looge geoserveris geotifi andmepood


Ma ei suuda geoserveris andmepoodi luua, kuid kui proovin sellele juurde pääseda geoserveri administraatorikonsoolis, kuvatakse see tõrge:

valitud andmeid ei saa laadida, kontrollige, kas laadurimoodul on installitud (vabandust selle kohutava traditsiooni pärast, sest tõrketeade on prantsuse keeles)

ja see on kood:

avalik funktsioon createGeoTiffDataStore ($ datastoreName, $ workspaceName, $ location) {$ data = ' '.htmlentities ($ datastoreName, ENT_COMPAT).' GeoTIFF tõsi  fail: '. htmlentities ($ location, ENT_COMPAT).' '.htmlentities ($ workspaceName, ENT_COMPAT).'"; tagastage $ this-> runApi ('workspaces /'. urlencode ($ workspaceName). '/ datastores', 'POST', $ data); } private function runApi ($ apiPath, $ method = 'GET', $ data = ", $ contentType = 'text / xml') {$ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, $ this-> serverUrl. 'rest /'.$ apiPath); curl_setopt ($ ch, CURLOPT_USERPWD, $ this-> kasutajanimi. ":". $ this-> parool); if ($ method ==' POST ') {curl_setopt ($ ch, CURLOPT_POST , true); curl_setopt ($ ch, CURLOPT_POSTFIELDS, $ data);} else if ($ method == 'DELETE' || $ method == 'PUT') {curl_setopt ($ ch, CURLOPT_CUSTOMREQUEST, meetod meetod);} ($ data! = ") {curl_setopt ($ ch, CURLOPT_HTTPHEADER, massiiv (" Content-Type: $ contentType ", 'Content-Length:' .strlen ($ data))); } curl_setopt ($ ch, CURLOPT_HEADER, vale); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, tõene); $ rslt = curl_exec ($ ch); $ info = curl_getinfo ($ ch); if ($ info ['http_code'] == 401) {return 'Juurdepääs keelatud. Kontrollige sisselogimisandmeid. '; } else {return $ rslt; }}

ok ma vist leidsin probleemi:

1) muudan oma xml-i järgmiseks:

 '.htmlentities ($ datastoreName, ENT_COMPAT).' GeoTIFF tõsi  fail: '. htmlentities ($ location, ENT_COMPAT).' '.htmlentities ($ workspaceName, ENT_COMPAT).'

2) ma muudan oma URL-i sihtmärgiks leviala: pood selline:

tagastage $ this-> runApi ('workspaces /'. urlencode ($ workspaceName). '/ coveragestores', 'POST', $ data);

nii et probleem seisnes selles, et ma kasutasin valet xml-skeemi ja vale api sihtimine parandas mind, kui ma eksisin

parimate soovidega.