Requirements:
- Traditional webGIS functions
- Spatial DB
- Vector and Raster Data Storage
- Geodata Integration via web Interface
- Open source software
Solution:
- Use openlayers for frontend functions, add value with some magic JS (jquery or extJS)
- Use tomcat & geoserver as server backend
- Use Postgresql & postgis as a spatial datawarehouse
- Use geowebcache for serving cached basemaps and overlays
- Alternatively use ArcSDE with postgres if your customer wants to manage all geodata with ArcGIS -> licence issues
- Hold data in DB and on file system
- Use JSP and J2EE Servlets with tomcat for building the webGIS app
- Rely on well-established GIS frameworks like geotools, gdal/ogr or JTS for doing GIS jobs over the web
- Use Debian as OS
As of July 2012 the following versions of software tools are available:
Server-software:
- Tomcat7
- Geoserver 2.1.4
- Postgres 9.1.4
- Postgis 2.0
- ArcSDE 10.1
- JDK 7
- Gdal 1.9
- Geowebcache 1.3
Frontend tools:
- OpenLayers 2.12
- Jquery 1.7.2
- extJS 4.1
Think of all the requirements each piece of software has against any other underlying software…
Step1
Debian 6 (squeeze) 64bit, minimal system
–No X server running, disable ipv6
–Use hardening-tools and security updates
Step2
Install JDK 64bit delivered by apt (non-free)
Step3
Install Postgres 9.0 if you plan to use ArcSDE 10.1
Step4
Install Postgres 9.1 if plan to use PostGIS
Step5
Install tomcat6 delivered by apt
–Look at http://sebthom.de/142-installing-tomcat-6-debian-squeeze/
–Set tomcat to Port 80 by using iptables
—-iptables -A INPUT -i eth0 -p tcp –dport 80 -j ACCEPT
—-iptables -A INPUT -i eth0 -p tcp –dport 8080 -j ACCEPT
—-iptables -A PREROUTING -t nat -i eth0 -p tcp –dport 80 -j REDIRECT –to-port 8080
–set JAVA options according to your amount of RAM
Step6
Install geoserver 2.1.3
–Use war file
–Deploy with tomcat
Step7
Install geowebcache 1.3
–Use war file
–Deploy with tomcat
Step8
Install ArcSDE 10.1 via network using ArcGIS Desktop toolbox
–Look at esri-docs
–Choose whether you want to go completely esri, by using the esri geometry type (and raster type) exclusively inside Postgres, OR if you plan to use both: PostGIS geometry and esri geometry datatypes
Step9
Install GDAL 1.9
–Compile from source
–Choose your needed format drivers
–Install and choose your preferred bindings (JAVA, Python,…)
Step10
Configure your system
–Bring in your data
–Configure geoserver (e.g. install sde-plugin)
—-Style layers
–Configure geowebcache (register pre-cached tilesets from ArcGIS server, or create new ones)
–Configure postgres
—-Setup user management schema for webapp
—-Setup essential app config tables (layer related to app)
—-Setup multiple viewer configurations
—-Implement a web admin tool for controlling the webGIS app
–Develop JSP’s and J2EE servlets for app logic (Eclipse)
–Develop frontend client and connect to servlets