Moore Spatial

GIS and Related Pursuits

By

Leaflet WFS-T Project

Leaflet.js WFS-T Plugin

I forgot to mention it here, but the WFS-T Plugin was released as planned in the fall of 2013. You can download it here: https://github.com/flatrockgeo/leaflet.wfs-t

…Old Stuff…

This summer I’m going to be implementing WFS-T and some GML simple features support for Leaflet.js. Since I hate seeing vaporware projects — projects which announce grand intentions then never deliver — I’m going to lay out my deadlines ahead of time. The deadline for this project is October, 2013. I have applied to present about it at the fall MN GIS/LIS conference. I will also be using this work as part of a class which I’m counting towards my Master of GIS at the University of Minnesota, so I really do need to get it finished!

This code is being developed by me personally on my own time, but with the support, encouragement and advice of my bosses at Flat Rock Geographics. The initial code and climb up the WFS-T learning curve was done on company time for a project where we were already using Leaflet.js.

Leaflet.js WFS-T and GML Simple Features Support

The goal of this project is to enable WFS-T creation and editing of the shapes created by the Leaflet.draw plugin. Since I will be using GML in the requests I will also implement enough of the GML Simple Feature Profile to fill the needs of the WFS-T plugin.

Work Environment

I will be using Leaflet.js, the Leaflet.draw plugin, Geoserver running on Jetty and Postgres/PostGIS. An initial code commit will be coming very shortly after I separate it out from the rest of the project.

The initial database I will be using can be created as follows:

-- Sequence: idinc

-- DROP SEQUENCE idinc;

CREATE SEQUENCE idinc
  INCREMENT 1
  MINVALUE 1
  MAXVALUE 9223372036854775807
  START 1
  CACHE 1;
ALTER TABLE idinc
  OWNER TO michael;

-- Table: wfstproject

-- DROP TABLE wfstproject;

CREATE TABLE wfstproject
(
  id integer NOT NULL,
  name character varying,
  ts timestamp with time zone,
  count integer,
  really boolean,
  the_geom geometry,
  CONSTRAINT counter PRIMARY KEY (id)
)
WITH (
  OIDS=FALSE
);
ALTER TABLE wfstproject
  OWNER TO michael;

ALTER TABLE wfstproject ALTER id SET DEFAULT NEXTVAL('idinc');