exportGge 0.93 out featuring OpenLayers and Google Earth Plug-in !

The release of exportGge 0.93 may mark a turnaround in the development of the CartoWeb 3 branch. The integration of OpenLayers makes the php cartoclient obsolete. The result is less server side processing ( processing is now made inside the browser), a more snappy interface and faster speed of development for the web interface ( no more javascript/php plumbery ) . We get closer to the CartoWeb 4 = MapFish architecture but we keep good old PHP. Technically speaking the integration of OpenLayers was made possible by forging SOAP messages... with javascript. The browser communicates straight with the cartoserver part of CartoWeb through SOAP. It is questionable if CartoWeb 3 should stick to SOAP in the future because of it's verbosity , some alternatives like json might be a better choice but at least exportGge 0.93 pushes the limits of CartoWeb 3 a little bit further away and who knows might refresh some existing applications.Using OpenLayers for the CartoWeb client side allows to take advantage of the achievements of the OL community but also to contribute to this great framework. I guess that's something.
These are the improvement/features that come with exportGge 0.93:

  • added javascript SOAP library extending OpenLayers to access cartoserver in SOAP
  • OpenLayers frontend in SOAP mode allows following functions ( everything coded in javascript) :
  1. easy identification of geometries on map with markers or by browsing metadata
  2. table sorting/pagination of metadata
  3. metadata fulltext search
  4. export to PDF ( disabled in IE)
  5. export to csv
  6. google earth visualisation inside browser
  7. distance and area measure, back/forward history,pan,zoom,opacity, layer reorder
  • added google maps api support including google earth api
  • upgraded to yahoo maps api 3.8 , virtual earth api 6.1 and KML 2.2 ( validated with http://kmlvalidator.com )
  • faster KML "snapshot" export (no more http redirect)
  • set refreshInterval to 0 instead of 1 to avoid repetitive reloading in google maps
  • more precise overlay inside google earth
  • KML export to google earth works in SOAP mode (ie cartoserverDirectAccess=false)

Known issues:

  • when cartoserver and cartoclient use different domains ajax SOAP Post requests will fail. I tried to use other technics like "window.name" andposting from inside an iframe but I got stuck because of the problem I describe here: asynchronous-cross-domain-POST-request-inside-openlayers
  • the Google Earth Plugin will crash if it's hidden so switching from  google earth mode to another mode and then switching back to google earth mode will make the plug-in crash. This issue is documented here : http://code.google.com/p/earth-api-samples/issues/detail?id=141
  • CSV export with IE is troublesome because of the information bar popping up a security alert
  • image fragments corresponding  to OpenLayers layers appear in the background of Google Earth placemarks

Special thanks go to the authors of:

Javascript "SOAP Client" library : http://www.guru4.net/
geoxml : http://code.google.com/p/geoxml/
TrimPath JavaScript Templates : http://code.google.com/p/trimpath/wiki/JavaScriptTemplates
jquery tableFilter: http://ideamill.synaptrixgroup.com/?page_id=16
jsPDF : http://code.google.com/p/jspdf/
jvanulder extended OpenLayers layerswitcher : http://trac.openlayers.org/browser/sandbox/jvanulden/openlayers/lib/OpenLayers/Control/LayerSwitcher.js
proj4js : http://trac.osgeo.org/proj4js/
 
and also to the authors of the following jquery plugins :
cacheimage, cookies, truemouseout, jcache, jQuery Post, table2CSV
 
Loïc

Reply

  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.
  • You may post code using <code language="LANGUAGE">...</code> tags.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Copy the characters (respecting upper/lower case) from the image.