tim@935: \section{General Settings} tim@935: \subsection{Structure of Configurationfile} tim@936: The Configuration of the Artifact-Server will generally be done in one single tim@936: File. This file is called conf.xml and is stored in the folder conf of the tim@936: Artifact-Server. tim@936: Some additional Configurations will be done using Systemproperties. This tim@936: Properties will be listed in the last Section of this chapter. tim@936: tim@936: The Configuration is modelled using XML. tim@936: The main Structure of the XML-Document now will be explained: tim@936: tim@936: \begin{verbatim} tim@936: artifact-database tim@936: |--artifact-factories tim@936: |--artifacts tim@936: |--gnv tim@936: | |--charttemplate tim@936: | |--palettes tim@936: | |--horizontal-cross-section-profile tim@936: | |--horizontal-cross-section tim@936: | |--vertical-cross-section tim@936: | |--shapefile-directory tim@936: | `--map-generator tim@936: |--mapserver tim@936: |--velocity tim@936: |--ehcache tim@936: |--geo-backend tim@936: |--rest-server tim@936: |--cleaner tim@936: `--database tim@936: \end{verbatim} tim@936: tim@936: \subsubsection{artifact-factories} tim@937: tim@937: These Section configures the Factories for Artifacts which can be used. tim@937: The meaning of artifact-factories are explained in Section TODO: LINK to Model of Transition tim@937: tim@936: \subsubsection{artifacts} tim@937: tim@937: These Section configures the Artifacts which could be reached using the Artifact-Server. tim@937: The meaning of artifacts are explained in Section TODO: LINK to Model of Transition tim@937: tim@936: \subsubsection{gnv} tim@937: tim@937: This Section configures all GNV-specific settings of the Artifact-Server. tim@937: //TODO add paragraphs and explain the child-elements. tim@937: tim@936: \subsubsection{mapserver} tim@937: tim@937: The Section Mapserver is introduced to be able to configure all Settings which tim@937: are required to setup the WMS-Export of the GNV-Artifacts. tim@937: tim@937: It is possible to Configure the following settings: tim@937: tim@937: \begin{itemize} tim@937: \item server: The URL the WMS of the GNV-Artifacts will be reached from tim@937: Clients. tim@937: \end{itemize} tim@937: tim@936: \subsubsection{velocity} tim@937: tim@937: Velocity is an Library which is used in this Project. tim@937: Velocity has it's own Logging, so that it is necessary to configure tim@937: this to get Loginformations. tim@937: tim@937: \begin{itemize} tim@937: \item logfile: The absolute Path to the Logfile of Velocity. tim@937: \end{itemize} tim@937: tim@936: \subsubsection{ehcache} tim@937: tim@937: The Ehcache is used to implement an Cache storing the Thematic-Data of the tim@937: different Sessions. tim@937: tim@937: It is possible to configure this Cache in many ways. To realize this it is tim@937: possible to configure the following settings: tim@937: tim@937: \begin{itemize} tim@937: \item configuration: The absolute Path to the Configuration-File. tim@937: It is possible to start with \$\{artifacts.config.dir\} tim@937: to reference the file from the Directory which includes tim@937: the Configuration tim@937: \end{itemize} tim@937: tim@937: tim@936: \subsubsection{geo-backend} tim@936: tim@937: The geo-backend is an separate Module of this Project. It encapsulate the logic tim@937: which is required to provide the Access to the Databasebackend. tim@937: At this Time only the Access to the ArcSDE is implemented. tim@937: tim@937: To setup the geo-backend the following settings are required: tim@937: tim@937: \begin{itemize} tim@937: \item backend-configuration: The absolute Path to the File which contains the tim@937: properties to establish the Connection to the tim@937: Databasebackend. tim@937: \item query-configuration: The absolute Path to the File which contains all tim@937: SQL-Statements which are required to fetch the tim@937: Thematic-Data tim@937: \end{itemize} tim@937: tim@937: Both Path can start with \$\{artifacts.config.dir\} to reference the file from tim@937: the Directory which includes the Configuration. tim@937: \paragraph{Backend-Configuration (arcsdeconnectionpool.properties)} tim@937: tim@937: \paragraph{Query-configuration (queries.properties)} tim@937: tim@937: This File contains Key-Value-Pairs to define SQL-Statements. tim@937: All Queries will be handle using the Prepared-Statement-Syntax using "?" tim@937: to define an Place where an dynamic Value should be placed into the Statement. tim@937: tim@937: There is one special Implementation to support spatial access to the ArcSDE, tim@937: because the ArcSDE does not support the Access to spatial Objects using the tim@937: definition of the Simple Feature Specification for SQL of the OGC. tim@937: tim@937: It was necessary to implement this mechanism to simulate the Access. tim@937: tim@937: All Queries which contains the following Literals will be handle separate tim@937: using the ArcSDE-API. tim@937: tim@937: \begin{itemize} tim@937: \item ST\_ASTEXT(SHAPE): Will return the Geometry as an WellKnowText (WKT) tim@937: \item ST\_ASTEXT(RASTER): Will return the Raster in an readable Way. tim@937: \item INTERSECTS(SHAPE,"?"): Will only return the Elements which Geometry tim@937: intersects the given Geometry ("?" will be tim@937: replace with an WKT) tim@937: \end{itemize} tim@936: tim@936: \subsubsection{rest-server} tim@936: \subsubsection{cleaner} tim@936: \subsubsection{database} tim@936: tim@936: tim@935: \subsection{Set the Communicationport} tim@935: \subsection{Logging} tim@936: \subsection{Configure ArtifactServer using Systemproperties} tim@936: \begin{itemize} tim@936: \item artifact.database.dir The folder where the Configuration is located- tim@937: \item query.executor.factory: The absolute Classname which QueryExecutorfactory should be used tim@936: \begin{itemize} tim@936: \item de.intevation.gnv.geobackend.base.query.QueryExecutorFactory : tim@936: Standardfactory without any Addons. tim@936: \item de.intevation.gnv.geobackend.base.query.CachingQueryExecutorFactory: tim@936: Factory with Cache for SQL-Query-Results tim@936: \end{itemize} tim@936: \item caching.query.executor.config: The absolute Path to the Configurationfile tim@936: for the Cache which stores the SQL-Query- tim@936: Results. This only take effect if the tim@936: query.executor.factory-Property is set tim@936: to de.intevation.gnv.geobackend.base.query.CachingQueryExecutorFactory. tim@936: \item caching.cleaner.interval: The Interval in seconds the Caches should be cleaned using the Cachecleaner tim@936: \end{itemize} tim@935: