Configuration Tools and Best Practices
Contents
1. Datastore Configuration
1.1. Introduction to Datastores
Here only a link to the proper documentation, TBD
1.2. Using the DBSchemaToDatastoreConf Tool
The DBSchemaToDatastoreConf is a little Java application which can help you generate a deegree 2 Data store configuration. It connects to the DB, and generates from the tables you input (s. below) a valid XML containing the configuration.
Run the tool with
java -classpath .;$requiredLibs$ org.deegree.tools.datastore.DBSchemaToDatastoreConf -tables cityobject -user aUser -password aPassword -driver org.postgresql.Driver -url jdbc:postgresql://some.server:5432/someDb -output e:/temp/datastore.xsd
Where $requiredLibs$ is a classpath with the required libs (s. below for an example) and
-tables: comma separated list of tables that will be bind to this datastore. There'll be an <xs:element> and a <xs:complexType> for each table. The relation between them must be manually set. For PostGIS, the PrimaryKey of a table will be found and set as the FID; for Oracle and other DB, the FId will be set from some 'ID' filled .
Don't leave spaces behind the comma - danger of Exceptions!
-user: DB username
-password: user passwrod
-driver: JDBC driver class, e.g. org.postgresql.Driver or oracle.jdbc.OracleDriver
-url: Connection string for the DB, e.g. jdbc:postgresql://some.server:5432/someDb (for PostGIS) or jdbc:oracle:thin:@some.server:1521:db (Oracle)
-output name of the file where the datastore will be saved
An example (works if you run this from the deegree2 project directory, asuming you're in .../deegree2/scripts/batch, the classes are in .../deegree2/classes, and the lib jars are in .../deegree2/lib):
1.3. Windows
java -classpath ..\..\classes;..\..\lib\postgis\postgresql-8.0-311.jdbc3.jar;lib/log4j-1.2.9.jar;..\..\lib\deegree2.jar org.deegree.tools.datastore.DBSchemaToDatastoreConf -tables table_1,table_2 -user someuser -password '' -driver org.postgresql.Driver -url jdbc:postgresql://server:5432/someDB -output f:/temp/datastore.xsd
1.4. Linux
(delimited by ':' instead of ';')
java -classpath .:/classes:lib/postgresql-8.0-311.jdbc3.jar:lib/log4j-1.2.9.jar:lib/deegree2.jar org.deegree.tools.datastore.DBSchemaToDatastoreConf -tables table_1,table_2 -user someuser -password '' -driver org.postgresql.Driver -url jdbc:postgresql://server:5432/someDB -output /tmp/datastore.xsd
Note that the password is empty!
Check the created datastore.xsd for the correct Backend;it is not chosen automatically when you connect to Oracle or PostGIS.
2. WebApp Configuration
2.1. Naming and Conventions
2.2. URL
deegree services should be accessed through the following URL
http://hostname:port/deegree2/ogcwebservice
where ogcwebservice is the servlet responsible forTBD: explain ow this is done in the Tomcat context, and web.xml
(this is a translation from an email from MM)
2.3. Directory
(This is a suggestion...)
Each service is installed under WEB-INF/conf/$SERVICE_NAME$
For example, an application including a wms, a wfs and a igeoportal has the following structure
WEB-INF | |--conf | |--wms | |--wfs | |--igeoportal