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

Printemps des cartes 2024

#1 Wed 07 December 2016 18:06

Jean-Marie64
Participant actif
Lieu: Pau
Date d'inscription: 6 Nov 2007
Messages: 131

[MAPSERVER] peut-on utiliser WMS et WFS dans un seul mapfile ?

Bonjour

j'ai défini 2 mapfiles l'un permettant d'exécuter des requêtes WMS, l'autre des requêtes WFS

le mapfile WMS me permet de générer une image et d'obtenir des infos en html sur un layer particulier grâce au modèle TEMPLATE

le mapfile WFS permet d'obtenir des infos au format json sur le même layer

est-il possible de définir 1 seul mapfile permettant de faire à la fois des requêtes WMS et WFS sur un même layer ?

par exemple pour un accès WFS, j'ai la définition suivante pour le layer "Lignes30" :

Code:

layer
  name "Lignes30"
  group "DPT"
  status on
  data "/home/geo/bases/dpt/data/Lignes30.shp"
  labelmaxscaledenom 50010
  TYPE LINE
  
  projection
  "init=epsg:Lignes30"
  end
  
  METADATA
    "wfs_include_items"   "all"
  end
  
end

et pour un accès WMS j'ai la définition suivante pour le layer "Lignes30" :
layer
  name "Lignes30"
  group "DPT"
  type line
  TEMPLATE "Lignes.html"
  status on
  data "/home/geo/bases/dpt/data/Lignes30.shp"
  labelmaxscaledenom 50010
  
  projection
  "init=epsg:2154"
  end

  METADATA
    "gml_include_items"   "all"
    "wms_include_items"   "all"
  end
  
  class
    name "LIGNES30"
    style
      width 2
      outlinecolor "#FF0000"
    end
    label
      font "ArialRegular"
      type truetype
      size 8
      position uc
      buffer 2
      force true
      priority 5
      color "#FF0000"
   end
  end
end

est-il possible de réunir ces 2 définitions dans un même mapfile et de spécifier le type de requête que l'on veut faire (WMS ou WFS) ?

merci d'avance

Jean-Marie

Hors ligne

 

#2 Thu 08 December 2016 09:19

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

Re: [MAPSERVER] peut-on utiliser WMS et WFS dans un seul mapfile ?

Bonjour,

Oui 100 fois oui !

La configuration WMS et WFS est presque identique : il faut ajouter les paramètres de configuration des services dans le mapfile. Ceux pour le flux WMS débutent par wms_ et ceux des flux WFS par wfs_. Lorsque des valeurs identiques sont définies pour des paramètres identiques tu peux préfixer avec ows_, exemple :

Code:

"wfs_title" "Mon Titre WFS"
"wms_title" "Mon titre WMS"

ou

Code:

"ows_title" "Mon titre pour WMS et WFS"

En plus de ces paramètres dans les objets METADATA il est possible dans certain cas de rajouter d'autres paramètres, comme "DUMP true" dans l'objet LAYER.

Tout est indiqué ici : http://mapserver.org/ogc/wms_server.html et http://mapserver.org/ogc/wfs_server.html

Code:

layer
  name "Lignes30"
  group "DPT"
  type line
  TEMPLATE "Lignes.html"
  status on
  data "/home/geo/bases/dpt/data/Lignes30.shp"
  labelmaxscaledenom 50010
  
  projection
  "init=epsg:2154"
  end

  METADATA
    "gml_include_items"   "all"
    "ows_include_items"   "all"
  end
  
  class
    name "LIGNES30"
    style
      width 2
      outlinecolor "#FF0000"
    end
    label
      font "ArialRegular"
      type truetype
      size 8
      position uc
      buffer 2
      force true
      priority 5
      color "#FF0000"
   end
  end

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 08 December 2016 10:46

Jean-Marie64
Participant actif
Lieu: Pau
Date d'inscription: 6 Nov 2007
Messages: 131

Re: [MAPSERVER] peut-on utiliser WMS et WFS dans un seul mapfile ?

Merci Yves pour l'info
outre les METADATA à renseigner, il fallait que je rajoute "type line" dans le layer pour fusionner tous les attributs nécessaires pour répondre aussi bien à une requête WMS ou WFS

Jean-Marie

Hors ligne

 

Pied de page des forums

Powered by FluxBB