Developing OGC Compliant Web Applications With GeoExt (SOLD OUT)

Session Type: 
Andreas Hocevar, OpenGeo

GeoExt is a pure JavaScript library combining the web mapping power of OpenLayers with the user interface and data access savvy of Ext JS. Starting from a simple "Hello World" map, participants will learn how to build an advanced web GIS application for browsing layers, showing them in a map, and editing their feature geometries and attributes. The whole application will be built using typical OGC servies based workflows. The first part covers the interaction with a Web Mapping Service (WMS). Using GetCapabilities, we will load a list of available layers. From this list, we can add layers to the map, where they will be displayed using GetMap requests. We will also handle clicks on the map to give us an info popup showing the result of a GetFeatureInfo request. To get familiar with user interface components, we will manage the map's layers in a tree. This part concludes with optional tasks to include legends from GetLegendGraphic requests, and a selection box for available layer styles. The second part introduces feature editing with transactional Web Feature Services (WFS-T). Using GetFeature requests, we will load geometries and feature attributes, so we can present them in a table grid for attribute editing, and on the map for geometry editing. Changes can be persisted on the server using WFS-T transactions. Optional tasks for advanced users include linking between WMS and WFS using WMS DescribeLayer requests, and the auto-creation of the grid with column information from WFS DescribeFeatureType. The workshop concludes with a showcase of GeoExt based applications that are in production on the web. Participants should have basic programming skills and JavaScript knowledge. The tasks can be accomplished by copying code snippets from the online training materials to the application script, but understanding user interface configuration objects and event handlers will guarantee a pleasant workshop experience.

Schedule info