I have created geomesa accumulo datastore and can query features using command line. Now i want to perform data operations using Open Geospatial Consortium's (OGC) Web Feature Service (WFS) for creating, modifying and exchanging vector format geographic information. I don't want to create proxy client or deal with thrifts for programatically operating with accumulo storage. Instead what are other techniques to insert and read using filters for geomesa accumulo storage data.


GeoMesa integrates with GeoServer to support such use cases.

Using WFS to read data is a very common use case. To write data to a layer in GeoServer, you'll want check out WFS Transactions (also called WFS-T). I've used both with GeoMesa and GeoServer successfully.

Check out http://www.geomesa.org/documentation/user/architecture.html#geomesa-and-geoserver for background about GeoMesa and GeoServer. This link provides information about setting up GeoMesa's Accumulo DataStore with GeoServer (http://www.geomesa.org/documentation/user/accumulo/install.html#installing-geomesa-accumulo-in-geoserver). General GeoMesa-GeoServer usage is documented here: http://www.geomesa.org/documentation/user/geoserver.html.

For some quick links to GeoServer's WFS details, I'd suggest reading through (http://docs.geoserver.org/latest/en/user/services/wfs/reference.html) and checking out the demos which come with GeoServer (http://docs.geoserver.org/latest/en/user/configuration/demos/index.html#demos).

  • Yes that links were helpful, can you help me on how can I create WFS-T client which uses json to perform insert, update, delete using WFS? – Suresh Prajapati Mar 8 '17 at 5:51
  • GeoServer only accepts "text/xml; subtype=gml/3.1.1" as an input format for WFS-T (Json requires too much guess work) – Ian Turton Mar 8 '17 at 8:52
  • Building off what Ian mentioned, I'd suggest looking at open source libraries like OpenLayers and Leaflet to see how they handle WFS-T. Since GeoServer required GML, you'll have to sort out changing the JSON to GML in your client code. Otherwise, you could write a custom REST endpoint to accept Json (with some assumptions so that the guess work is limited/removed;)). – GeoMesaJim Mar 8 '17 at 13:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.