Please enable JavaScript to view this site.

Invantive Estate

By using the file site.properties in the WEB-INF folder of the web application folder, the application can be configured:

The connection with Oracle RDBMS and the ERP system.

The multilinguality.

The connection with the user date (usernames and passwords)

Other minor adjustments.

Since they directly influence the core of the application, these changes can only be made by qualified consultants of Invantive Software BV.

The procedure for applying changes consists of:

Stop web server.

Edit site.properties.

Start web server.

The changes will be effective immediately after a user logs on.

For more information regarding its use, you can use the below copy.

Example

#logger properties @0-029F305D

logfile=c:\\temp\\bubs3.log

logpriority=debug

# Logsize in Kb. File is truncated and written after this size.

logsize=1024000

#End logger properties

 

#url properties @0-E8A730F5

serverUrl=http://localhost/bubs3

securedUrl=/bubs3

#End url properties

 

#localization properties @0-0D67F023

encoding=utf-8

language=Netherlands

defaultDateFormat=dd-MM-yyyy

defaultBooleanFormat=Y;N

requestEncoding=utf-8

#End localization properties

 

#messages bundle @0-77F70051

messagesBundle=MessagesBundle

#End messages bundle

 

#file upload @0-215C2A9B

com.codecharge.util.upload.storage=memory

#End file upload

 

#body post processor class name @0-C5219FBD

bodyPostProcessor.className=com.codecharge.util.CcsBodyPostProcessor

#End body post processor class name

 

#template class name @0-8EA332EE

template.class.name=com.codecharge.template.CCSTemplate

#End template class name

 

#templateSource class name @0-840DD0B6

templateSource.class.name=com.codecharge.template.FileTemplateSource

#End templateSource class name

 

#templateParser class name @0-7F4F85C9

templateParser.class.name=com.codecharge.template.TemplateParser

#End templateParser class name

 

#templateFolder @0-52356875

templateFolder=

#End templateFolder

 

#styles settings @0-27E71411

useDynamicStyles=True

defaultStyle=Apricot

SSEnableQueryString=True

SSQueryStringName=style

SSEnableSession=True

SSSessionName=style

SSEnableCookie=False

SSCookieName=style

SSCookieExpired=365

#End styles settings

 

#defaultLocale @0-45E529E7

defaultLocale=nl

#End defaultLocale

 

#localeSwitching @0-02E16A18

useI18nFeatures=True

enableQueryString=true

queryStringName=locale

enableSession=true

sessionName=locale

languageSessionName=lang

enableCookie=false

cookieName=locale

cookieExpired=365

enableHTTPHeader=false

httpHeaderName=

#End localeSwitching

 

#authentication properties @0-045E17BF

authenticator.securityType=CCS

authenticator.factoryClassName=com.codecharge.util.CCSAuthenticatorFactory

authenticator.securityStorage=session

authenticator.inheritanceRights=False

authenticator.userIdFieldName=GBR_ID

authenticator.userIdVarName=UserID

authenticator.loginFieldName=GBR_AANMELD_CODE

authenticator.loginVarName=UserLogin

authenticator.passwordFieldName=GBR_WACHTWOORD

authenticator.connectionName=bubs_tomcat

authenticator.tableName=BUBS_GEBRUIKERS_V

#End authentication properties

 

#tags to lower case @0-0649DE20

tags.toLowerCase=false

#End tags to lower case

 

#Connection 'bubs_tomcat' properties @1-28E264C0

bubs_tomcat.name=bubs_tomcat

bubs_tomcat.driver=oracle.jdbc.driver.OracleDriver

bubs_tomcat.dbType=Oracle

bubs_tomcat.url=jdbc:oracle:thin:@localhost:1521:ORCL

bubs_tomcat.maxconn=250

bubs_tomcat.user=bubs_tomcat

bubs_tomcat.password=bubs_tomcat

bubs_tomcat.timeout=3600

bubs_tomcat.fieldLeftDelim="

bubs_tomcat.fieldRightDelim="

bubs_tomcat.dateLeftDelim='

bubs_tomcat.dateRightDelim='

bubs_tomcat.dbNameUppercase=True

bubs_tomcat.dateFormat=dd-MM-yyyy HH:mm

bubs_tomcat.booleanFormat=Y;N

bubs_tomcat.optimizeSQL=True

bubs_tomcat.sessionCommand0=ALTER SESSION SET NLS_DATE_FORMAT = 'DD-MM-YYYY HH24:MI'

#End Connection 'bubs_tomcat' properties

 

#Connection 'bubs_exact' properties @2-444594F2

bubs_exact.name=bubs_exact

bubs_exact.driver=com.microsoft.jdbc.sqlserver.SQLServerDriver

bubs_exact.dbType=MSSQLServer

bubs_exact.url=jdbc:microsoft:sqlserver://localhost:21433

bubs_exact.maxconn=10

bubs_exact.user=bubs

bubs_exact.password=expbubs

bubs_exact.timeout=300

bubs_exact.fieldLeftDelim=[

bubs_exact.fieldRightDelim=]

bubs_exact.dateLeftDelim='

bubs_exact.dateRightDelim='

bubs_exact.dbNameUppercase=True

bubs_exact.dateFormat=yyyy-MM-dd HH:mm:ss

bubs_exact.booleanFormat=Y;N

bubs_exact.optimizeSQL=True

#End Connection 'bubs_exact' properties

Meaning

The meaning of the relevant settings is:

logfile: via logfile you can set at what place the log file must be made. The user of the operating system under who the web server is executed, must have writing access to this.

logpriority: via logpriority you can set how detailed the web application must store its activities in the log file. Possible values are ̒error̓, ̒warn̓, ̒info̓ and ̒debug̓. ̒Error̓ stores only error messages, while the other settings add more information.

logsize: the maximum size of the log. If this size in Kb is exceeded, then the file is deleted and recreated for writing.

serverUrl: the URL serving as a base for normal use of the web application via http. A screen URL is constructed using the value of the ‘serverURL’ adding for example ‘bubs_odt_all.do’ for the orders screen.

securedUrl: the Url serving as a base for logging into the web application via https.

encoding: the character set used to show the data in the browser. ‘Utf-8’ is the most flexible character set, in which for all common languages all characters are simultaneously present.

requestEncoding: the character set used to process data which were received from the browser.

language: the language used in case no user specific language has been selected. This language is thus normally used for the login screen, for example.

defaultLocale: the geographical region setting used in case no user specific region has been selected. This region setting is thus normally used for the login screen, for example.

The ‘authenticator’ is the module that validates whether users are actually the person they pretend to be. By default, usernames and passwords are used in the way they are registered in the application itself (see Persons). One can also choose for a deviating authentication mechanism, for example by using LDAP or Microsoft Active Directory.

The meaning of the settings starting with ‘authenticator.’ is:

authenticator.securityType: always has to be turned to ‘CCS’.

authenticator.factoryClassName: the Java component used to execute the authentication. For the built-in authentication based on the usernames in the screen Persons the value ‘com.codecharge.util.CCSAuthenticatorFactory’ has to be entered. For LDAP the value ‘com.codecharge.util.LDAPAuthenticatorFactory’ must be entered.

authenticator.userIdVarName: the name of the session variable holding the unique ID of the user, as determined in ‘authenticator.userIdFieldName’. Always ‘UserID’.

authenticator.loginVarName: the name of the session variable holding the username of the user, as determined in ‘authenticator.loginFieldName’. Always ‘UserLogin’.

authenticator.securityStorage: the location where the security credentials are stored. Always ‘session’.

authenticator.inheritanceRights: a reference whether or not the rights must be inherited from the lower authorisation levels. This setting must always have the value ‘False’ .

authenticator.ldap.external.suffix: only for LDAP. The branch under which the organization registers and searches for its authentication data, for example, ‘OU=MyBusiness,DC=invantive,DC=local’.

authenticator.ldap.external.server: only for LDAP. The address of the LDAP server, for instance ‘192.168.172.11’.

authenticator.ldap.external.protocol: only for LDAP. The used LDAP protocol, for instance ‘ldap’ or ‘ldaps’.

authenticator.ldap.external.useruniqueattribute: only for LDAP. The attribute uniquely showing across the organization which user it is. The value of this must also be registered in the user registration of Invantive Estate in the field ‘Logon Code’. An example is ‘userPrincipalName’.

authenticator.ldap.external.port: only for LDAP. The port number on the LDAP server, for instance 389 for LDAP or 636 for LDAPS.

authenticator.ldap.external.fillinpatternlogin: only for LDAP. The LDAP query pattern in which the username is entered in order to log a user on to LDAP, as long as there are no characters in ‘fullrecognition’ present in the username. The text ‘:account’ is replaced by the entered username. An example is ‘cn=:account,OU=SBSUsers,OU=Users,OU=MyBusiness,DN=invantive,DN=local’.

authenticator.ldap.external.fullrecognition: only for LDAP. The value in ‘authenticator.ldap.fillinpatternlogin’ is used in combination with the value registered in the LDAP attribute such as entered in ‘authenticator.ldap.useruniqueattribute’. However, in case the value in the LDAP attribute such as entered in ‘authenticator.ldap.useruniqueattribute’ contains one of the signs which have been filled out in this series of signs, solely the value of the LDAP attribute is sent to the server and the value in ‘authenticator.ldap.fillinpatternlogin’ is not used. An example is the character ‘@’.

authenticator.ldap.external.fillinpatternuniqueattribute: only for LDAP. The pattern in which the username is entered in order to search for data of the user such as the email address, as long as there are no characters in fullrecognition present in the username. The text ‘:account’ is replaced by the entered username. An example is ‘:account@invantive.local’

.authenticator.ldap.external.systemaccount: only for LDAP. The account with which the user ‘system’ has to be authenticated with. An example is ‘Administrator’. Note: This account is only used for LDAP authentication within the gateway. You always need to logon as the user ‘system’.

authenticator.ldap.local.try: indicator or - if the LDAP authentication is not successful - an attempt should be made to authenticate the user with the entered password against the local user data (identical to ‘com.codecharge.util.CCSAuthenticatorFactory’.). This is occasionally used to quickly test scenarios for complex work flows.

authenticator.ldap.local.validationSql: SQL statement to check the local authentication. The query should return one row if found and in all other cases nothing. The password is completed for all occurrences of: the user name and password for all occurrences of: account.

authenticator.ldap.local.regexFilter: regular expression to determine for which user login codes local authentication is allowed, for example, ‘.*’ to allow this for all users.

authenticator.tableName: only for built in user authentication. The name of the table or views which contains the user data used for authentication. Always ‘BUBS_GEBRUIKERS_V’.

authenticator.connectionName: only for built-in users authentication. The name of the connection used to read the table. Always ‘bubs_tomcat’.

authenticator.userIdFieldName: only for built-in users authentication. The name of the column storing the unique user's ID. Always ‘GBR_ID’.

authenticator.loginFieldName: only for built in users authentication. The name of the column in which the username of the user is stated. Always ‘GBR_AANMELD_CODE’.

authenticator.passwordFieldName: only for built-in users authentication. The name of the column in which the user's passwords is stated. Always ‘GBR_WACHTWOORD’.

To solve LDAP authentication problems, it is recommended to use LDAP tools such as ldapsearch (Unix / Linux), dsquery (Microsoft Windows Server 2003) or Novell's Ldapsearch (http://www.novell.com/coolsolutions/tools / 17350.html):

ldapsearch -x \

-h 192.168.172.11 \

-w secret \

-D 'cn=UW NAAM IN WOORDEN,OU=SBSUsers,OU=Users,OU=MyBusiness,DC=invantive,DC=local' \

-b OU=MyBusiness,DC=invantive,DC=local \

userPrincipalName=USER@invantive.local mail

The series of settings starting with ‘bubs_tomcat’ stores with which connection the application data can be approached. The meaning of the settings is:

bubs_tomcat.name: the name of the connection. Always ‘bubs_tomcat’.

bubs_tomcat.driver: the name of the Java Class used to set the connection in accordance with JDBC. Always ‘oracle.jdbc.driver.OracleDriver’.

bubs_tomcat.dbType: the type of the underlying database. Always ‘Oracle’.

bubs_tomcat.url: the JDBC URL used to build the connection with. This has the format ‘jdbc:oracle:thin:@’, followed by the server's name or address, the sign ‘:’, the port to which the database listener listens to (often 1521), again the sign ‘:’ and finally the name of the instance. An example is ‘jdbc:oracle:think:@localhost:1521:ORCL’.

bubs_tomcat.maxconn: the maximum number simultaneous connections with the Oracle database. This usually is around 20% of the maximum number of simultaneous users. A higher value cannot do any harm, next to needing 10 Mb extra internal memory per connection really being used on peak moments. For development environments, it is sometimes helpful to set the number to ‘0’. This means that the connection is closed immediately after use. This costs performance, but makes it easier to avoid problems by holding ‘state’ (for example, ORA-04061 messages) when a developer changes code while the system is running. In most cases, removing an Oracle session will be automatically repaired by the web interface.

bubs_tomcat.user: The Oracle user with whom the connection is made. For example, ‘bubs_tomcat’.

bubs_tomcat.password: the password of the Oracle user as stored in ‘bubs_tomcat.user’.

bubs_tomcat.timeout: the web application considers a user non-active after a while and logs him off. The value of ‘bubs_tomcat.timeout’ determines after how many seconds the user is automatically logged off.

bubs_tomcat.fieldLeftDelim: the sign used to quote field names in database requests on the left. Always‘"’.

bubs_tomcat.fieldRightDelim: bubs_tomcat.fieldLeftDelim: the sign used to quote field names in database requests on the right. Always‘"’.

bubs_tomcat.dateLeftDelim: the sign used to quote date constants in database requests on the left. Always‘"’.

bubs_tomcat.dateRightDelim: the sign used to quote date constants in database requests on the right. Always‘"’.

bubs_tomcat.dBNameUppercase: always ‘True’.

bubs_tomcat.dateFormat: the used database format for dates, always ‘dd-MM-yyyy HH:mm’.

bubs_tomcat.booleanFormat: the used database format for fields containing a boolean flag (‘true’ or ‘false’). Always ‘Y;N’.

bubs_tomcat.optimizeSql: always ‘True’.

bubs_tomcat.sessionCommand0: the statement always being executed after building up a new session. Always ‘alter session set nls_date_format = ‘DD-MM-YYYY HH24:MI0145’’.

In the series of settings beginning with ‘bubs_exact.’ it is stored via which connection the data for the ERP interface are obtained. The meaning of the settings is:

bubs_exact.name: the name of the connection Always ‘bubs_exact’.

bubs_exact.driver: the name of the Java class used to build the connection in accordance with JDBC. For example, ‘oracle.jdbc.driver.OracleDriver’ for an Oracle RDBMS and ‘com.microsoft.jdbc.sqlserver.SQLServerDriver’ for Microsoft SQL Server.

bubs_exact.dbType: the type of the underlying database. For example, ‘Oracle’ for an Oracle RDBMS and ‘MSSQLServer’ for Microsoft SQL Server.

bubs_exact.url: de JDBC URL used to build the connection with. For Oracle RDBMS it has the format ‘jdbc:oracle:thin:@’, followed by the name or address of the server, the sign ‘:’, the port to which the database listener listens to (often 1521), again the sign ‘:’ and finally the name of the instance. An example is ‘jdbc:oracle:think:@localhost:1521:ORCL’. For Microsoft SQL Server this has the format 'jdbc:microsoft:sqlserver://', followed by the name or address of the server, the sign ':' and the gate to which the database listener listens to (often1433). An example is ‘jdbc:microsoft:sqlserver://localhost:1433’.

bubs_exact.maxconn: the maximum number of simultaneous connections with the ERP database. This usually is around 20% of the maximum number of simultaneous users. More than 1 usually has no point, since the ERP interface can be processed no more than one time.

bubs_exact.user: the user with which a connection is made. For instance ‘exact’.

bubs_exact.password: the password of the user, as stored in ‘bubs_exact.user’.

bubs_exact.timeout: the web application considers a user non-active after a while and logs him off. The value of ‘bubs_exact.timeout’ determines after how many seconds the user is automatically logged off.

bubs_exact.fieldLeftDelim: the sign used to quote field names in database requests on the left. Always ‘"’ for Oracle and ‘[’ for Microsoft SQL Server.

bubs_exact.fieldRightDelim: the sign used to quote field names in database requests on the right. Always ‘"’ for Oracle and ‘]’ for Microsoft SQL Server.

bubs_exact.dateLeftDelim: the sign used to quote date constants in database requests on the left. Always‘"’.

bubs_exact.dateRightDelim: he sign used to quote date constants in database requests on the right. Always‘"’.

bubs_exact.dBNameUppercase: always ‘True’.

bubs_exact.dateFormat: the used database format for dates, always ‘dd-MM-yyyy HH:mm’ for Oracle and ‘yyyy-MM-dd HH:mm:ss’ for Microsoft SQL Server.

bubs_tomcat.booleanFormat: the used database format for fields containing a boolean flag (‘true’ or ‘false’). Always ‘Y;N’.

bubs_exact.optimizeSql: always ‘True’.