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 02 September 2010 11:51

soussou126
Participant occasionnel
Date d'inscription: 22 May 2010
Messages: 21

mapfish apache wsgi

Bonjour,
je travaille sur Mapfish
j'ai réalisé un script qui me permet d'afficher les points qui corresponde à un nom d'une ville que je saisie dans une form (une requête est envoyer à ma BD).
jusqu'à ici tout marche très bien,
je veux maintenant changer de serveur et travailler avec apache, alors j'ai installer le module mod_wsgi, et j'ai tout configurer (en suivant ce tutoriel: http://code.google.com/p/modwsgi/wiki/D … uidelines)
lorsque je lance ma page, j'ai tout mes layer qui s'affiche,
je saisie le nom de la ville dans la forme et je valide, et c'est que j'ai des problèmes: rien ne s'affiche
pourtant la requête est exécutée!!!

je vous poste mon code

Code:

var mapPanel, store, gridPanel, mainPanel, formPanel, vecLayer, map;

function setStore (param) {
    store = new GeoExt.data.FeatureStore({
        layer : vecLayer,
        fields : [{
                    name : 'name',
                    type : 'string'
                }, {
                    name : 'population',
                    type : 'string'
                }],
        proxy : new GeoExt.data.ProtocolProxy({
                    protocol : new OpenLayers.Protocol.HTTP({
                                url : "http://192.192.XX.XX:5000/world_cities/find?name=%"+param+"%",
                                format : new OpenLayers.Format.GeoJSON({
                                            internalProjection : map.projection,
                                            externalProjection : map.displayProjection
                                        })
                            })
                }),
        autoLoad : true
    });
}
Ext.onReady(function() {
    // create map instance
    map = new OpenLayers.Map();
    var wmsLayer = new OpenLayers.Layer.WMS("vmap0",
            "http://labs.metacarta.com/wms/vmap0", {
                layers : 'basic'
            });
    var wmsLayer2 = new OpenLayers.Layer.WMS("world_cities",
            "http://192.192.XX.XX/geoserver/wms", {
                layers : 'world_cities',
                format : 'image/png'
            });

    // create vector layer
    vecLayer = new OpenLayers.Layer.Vector("vector");
    map.addLayers([wmsLayer, wmsLayer2, vecLayer]);

    
    info = new OpenLayers.Control.WMSGetFeatureInfo({
            url: 'http://192.192.XX.XX/geoserver/wms', 
            title: 'Identify features by clicking',
            queryVisible: true,
            eventListeners: {
                getfeatureinfo: function(event) {
                    map.addPopup(new OpenLayers.Popup.FramedCloud(
                        "chicken", 
                        map.getLonLatFromPixel(event.xy),
                        null,
                        event.text,
                        null,
                        true
                    ));
                }
            }
        });
    map.addControl(info);
    info.activate();
    
    
    // create map panel
    mapPanel = new GeoExt.MapPanel({
                title : "Map",
                region : "center",
                height : 400,
                width : 600,
                map : map,
                center : new OpenLayers.LonLat(0, 0),
                zoom : 2
            });

    // create feature store, binding it to the vector layer

    store = new GeoExt.data.FeatureStore({
                  fields : [{
                    name : 'name',
                    type : 'string'
                }, {
                    name : 'population',
                    type : 'string'
                }]
    });

    // create grid panel configured with feature store
    gridPanel = new Ext.grid.GridPanel({
                title : "Feature Grid",
                region : "south",
                store : store,
                ds: store,
                width : 200,
                height : 200,
                columns : [{
                            header : "Name",
                            width : 200,
                            dataIndex : "name"
                        }, {
                            header : "Population",
                            width : 100,
                            dataIndex : "population"
                        }],
                sm : new GeoExt.grid.FeatureSelectionModel()
            });

    // create form panel
    formPanel = new Ext.form.FormPanel({
                standardSubmit : true,
                id : 'myFormPanel',
                region : "center",
                frame : true,
                title : 'Register',
                defaultType : 'textfield',
                items : [{
                    fieldLabel : 'A Place',
                    id : 'place',
                    name : 'place',
                    allowBlank : false
                }],
                buttons : [{
                    text : 'Submit',
                    handler : function() {
                        setStore(Ext.getCmp("place").getValue());
                    },
                    scope : store
                }]
            });

    ER = {
        region : 'east',
        title : ' ',
        width : 300,
        collapsible : true,
        collapsed : false,
        margins : '0 0 0 5',
        defaults : {
            border : true,
            frame : true
        },
        layout : 'border',
        items : [formPanel, gridPanel]
    }

    
    // create a panel and add the map panel and grid panel
    // inside it
    map.addControl(new OpenLayers.Control.LayerSwitcher());
    mainPanel = new Ext.Panel({
        renderTo : "mainpanel",
        layout : "border",
        height : 600,
        width : 920,
        items : [mapPanel, ER]
            // items : [mapPanel, gridPanel]
        });
        
});

mon fichier .wsgi:

Code:

import site
import os, sys

site.addsitedir('/mapfish/env/lib/python2.6/site-packages')

sys.path.append('/mapfish/mapfish2/mapfish3/')
os.environ['PYTHON_EGG_CACHE'] = '/tmp/python-eggs'

# configure the logging system
from paste.script.util.logging_config import fileConfig
fileConfig('/mapfish/mapfish/development.ini')

from paste.deploy import loadapp
application = loadapp('config:/mapfish/mapfish/development.ini')

merci d'avance pour vos réponses

Hors ligne

 

Pied de page des forums

Powered by FluxBB