#1 Mon 20 July 2009 09:58
- miss_cancer
- Participant occasionnel
- Date d'inscription: 20 Jul 2009
- Messages: 10
openlayers featureserver
bonjour
je cherche à exporter mes formats WFS crées avec openlayer enregistrés dans featureserver vers postgis,
ben j'ai reussi à les enregistrer dans featureserver mais mnt je cherche à les exporter vers postgis
merci d'avance
Hors ligne
#2 Mon 20 July 2009 10:03
Re: openlayers featureserver
Bonjour,
Comment est configuré la couche où tu as enregistré tes données ? Quel est le format actuel ? FeatureServer n'est pas un format de stockage donc il y a des fichiers ou une base !
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#3 Mon 20 July 2009 10:18
- miss_cancer
- Participant occasionnel
- Date d'inscription: 20 Jul 2009
- Messages: 10
Re: openlayers featureserver
bon je vous envois mon code actuel si je la mets en localhost mes WFS seront enregistrés,est ce k vous pouvez m'aider parceque pour moi c encore flou
Code:
function init(){ map = new OpenLayers.Map('map', {maxResolution: 360/512, controls: []}); var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS", "http://labs.metacarta.com/wms-c/Basic.py", {'layers':'basic'}); map.addLayers([wms]); wfs = new OpenLayers.Layer.WFS("Panneaux solaires", "featureserver.cgi/scribble?format=WFS", {maxfeatures: "100"}, {extractAttributes: true, displayInLayerSwitcher: true}); map.addLayers([wfs]); vectors = new OpenLayers.Layer.Vector("Vector Layer",{displayInLayerSwitcher: false}); map.addLayers([vectors]); map.addControl(new OpenLayers.Control.EditingToolbar(vectors)); map.addControl(new OpenLayers.Control.Navigation()); map.addControl(new OpenLayers.Control.PanZoomBar()); map.addControl(new OpenLayers.Control.MousePosition()); map.addControl(new OpenLayers.Control.LayerSwitcher()); var sf = new OpenLayers.Control.SelectFeature(wfs, {callbacks: {'over':feature_info}}); map.addControl(sf); sf.activate(); geojson = new OpenLayers.Format.GeoJSON(); map.zoomToMaxExtent(); vectors.onFeatureInsert = function(feature) { lastFeature = feature; updateFeature(); var json = geojson.write(feature.layer.features); json = json.replace(/,/g, ', '); document.getElementById('info').innerHTML = json; } wfs.preFeatureInsert = function(feature) { for(var i in feature.style) { if (feature.attributes['fs:'+i]) { feature.style[i] = feature.attributes['fs:'+i]; }}} featureid = 1; vectors.events.on({ "featuremodified": report, "featureadded": report }); } function updateFeature() { if (!lastFeature) { alert("Sorry, no feature to modify."); return; } if ($("title").value) { lastFeature.attributes['title'] = $("title").value; featureid++; $("title").value = "Feature " + featureid; } for(i=1; i<=3; i++) { if ($("key"+i).value && $("value"+i).value) { lastFeature.attributes[$("key"+i).value] = $("value"+i).value; }} var json = geojson.write(lastFeature.layer.features); // not a good idea in general, just for this demo json = json.replace(/,/g, ', '); document.getElementById('info').innerHTML = json; } function success() { $('info').innerHTML = "Features uploaded to server."; vectors.destroyFeatures(); wfs.refresh(); } function upload() { url = "./featureserver.cgi/scribble"; var json = geojson.write(vectors.features); new OpenLayers.Ajax.Request(url, { method: 'post', postBody: json, requestHeaders: ['Accept', 'application/json'], onSuccess: success, onFailure: function(xhr) { $('info').innerHTML = "Failed upload (status code "+xhr.status+"). Check your URL." } } ); } function report(event) { document.f1.rep.value=event.feature.geometry.getArea(); }
merci d'avance
Dernière modification par miss_cancer (Mon 20 July 2009 10:19)
Hors ligne
#4 Mon 20 July 2009 10:50
Re: openlayers featureserver
Miss_cancer,
Le code côté client ne me renseignera pas Tu as fait une installation de featureServer dans lequel il devait y avoir un fichier de configuration par défaut (featureserver.cfg) et que tu as dû utiliser. Cette page te renseignera sur la configuration d'un tel fichier [1], tu remarqueras que tu peux configurer une base postgis simplement [2] comme ceci :
Code:
[mylayer] type=PostGIS dsn=host=localhost dbname=mydata user=myuser password=1234 layer=mylayer fid=gid #defaults to ogc_fid geometry=wkb_geometry # defaults to the_geom srid=26910 #defaults to 4326 attribute_cols=name,some_interesting_column #optional order=cost #optional
Tu n'auras pas ainsi à transférer tes données.
Enfin, juste quelques informations qui me semblent important à te donner :
Le service WFS est un standard qui permet de transférer des données entre application. Par rapport à ton "application", celle-ci me semble être constitué de deux applications sous-jascente : une application cliente (OpenLayers) et une application serveur (FeatureServer). Le lien entre les deux se fait par l'intermédiaire de services tels que le WFS.
OpenLayers, application cliente, gère l'interface pour que l'utilisateur puisse facilement se déplacer, ajouter des couches, modifier des données. Il envoie des requêtes WFS, WMS, etc. vers des serveurs (featureserver pour ta couche WFS). Tes données sont alors traitées par Featureserver qui gère le stockage.
si tu as bien installé featureserver sans le configurer (ie sans l'adapter à ton serveur, ici dans le sens de système) ta couche scribble est stocké dans /home/example/scribble.db
Y.
[1] http://featureserver.org/doc/DataSources
[2] http://featureserver.org/doc/DataSources#postgis
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#5 Mon 20 July 2009 11:20
- miss_cancer
- Participant occasionnel
- Date d'inscription: 20 Jul 2009
- Messages: 10
Re: openlayers featureserver
merci pour ces infos, pour mon featureserver est bien installé et j'ai deja ce fichier featureserver.cfg,je veux just savoir si je dois just ajouter ce code dans cette page et mes donnés seront enregistrés automatiquement??
merci
Hors ligne
#6 Mon 20 July 2009 11:40
Re: openlayers featureserver
Bonjour,
oui je suppose, mais après avoir adapté la config à ton serveur (login, mdp, nom de la base et de la table etc.).
As tu déjà un serveur postgis d'installé ?
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#7 Mon 20 July 2009 11:43
- miss_cancer
- Participant occasionnel
- Date d'inscription: 20 Jul 2009
- Messages: 10
Re: openlayers featureserver
oui le postgis est deja installé mais le problème que je n'ai pas trouvé le fichier scribble.db dans ce cas la mon featureserver n'est pas bien installé??
Hors ligne
#8 Mon 20 July 2009 11:54
Re: openlayers featureserver
je ne sais pas, regarde le fichier featureserver.cfg pour voir la configuration de cette couche Moi j'ai repris ce qu'il y avait dans l'exemple de la doc
si le format est bien DBM, quel est le chemin du fichier ? Est il présent ?
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#9 Mon 20 July 2009 14:22
- miss_cancer
- Participant occasionnel
- Date d'inscription: 20 Jul 2009
- Messages: 10
Re: openlayers featureserver
ben j'ai essaié mais j'ai pas reussi je ne trouve pas la connexion entre postgis et featureserver
Hors ligne
#10 Mon 20 July 2009 14:42
Re: openlayers featureserver
ben j'ai essaié mais j'ai pas reussi je ne trouve pas la connexion entre postgis et featureserver
Je ne comprend pas, qu'appelles tu "la connexion entre postgis et featureserver" ?
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#11 Mon 20 July 2009 15:32
- miss_cancer
- Participant occasionnel
- Date d'inscription: 20 Jul 2009
- Messages: 10
Re: openlayers featureserver
il me faut manipuler des layer enregistrés dans postgis à travers featureserver et mon navigateur est OL
j'ai utilisé ce code dans le fichier .cfg
Code:
[route] type=PostGIS dsn=host=localhost dbname=testgis user=postgres password=xxxx layer=route fid=gid geometry=the_geom srid=22391
est dans ma page html ce code la
Code:
var rou= new OpenLayers.Layer.WFS("WFS route(postgis)", "/featureser/featureserver.cgi/route?format=WFS", {maxfeatures: "300"}, {extractAttributes: true, displayInLayerSwitcher: true});
Hors ligne
#12 Thu 23 July 2009 09:53
- miss_cancer
- Participant occasionnel
- Date d'inscription: 20 Jul 2009
- Messages: 10
Re: openlayers featureserver
bonjour votre sujet m'interesse bcp, j'utilise featureserver pour manipuler(select,update,insert,delete) des données deja dessiné sous navigateur openlayers dans une BD postgis j'ai testé le code
Code:
wfs = new OpenLayers.Layer.WFS("Panneaux solaires", "featureserver.cgi/po?format=WFS", {maxfeatures: "100"}, {extractAttributes: true, displayInLayerSwitcher: true}); map.addLayers([wfs]);
et dans le fichier .cfg
Code:
[po] type=PostGIS dsn=host=localhost dbname=testgis user=postgres password=makina layer=po fid=gid geometry=geometry srid=4326
mais je n'arrive pas à les traiter
j'attends votre aide svp
Hors ligne
#13 Thu 23 July 2009 10:15
Re: openlayers featureserver
Miss_cancer,
Merci de ne pas poser vos questions dans les threads qui ne concerne pas le même problème
Tenter d'apporter des informations supplémentaires pour aider les personnes qui sont susceptible de vous aider si vous êtes bloqué ! Si personne ne répond, il est fort probable que personne n'a la réponse, ou de temps pour y répondre.
Géomatiquement,
Yves pour la modération
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#14 Thu 23 July 2009 10:19
Re: openlayers featureserver
Bonjour,
Une piste : il doit bien y avoir des logs quelque part qui vous informe si la connection se fait ou non, tentez de regarder les logs de featureserver, de postgresql
Y. qui ne sais pas s'il y a un problème puisqu'il n'y a aucun message d'erreur ni de problème posé dans vos messages
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#15 Thu 23 July 2009 10:21
- miss_cancer
- Participant occasionnel
- Date d'inscription: 20 Jul 2009
- Messages: 10
Re: openlayers featureserver
ben à mon avis ma question concerne meme problème,en tt k c'est pas grave et je suis dslé
bonjourné
Hors ligne
#16 Thu 23 July 2009 10:30
Re: openlayers featureserver
Non, ton problème et celui de jule porte effectivement sur l'utilisation de Featureserver, mais le tiens est d'ordre technique : la connection avec la base ne se fait pas (si j'ai compris correctement) alors que Jule pose des questions conceptuelles : qu'est ce qu'un WFS, le REST, quel est la meilleure utilisation, etc.
Et tu n'as pas à être désolé
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#17 Thu 23 July 2009 10:39
- miss_cancer
- Participant occasionnel
- Date d'inscription: 20 Jul 2009
- Messages: 10
Re: openlayers featureserver
bon ok merci ,mais franchement je suis un peu bloquée dans ce sujet et je ne trouve pas des solutions à le traiter
Hors ligne
#18 Thu 23 July 2009 10:45
Re: openlayers featureserver
Et bien comme dis plus haut, il nous faut une description du problème et les messages d'erreur ou bien le comportement non voulu.
Si tu n'as pas de message d'erreur, tente d'utiliser ta couche featureserver directement sans passé par OL, par exemple :
Code:
http://myfeatureserver.com/featureserver.cgi/po/all? maxfeatures=25 &color=green
OL n'affiche pas les messages d'erreur des serveurs, donc s'il y a un problème il vaut mieux appeler directement le service.
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne