I’m building a webapp that will need to provide some real-time tracking information overlayed on to some maps. My requirements are fairly simple:
- I need to take a series of lat/long co-ordinates, and overlay simple markers at those positions with a small bit of associated textual information (ie, just a label and/or tooltip at the marker)
- allow the user to zoom/pan
- use open client side technologies (eg, AJAX, not flash/active-x)
- a client-side control to allow them to configure an auto-refresh interval would be nice (but not necessary)
- be deployable in a standard servlet container like Tomcat
- by deployable in a private network (ie, can’t go to a web service on the internet to fetch data)
- provides basic map data (I do not have my own)
- commercial or open source is fine
This question suggests GeoServer + OpenLayers, but required an open-source solution (I do not). A casual glance at those sites seems like it would be a reasonable amount of effort to get that going, and it’s not clear to me that GeoServer actually comes with map data. This is key, I do not have my own map data. I want a library that provides basic map data. I don’t need detailed street information, just basic geography, political boundaries and major cities is enough.
I found Dundas Maps which looks like it would serve my needs fine, however, it is for ASP.NET so it is not an option.
Geoserver doesn’t come with map data, but then no map server does. Depending on which area of the world you need data for, you can check e.g. Openstreetmap, Natural Earth Data, and local authorities. You’ll have to serve the data (= background map) from your own servers to meet your “by deployable in a private network” requirement.
Setting up Geoserver with an OpenLayers front-end is pretty straight-forward. Labeling and customizing markers is simlple (Geoserver uses standard SLDs). The “preview” pages Geoserver provides by default are a good basis for development of your website and Tomcat is the recommended container for Geoserver afaik.