===== Versione 4.3.x =====
Di seguito vengono riportati dei templates di esempio, che andranno opportunamente riconfigurati per la propria installazione. Occorre quindi tenere conto della struttura, ma revisionare tutti i singoli contenuti.
* [[gwUserManual:configuration_4_3_x#Client|Client]]
* [[gwUserManual:configuration_4_3_x#Admin|Admin]]
* [[gwUserManual:configuration_4_3_x#Dettaglio Sezioni|Dettaglio Sezioni]]
===== Client =====
#*****************************************************************
# C L I E N T
# C O N F I G U R A T I O N P R O P E R T I E S
# T E M P L A T E
#
# in order to configure you application, has to be changed the
# sections between '<' and '>' characters
#*****************************************************************
##################################################################
# B A S E P A T H
##################################################################
basePath=file:///C:/Projects//WEB/
##################################################################
# T E M P P A T H
##################################################################
#used by umplugin, scene, report
tempPath=C:/Project//WEB/
##################################################################
# F I L E S C O M P R E S S I O N
##################################################################
#useCompressed: =false during development, =true when put in production
useCompressed=false
##################################################################
# M E T A D A T A C A C H E (WEBCLIENT)
##################################################################
#timeToIdleSeconds keep 1 in configuration phase. Increase as wanted in production. tipycally 3600=1 hour
metadatacache.timeToIdleSeconds=1
#timeToLiveSecon keep 1 in configuration phase. Increase as wanted in production. tipycally 3600=1 hour
metadatacache.timeToLiveSeconds=1
##################################################################
# P R O J E C T I N D E X
##################################################################
applicationIndexTitle=Geoweb framework 4.3.0
#applicationIndexColor1=#00569F
applicationIndexColor1=#023B6E
applicationIndexColor2=white
applicationIndexColor3=#CECECE
##################################################################
# M A P G U I D E
##################################################################
mgUsername=Administrator
mgPassword=admin
#mapguide library path. used to update mapguide layers (destination use layer)
mapguide.library.path=Library://
#should be configured inside MapGuide Site Admin (http://localhost/mapguide/mapadmin)
geowebalias=FOLDER
#should be configured in the same path of geowebalias
geowebfolder=c:\\projects\\\\geowebfolder
#webconfig.ini path
#
#Geoweb tries to load webconfig.ini firstly from static contents, and secondarily from classPath.
#If all ways before fail, Geoweb uses this absolute path.
#This is generally used in Geoweb deployments that involve Linux + WebLogic
pathTo.webconfig.ini=C:/Projects//WEB/conf/webconfig.ini
##################################################################
# M A P
##################################################################
#settaggio per misurazione distanze / superfici su planimetrie / mappe rappresentate in mapguide
#Allowed range [0.001,1000] Ex: if map is in meter, but it had been loaded in mm, mapUnitFactor should be 1000
#per km = 0.001
# per mt = 1
# per mm = 1000
mapUnitFactor=1000
##################################################################
# U P L O A D M A N A G E R
##################################################################
#when loading a CAD drawing, specify, when true, if a SDF file is created for background layer, otherwise put all vector entities in drawing_background relations
#useSDFForBackground=true
useSDF=true
# availablePackages=Bim\,PointCloud\,Plan\,BulkUp\,Views
uploadManager.availablePackages=Bim\,PointCloud\,BulkUp\,Plan\,Views
#projectType=building or model
uploadManager.projectType=building
# savingFileOn=db or alfresco (BulkUp - sperimentato su CDE)
uploadManager.savingFileOn=alfresco
#if alfresco -> set class, class attribute, code attribute,
#column name of file name to search table record with the cmis widget
uploadManager.fileClass=cde_deliverable_upload_manager
uploadManager.fileAttribute=file_name
uploadManager.fileCodeColumn=cod_deliverable_full
uploadManager.fileName=cod_deliverable_full
# Modello 3d (Bim,PointCloud)
# saving IFC On=db or alfresco
uploadManager.savingModelOn=alfresco
uploadManager.modelClass=cde_deliverable_upload_manager
uploadManager.modelAttribute=file_name
uploadManager.modelCodeColumn=cod_deliverable_full
uploadManager.modelName=cod_deliverable_full
uploadManager.attachmentsAttribute=allegati_deliverable
##################################################################
# GW M A I L C O N F
##################################################################
#from version 4.2.12 deprecates calendar.memoscheduler.* stuff
#email that will be shown as the sender by the email receiver. Used when 'from' is not passed to gwMailService.sendMail(..)
gwMailService.defaultSenderEmail=no-reply@geowebitalia.it
gwMailService.user=demo.facilityservice@gmail.com
gwMailService.password=demoFS2016
#gwMailService.password=demoFS2016
gwMailService.host=smtp.gmail.com
gwMailService.port=465
#mail.smtp.starttls.enable boolean - If true, enables the use of the STARTTLS command (if supported by the server) to switch the connection to a TLS-protected connection before issuing any login commands. Note that an appropriate trust store must configured so that the client will trust the server's certificate. Defaults to false.
gwMailService.mailSmtpStarttlsEnable=false
#mail.smtp.auth boolean - If true, attempt to authenticate the user using the AUTH command. Defaults to false.
gwMailService.mailSmtpAuth=true
#mail.smtp.socketFactory.port int - Specifies the port to connect to when using the specified socket factory. If not set, the default port will be used.
gwMailService.mailSmtpSocketFactoryPort=465
#mail.smtp.socketFactory.class String - If set, specifies the name of a class that implements the javax.net.SocketFactory interface. This class will be used to create SMTP sockets.
gwMailService.mailSmtpSocketFactoryClass=javax.net.ssl.SSLSocketFactory
#mail.smtp.socketFactory.fallback boolean - If set to true, failure to create a socket using the specified socket factory class will cause the socket to be created using the java.net.Socket class. Defaults to true.
gwMailService.mailSmtpSocketFactoryFallback=false
#mail.smtp.quitwait boolean
gwMailService.mailSmtpQuitwait=false
#mail.debug boolean
gwMailService.mailDebug=true
##################################################################
# E V E N T M E M O S C H E D U L E R
##################################################################
#toggle memo schedulation. when omitted default is true
calendar.memoscheduler.enabled=false
#http://www.quartz-scheduler.org/documentation/quartz-2.x/tutorials/crontrigger.html
#
# Field Name Allowed Values Allowed Special Characters
# Seconds 0-59 , - * /
# Minutes 0-59 , - * /
# Hours 0-23 , - * /
# Day-of-month 1-31 , - * ? / L W
# Month 1-12 or JAN-DEC , - * /
# Day-of-Week 1-7 or SUN-SAT , - * ? / L #
#
#1 0 3 * * ? stand for every day at 3:00:01 am
#calendar.memoscheduler.cronExpression=1 0 3 * * ?
#calendar.memoscheduler.cronExpression=0 0/1 * * * ?
calendar.memoscheduler.cronExpression=0 0/30 * * * ?
#calendar.memoscheduler.cronExpression=0 0/3 * 1/1 * ?
#calendar.memoscheduler.cronExpression=0 0 1 * * ?
#calendar.memoscheduler.cronExpression=0 0/5 * * * ?
#deleteEventMemoOfExpiredEventAfterEndAlert
calendar.memoscheduler.deleteEventMemoOfExpiredEventAfterEndAlert=false
##################################################################
# D A T A B A S E S
##################################################################
##################################################################
# database ORACLE
##################################################################
#jdbc.driverClassName=oracle.jdbc.driver.OracleDriver
#jdbc.url=jdbc:oracle:thin:@ora11dev.gruppoesc.it:1521:ORA11DEV
#jdbc.username=AEC_DBDATI_GW
#jdbc.password=AEC_DBDATI_GW
#jdbc.maxActive=6
#jdbc.minIdle=2
#jdbc.maxIdle=6
#jdbcmetadata.driverClassName=oracle.jdbc.driver.OracleDriver
#jdbcmetadata.url=jdbc:oracle:thin:@ora11dev.gruppoesc.it:1521:ORA11DEV
#jdbcmetadata.username=AEC_METADATA_GW
#jdbcmetadata.password=AEC_METADATA_GW
#jdbcmetadata.maxActive=6
#jdbcmetadata.minIdle=2
#jdbcmetadata.maxIdle=6
##################################################################
# database POSTGRES
##################################################################
jdbc.driverClassName=org.postgresql.Driver
jdbc.url=jdbc:postgresql://127.0.0.1:5432/
jdbc.username=_data
jdbc.password=<*****>
jdbc.maxActive=6
jdbc.minIdle=2
jdbc.maxIdle=6
jdbcmetadata.driverClassName=org.postgresql.Driver
jdbcmetadata.url=jdbc:postgresql://127.0.0.1:5432/
jdbcmetadata.username=_metadata
jdbcmetadata.password=<*****>
jdbcmetadata.maxActive=6
jdbcmetadata.minIdle=2
jdbcmetadata.maxIdle=6
##################################################################
# database SQLSERVER
##################################################################
#jdbc.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
#jdbc.url=jdbc:sqlserver://192.168.0.99:1433;databaseName=geoweb
#jdbc.username=FMI_MAGLIE_GW
#jdbc.password=FMI_MAGLIE_GW
#jdbc.maxActive=6
#jdbc.minIdle=2
#jdbc.maxIdle=6
#
#jdbcmetadata.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
#jdbcmetadata.url=jdbc:sqlserver://192.168.0.99:1433;databaseName=geoweb
#jdbcmetadata.username=FMI_MAGLIE_GW_METADATA
#jdbcmetadata.password=FMI_MAGLIE_GW_METADATA
#jdbcmetadata.maxActive=6
#jdbcmetadata.minIdle=2
#jdbcmetadata.maxIdle=6
##################################################################
# M O N G O D B
##################################################################
# mongo.database_prefix è il prefisso comune ai tre database MongoDB utilizzati dall'applicazione:
# - db per la classificazione ha come suffisso _CLASSIFICATION,
# - db per i codici parlanti _MNEMONIC_CODE
# - db per i modeli ifc _BIM_MODELS
#mongo.database_prefix=CDE_TEST
#mongo.database=BIM_MODELS (deprecato dalla 4.3)
#mnemoniccode.mongo.database=FS12_AIM_MNEMONIC_CODE (deprecato dalla 4.3 - chiedere a Francesco)
mongo.host=localhost
mongo.port=27017
##################################################################
# S E C U R I T Y
##################################################################
# length of the time period (in days) for which password is valid - Periodo di validità delle password
gwSecurity.passwordLifeTimeDays=180
# threshold to prohibit reuse of password up to a previous date - Numero minimo di password differenti prima del riutilizzo
gwSecurity.passwordHistoricalCheckingCount=10
# threshold (in days) to prohibit the reuse of the password used from a date onwards
gwSecurity.passwordHistoricalCheckingPeriodDays=1800
# (Account lockout threshold) number of invalid logon attempts that are allowed before an account is locked out. - Numero massimo di tentativi di accesso con password errata
gwSecurity.maxAttempts=10
# Account locked time
gwSecurity.accountLockedTimeMinutes=30
# rest token lifetime for reset password ('forget me')
gwSecurity.tokenLifeTimeHours=24
# email forgot password - Subjet - password dimenticata
gwSecurity.resetPasswordEmailSubjet=Ambiente di TEST GW4.3 on CDE - Impostazione/Ripristino Dati di Accesso
# email forgot password - text message - params: {0: userEmail, 1: username, 2: reset_token, 3: resetUrl}
# gwSecurity.resetPasswordEmailMessage=Gentile {1}\\,
per inserire una nuova password\\, clicca sul link sottostante:
{3}
Cordiali saluti\\,
Geowebitalia
gwSecurity.resetPasswordEmailMessage=Gentile {1}\\,
E stata inviata una richiesta di impostazione o ripristino della password per il tuo account sul sistema GW4.3 on CDE.
Puoi ora accedere cliccando sul seguente collegamento o copiandolo e incollandolo nel browser:
{3}
Questo collegamento puo essere utilizzato per accedere una sola volta\\, verrai indirizzato a una pagina dove potrai impostare la tua password.
Scade dopo un giorno e non succede nulla se non viene utilizzato.
Cordiali saluti
##################################################################
# C L I E N T P A S S W O R D R E G E X
##################################################################
#gwClientPasswordRegex: regex applied to dijit/form/ValidationTextBox widget
#gwClientPasswordRegex=^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-_]).{8\\,}$
#Minimum eight characters, at least one uppercase letter, one lowercase letter, one number and one special character:
gwClientPasswordRegex=^(?=.*[a-z])(?=.*[A-Z])(?=.*\\\d)(?=.*[$@$!%*?&])[A-Za-z\\\d$@$!%*?&]{8\\,}
#gwClientPasswordRegexPromptMessage: Tooltip text that appears when the text box is empty and on focus
gwClientPasswordRegexPromptMessage=La password deve contenere almeno 8 caratteri di cui almeno una lettera maiuscola\\, almeno una lettera minuscola\\, almeno un numero\\, almeno un carattere speciale fra $!%*?&
##?!@$%^&-_
##################################################################
# A U T H E N T I C A T I O N
##################################################################
#PRE AUTHENTICATION CREDENTIALS (optional)
#Next two parameters, both optional, work in conjunction and maybe used to create a simplified authentication mechanism (if oauth2 is not possible, or not jet implemented, for example)
#Every call to server will be considered allowed if contains in its headers section a parameter called SM_USER properly populated.
#This parameter should be computed making the sha512 of the string resulting from the concatenation of preAuthUser and preAuthKey parameter, with a | character in the middle.
#Here the pseudo code:
#
# var SM_USER = SHA512(preAuthUser+"|"+preAuthKey)
#
# Ex:
#
# SM_USER: 2ca0e5a3633f7c8306505d3c7edcdaac29c93ae689e0b1182c3da4bfdc763758745e7684926042b840d6beb193ffd4e11fa9d1d73d0bec43f42348cca4f2aedd
#
#preAuthUser=ws_test
#preAuthKey=ws_test_1
#PRE AUTHENTICATED LOGOUT (optional)
#By default if an user click logout button, Geoweb redirect him to login page. The behavior can be overridden setting this variable: user will be redirected at set url
#preAuthenticated_logout_url=https://loginatla.gse.it/AGLogout
##################################################################
# C M I S
##################################################################
#ALFRESCO
cmisUser=admin
cmisPassword=
cmisUrl=http://127.0.0.1:8081/alfresco/service/cmis
#la cartella su Alfresco va creata manualmente accedendo ad Alfresco e posizionandola sotto lo spazio 'Sites/Siti'
cmisBasePath=/Siti/Geoweb
#SHAREPOINT
#cmisUser=geowebitalia\\sharepoint
#cmisPassword=Shar3point$
#cmisUrl=http://winsharepoint/_vti_bin/cmis/rest?getRepositories
#cmisBasePath=/
===== Admin =====
#*****************************************************************
# A D M I N
# C O N F I G U R A T I O N P R O P E R T I E S
# T E M P L A T E
#
# in order to configure you application, has to be changed the
# sections between '<' and '>' characters
#*****************************************************************
##################################################################
# B A S E P A T H
##################################################################
basePath=file:///C:/Projects//WEB/
##################################################################
# T E M P P A T H
##################################################################
#used by umplugin, scene, report
tempPath=C:/Project//WEB/
##################################################################
# F I L E S C O M P R E S S I O N
##################################################################
#useCompressed: =false during development, =true when put in production
useCompressed=true
##################################################################
# M E T A D A T A C A C H E (WEBADMIN)
##################################################################
#comma (,) separated client server address. Only one is the common case (no server cluster)
urlList=http://localhost//
##################################################################
# D A T A B A S E S
##################################################################
##################################################################
# database ORACLE
##################################################################
#jdbc.driverClassName=oracle.jdbc.driver.OracleDriver
#jdbc.url=jdbc:oracle:thin:@ora11dev.gruppoesc.it:1521:ORA11DEV
#jdbc.username=DBDATI_GW
#jdbc.password=DBDATI_GW
#jdbc.maxActive=6
#jdbc.minIdle=2
#jdbc.maxIdle=6
#jdbcmetadata.driverClassName=oracle.jdbc.driver.OracleDriver
#jdbcmetadata.url=jdbc:oracle:thin:@ora11dev.gruppoesc.it:1521:ORA11DEV
#jdbcmetadata.username=METADATA_GW
#jdbcmetadata.password=METADATA_GW
#jdbcmetadata.maxActive=6
#jdbcmetadata.minIdle=2
#jdbcmetadata.maxIdle=6
##################################################################
# database POSTGRES
##################################################################
jdbc.driverClassName=org.postgresql.Driver
jdbc.url=jdbc:postgresql://127.0.0.1:5432/
jdbc.username=_data
jdbc.password=<*****>
jdbc.maxActive=6
jdbc.minIdle=2
jdbc.maxIdle=6
jdbcmetadata.driverClassName=org.postgresql.Driver
jdbcmetadata.url=jdbc:postgresql://127.0.0.1:5432/
jdbcmetadata.username=_metadata
jdbcmetadata.password=<*****>
jdbcmetadata.maxActive=6
jdbcmetadata.minIdle=2
jdbcmetadata.maxIdle=6
##################################################################
# database SQLSERVER
##################################################################
#jdbc.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
#jdbc.url=jdbc:sqlserver://192.168.0.99:1433;databaseName=geoweb
#jdbc.username=DBDATI_GW
#jdbc.password=DBDATI_GW
#jdbc.maxActive=6
#jdbc.minIdle=2
#jdbc.maxIdle=6
#
#jdbcmetadata.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
#jdbcmetadata.url=jdbc:sqlserver://192.168.0.99:1433;databaseName=geoweb
#jdbcmetadata.username=METADATA_GW
#jdbcmetadata.password=METADATA_GW
#jdbcmetadata.maxActive=6
#jdbcmetadata.minIdle=2
#jdbcmetadata.maxIdle=6
##################################################################
# C L I E N T P A S S W O R D R E G E X
##################################################################
#gwClientPasswordRegex: regex applied to dijit/form/ValidationTextBox widget (optional)
#gwClientPasswordRegex=^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-_]).{8\\,}$
#Minimum eight characters, at least one uppercase letter, one lowercase letter, one number and one special character:
gwClientPasswordRegex=^(?=.*[a-z])(?=.*[A-Z])(?=.*\\\d)(?=.*[$@$!%*?&])[A-Za-z\\\d$@$!%*?&]{8\\,}
#gwClientPasswordRegexPromptMessage: Tooltip text that appears when the text box is empty and on focus (optional)
#gwClientPasswordRegexPromptMessage=La password deve contenere almeno 8 caratteri di cui almeno una lettera maiuscola\\, almeno una lettera minuscola\\, almeno un numero\\, almeno un carattere speciale fra #?!@$%^&-_
gwClientPasswordRegexPromptMessage=La password deve contenere almeno 8 caratteri di cui almeno una lettera maiuscola\\, almeno una lettera minuscola\\, almeno un numero\\, almeno un carattere speciale fra $!%*?
#?!@$%^&-_
===== Dettaglio Sezioni =====
==== MongoDB ====
A partire dalla **versione 4.3.0**, come descritto nella relativa documentazione del configuration.properties, in Mongodb devono esserci i 3 database:
[mongo.database_prefix]_CLASSIFICATION
[mongo.database_prefix]_MNEMONIC_CODE
[mongo.database_prefix]_BIM_MODELS
dove per //[mongo.database_prefix]// si intende il valore del parametro //mongo.database_prefix// definito nel configuration.properties.
Questo prefisso può essere scelto liberamente ma si consiglia di sceglierlo in modo che sia simile al nome dell'applicazione Geoweb a cui fa riferimento, in modo che sia possibile utilizzare un un'unica istanza di MongoDB per più client geoweb senza incorrere in problemi di conflitto nei nomi.
--------------------------------------------------------------------------------------
Esempio: se per mongo.database_prefix si sceglie 'geoweb', devono essere creati i seguenti database
**geoweb_CLASSIFICATION** \\
**geoweb_MNEMONIC_CODE** \\
**geoweb_BIM_MODELS** \\
--------------------------------------------------------------------------------------
A partire dalla **versione 4.4.0**, come descritto nella relativa documentazione del configuration.properties, in Mongodb i 3 database descritti nel paragrafo precedente verranno **totalmente distinti**. Questo significa che, per ognuno dei 3 parametri nel configuration.properties, andrà specificato un nome a sé stante e non più legato a dei suffissi.
ATTENZIONE!! Le modifiche riportate in questo paragrafo sono state applicate nel giorno 7 maggio 2019.
Questo significa che tutti i .war successivi a tale data le riportano. È importante tenerne conto
nell'eventualità di una patch, di una modifica o nel caso in cui si presenti un errore relativo a MongoDB.
Come per la versione precedente, questi nomi possono essere scelti liberamente, ma si consiglia di sceglierli in modo che siano simili al nome dell'applicazione Geoweb a cui fanno riferimento.
Inoltre, a partire da questa versione, sarà possibile implementare l'utilizzo di profili di autenticazione per l'accesso a MongoDB. Tali profili potranno essere inseriti nei database a cui fanno riferimento seguendo le indicazioni al punto 7 della [[gwinstguide:idxinstguide:installazione_mongodb|guida]] all'installazione di MongoDB.
Una volta creato un profilo, questo andrà inserito nel configuration.properties seguendo lo schema seguente:
mongo.source=[nome del database in cui il profilo è stato creato]
mongo.username=[nome utente del profilo]
mongo.password=[password del profilo]
mongo.authentication=[protocollo di lettura, generalmente 'SCRAM_SHA_1']
**NOTA:** nel caso in cui si intenda fare uso di profili di autenticazione, sarà necessario modificare il file //dispatcher-servlet.xml// presente nel webclient, cercando la sezione relativa a Mongodb. La struttura apparirà simile alla seguente:
In questa sezione sarà fondamentale rimuovere il commento (il tag che va da ''< ! - -'' a ''- - >'') sia nel primo intero bean, con l'id "mongoCredential", sia nella proprietà "credentials" del secondo bean, con l'id "mongoClientFactoryBean".
**NOTA:** se non si desidera utilizzare il sistema di autenticazione, è comunque buona norma assicurarsi che le parti di cui sopra relative al file dispatcher-servlet.xml siano invece commentate.
==== Gestori Documentali (CMIS) ====
==== MapGuide ====