Hello,

I succeded to get it working in firebug, I was using Firefox Beta 4 and
Firebug is having some issues with it.

Check this:
http://img163.imageshack.us/img163/5491/screenshot20100928at100.png

The code related to that screenshot is there: http://gist.github.com/600596 or
here:

MarkersStore = new GeoExt.data.FeatureStore({

                layer: MarkersLayer,
                proxy: new GeoExt.data.ProtocolProxy({
                        protocol: new OpenLayers.Protocol.HTTP({
                                url: marker_api_url,
                                params:{'method':'\"markers.get\"'},
                                format: new OpenLayers.Format.GeoJSON({
                                        read: function() {
                                                console.log("var This: " + 
this);
                                                console.log("var arguments: " + 
arguments);
                                                 var obj =
OpenLayers.Format.JSON.prototype.read.apply(this, arguments);
                                                console.log("var obj: " + obj);
                                                return 
OpenLayers.Format.GeoJSON.prototype.read.apply(this, obj["#data"]);
                                },
                                        'internalProjection': proj900913,
                                        'externalProjection': proj4326
                                }),
                                readWithPOST: true
                        })
                }),
                autoLoad: true,
        });

The var obj is always NULL... can you help me please ?

Thanks...


-Pol D.-
http://www.google.com/profiles/110003197662276240659


On Fri, Sep 17, 2010 at 10:15, Pol <[email protected]> wrote:

> It seems that screenshots are not allowed, so I made a link to imageshack
> here:
>
> First: http://img713.imageshack.us/i/screenshot20100917at935.png/
> Second: http://img96.imageshack.us/i/screenshot20100917at936.png/
>
>
> -Pol D.-
> http://www.google.com/profiles/110003197662276240659
>
>
> On Fri, Sep 17, 2010 at 09:40, Pol <[email protected]> wrote:
>
>> Hello Eric, all,
>>
>> I tried your advice and it doesn't work here.
>>
>> I join you 2 screenshots where you can see what I'm doing.
>>
>> I'm really lost into this, I've tried with different versions of firefox,
>> always the same result...
>>
>> Thanks for helping!
>>
>> -Pol D.-
>> http://www.google.com/profiles/110003197662276240659
>>
>>
>> On Wed, Sep 15, 2010 at 08:57, Eric Lemoine 
>> <[email protected]>wrote:
>>
>>> On Wed, Sep 15, 2010 at 8:21 AM, Pol <[email protected]> wrote:
>>> > Yes I tried also to do that, but the thing that worry me the most is
>>> that
>>> > console.log() do not display anything...
>>>
>>> This is weird.
>>>
>>> Overriding read works for me. In the FireBug console:
>>>
>>> >>> var f = new OpenLayers.Format.GeoJSON({read: function(str) {
>>> console.log(str); }});
>>> >>> f.read("foo");
>>> foo
>>>
>>> Likewise the following patch to the feature-grid.html example works for
>>> me:
>>>
>>> diff --git examples/feature-grid.js examples/feature-grid.js
>>> index 04cf945..d9419e6 100644
>>> --- examples/feature-grid.js
>>> +++ examples/feature-grid.js
>>> @@ -48,7 +48,12 @@ Ext.onReady(function() {
>>>          proxy: new GeoExt.data.ProtocolProxy({
>>>             protocol: new OpenLayers.Protocol.HTTP({
>>>                  url: "data/summits.json",
>>> -                format: new OpenLayers.Format.GeoJSON()
>>> +                format: new OpenLayers.Format.GeoJSON({
>>> +                    read: function() {
>>> +                        console.log("in read");
>>> +                        return
>>> OpenLayers.Format.GeoJSON.prototype.read.apply(this, arguments);
>>> +                    }
>>> +                })
>>>             })
>>>         }),
>>>         autoLoad: true
>>>
>>>
>>> > I've modified my code like this:
>>> > MarkersStore = new GeoExt.data.FeatureStore({
>>> > layer: MarkersLayer,
>>> > proxy: new GeoExt.data.ProtocolProxy({
>>> > protocol: new OpenLayers.Protocol.HTTP({
>>> > url: marker_api_url,
>>> > format: new OpenLayers.Format.GeoJSON({
>>> > read: function() {
>>> > console.log("testing...");
>>> >                         var obj =
>>> OpenLayers.Format.JSON.read.apply(this,
>>> > arguments);
>>> >     return OpenLayers.Format.GeoJSON.read.apply(this, obj['#data']);
>>> >         },
>>> > 'internalProjection': proj900913,
>>> > 'externalProjection': proj4326
>>> > }),
>>> > readWithPOST: true
>>> > })
>>> > }),
>>> > autoLoad: true,
>>> > });
>>> > Any idea?
>>>
>>>
>>> Patching the feature-grid.html example has made me realize that
>>> there's something wrong in the above code. The read method is
>>> obviously set in the prototype, so OpenLayers.Format.JSON.read should
>>> be OpenLayers.Format.JSON.prototype.read, and likewise for
>>> Format.GeoJSON.
>>>
>>>
>>> --
>>> Eric Lemoine
>>>
>>> Camptocamp France SAS
>>> Savoie Technolac, BP 352
>>> 73377 Le Bourget du Lac, Cedex
>>>
>>> Tel : 00 33 4 79 44 44 96
>>> Mail : [email protected]
>>> http://www.camptocamp.com
>>>
>>
>>
>
_______________________________________________
Users mailing list
[email protected]
http://www.geoext.org/cgi-bin/mailman/listinfo/users

Reply via email to