Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 21 February 2008 01:40

yann.lejunter
Participant occasionnel
Date d'inscription: 21 Feb 2008
Messages: 15

PB * param Queryable sous FeatureServer

Bonjour,

L'extraction d'un sous-ensemble d'éléments d'une couche sous FeatureServer me pose de gros problème. J'ai retourné l'ensemble dans tous les sens mais visibliment je tombe à côté ;-)

Lorsque j'effectue un appel vers FeatureServer avec un paramètre queryable suivi de l'attribut (voir ci-dessous) je tombe systématiquement sur ce message d'erreur ?!?! (voir encore dessous)

Si quelqu'un peut m'aider à éclaircir ce mystère.... Merci beaucoup
( en enlevant '&queryable=tex2&tex2=rural' cela fonctionne mais avec .... non )


Appel :
====
<hostname>/cgi-bin/featureserver-1.11/featureserver.py?LAYER=route
&format=JSON&maxfeatures=5&queryable=tex2&tex2=rural

Erreur reçue:
=========
An error occurred: 'StringField'
  File "/ms4w/Apache/cgi-bin/featureserver-1.11\FeatureServer\Server.py", line 186, in modPythonHandler
    request_method
  File "/ms4w/Apache/cgi-bin/featureserver-1.11\FeatureServer\Server.py", line 145, in dispatchRequest
    result = method(action)
  File "/ms4w/Apache/cgi-bin/featureserver-1.11\FeatureServer\DataSource\PostGIS.py", line 180, in select
    filters = self.feature_predicates(match)
  File "/ms4w/Apache/cgi-bin/featureserver-1.11\FeatureServer\DataSource\PostGIS.py", line 66, in feature_predicates
    values  = self.value_formats(feature)
  File "/ms4w/Apache/cgi-bin/featureserver-1.11\FeatureServer\DataSource\PostGIS.py", line 58, in value_formats
    valfmt  = {"unicode": "s", "str": "s", "int": "d", "float": "f",


Yann Le Junter
Service SIG
Communauté d'agglomérations Royan Atlantique
y.lejunter@texte-a-enlever.pays-royannais.com
yann.lejunter@texte-a-enlever.hotmail.fr

Dernière modification par yann.lejunter (Thu 21 February 2008 01:42)

Hors ligne

 

#2 Thu 21 February 2008 09:42

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9869
Site web

Re: PB * param Queryable sous FeatureServer

Bonjour,

Je n'y connais rien, mais au vue du message d'erreur, n'y aurait-il pas un problème de format de données ?
un entier définie en chaine ou inversement ?

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 Thu 21 February 2008 10:35

yann.lejunter
Participant occasionnel
Date d'inscription: 21 Feb 2008
Messages: 15

Re: PB * param Queryable sous FeatureServer

Je creuse ça en ce moment mais ça ne me paraît pas être la raison.
Si je change de couche et passe sur une 'population', le paramètre query est tout bonnement inutile.
FeatureServer n'en tient pas compte ?!?!

<host>/featureserver-1.11/featureserver.py?LAYER=population&maxfeatures=5&
format=GeoRSS&queryable=SUBDIVIS&SUBDIVIS=MARENNES

Je n'ai pas de msg d'erreur mais tout se passe comme si aucun paramètre n'était fourni
(<host>/featureserver-1.11/featureserver.py?LAYER=population&maxfeatures=5&
format=GeoRSS)

Rque : maxfeatures est pris en compte mais 'queryable=SUBDIVIS&SUBDIVIS=MARENNES' ne l'est pas ?!?!?!


Merci ;-)

Yann Le Junter
Service SIG
Agglomérations Royan Atlantique

Hors ligne

 

#4 Thu 21 February 2008 10:39

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9869
Site web

Re: PB * param Queryable sous FeatureServer

Bonjour,

Tes données sont dans postgis ? Pourquoi mettre en majuscule ? As tu réellement définie tes champs en majuscule ? Dans postgresql ceux-ci sont automatiquement transformé en minuscule !

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

 

#5 Thu 21 February 2008 11:00

yann.lejunter
Participant occasionnel
Date d'inscription: 21 Feb 2008
Messages: 15

Re: PB * param Queryable sous FeatureServer

C'est très interressant ça !
Si je vais sur PgAdminIII, je constate que le nom des colonnes est en majuscule... cohérent ou faut-il tout de même coinsidérer qu'elles sont en minuscules?

Si je remplace mes paramètres de majuscules vers minuscules alors j'obtiens de nouveau le msg d'erreur du premier post...?!?!
comme si les majuscules étaient ignorées et que les minuscules étaient évaluées et provoquaient une erreur...

Le type de données pour le param subdivis est character(10) donc il ne devrait pas y avoir de pb? non? ;-)

Sinon le codage de ma base est LATIN1, est-ce que ça pourrait poser un problème ?

Merci ;-)

Hors ligne

 

#6 Thu 21 February 2008 12:32

cbredel
Participant actif
Lieu: Agape Lorraine Nord
Date d'inscription: 20 Feb 2006
Messages: 99
Site web

Re: PB * param Queryable sous FeatureServer

Bonjour,

Postgres fait bien la différence en minuscule et majuscule. Le problème est que pour requêter sur des champs en majuscule il faut mettre le nom du champ ( ou de la table, du schéma, etc) entre double quote.
Si tu as une table avec col1, Col2 et COL3 tu dois faire un  : select col1,"Col2","COL3" from ...

A+

Hors ligne

 

#7 Thu 21 February 2008 14:49

yann.lejunter
Participant occasionnel
Date d'inscription: 21 Feb 2008
Messages: 15

Re: PB * param Queryable sous FeatureServer

Oui effectivement en quotant le nom des colonnes on peut les garder en majuscule, merci pour la confirmation, donc c'est pas ça...
J'ai changé de nom de la colonne en minuscule pour m'assurer que rien ne vient perturber l'ensemble évalué par le script python.

D'ou l'appel:
<host>/featureserver-1.11/featureserver.py?LAYER=population&maxfeatures=5&
format=GeoRSS&queryable=subdivis&subdivis=MARENNES

toujours le même problème...

J'ai changé le type de la colonne pour voir (je suis passé de character(10) à text) mais pas de changement...

Dernière modification par yann.lejunter (Thu 21 February 2008 14:51)

Hors ligne

 

#8 Fri 22 February 2008 11:02

yann.lejunter
Participant occasionnel
Date d'inscription: 21 Feb 2008
Messages: 15

Re: PB * param Queryable sous FeatureServer

Problème résolu smile merci à tous pour votre participation, je reste disponible si qqn rencontre un pb de ce type

Est-ce un soucis d'installation, de compatibilité ou autre ? en tout cas, la récupération des paramètres
d'attributs dans l'URL ne se fait pas correctement en mode Python (utilisation de mod_python v3.3.1 pour Apache 2.2.4 avec FeatureServer 1.11)
L'erreur se déclare pour l'évaluation de StringField qui semble être codé dans une sous-classe util de mod_python (à confirmer)
Les contrôles que j'ai pu effectuer dans le code Python confirme cette hypothèse, si qqn a des infos je suis preneur !

Le passage en mode cgi ne fait pas apparaître l'erreur. J'ai néanmoins été obligé de procéder à des changements dans le code de PostGIS.py
pour faire fonctionner l'ensemble correctement.

Est-ce que qqn utilise FeatureServer sur une DataSource PostGIS avec des paramètres d'attributs (utilisation de queryable) sans problème?
Si oui quelles sont les versions que vous utilisez?

Rque: pour corriger certains fonctionnements j'ai remarqué que l'utilisation des noms de colonnes en minuscule est à privilégier.

Dernière modification par yann.lejunter (Fri 22 February 2008 11:09)

Hors ligne

 

#9 Fri 22 February 2008 11:11

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9869
Site web

Re: PB * param Queryable sous FeatureServer

Bonjour,

Yann, je te conseil de te rapprocher du développeur de FeatureServr, si tu as corrigé un bug cela permettra d'en faire profiter tout le monde wink

Merci à toi,

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

 

#10 Fri 22 February 2008 15:01

yann.lejunter
Participant occasionnel
Date d'inscription: 21 Feb 2008
Messages: 15

Re: PB * param Queryable sous FeatureServer

Oui Yves tu as tout à fait raison, c'est la démarche à adopter ne serait-ce que pour remercier
le/les personnes qui ont mis le code à la disposition de tous smile
Je suis sur la liste de diffusion FeatureServer mais j'attends d'avoir plus d'infos pour
contacter M.Schmidt (config, install, incompatibilité entre plusieurs produits etc.)
Je tiendrais GeoRezo informé quoi qu'il en soit.

Bonne journée

Yann Le Junter

Dernière modification par yann.lejunter (Fri 22 February 2008 15:14)

Hors ligne

 

Pied de page des forums

Powered by FluxBB