INSTALL

Sat, 06 Jan 2024 20:32:56 +0100

author
Mike Becker <universe@uap-core.de>
date
Sat, 06 Jan 2024 20:32:56 +0100
changeset 300
c7ee4cbfb86d
parent 262
c357c4e69b9e
permissions
-rw-r--r--

Added tag v1.2.2 for changeset 238de141d189

universe@221 1 Installing LightPIT
universe@221 2 -------------------
universe@221 3
universe@221 4 1. Install a supported database server
universe@221 5
universe@221 6 Currently this is only Postgresql. See the Postgresql manual for installing a
universe@221 7 database instance. On most systems it is sufficient to install the server via
universe@221 8 the system package manager.
universe@221 9
universe@221 10 2. Execute the SQL scripts for creating the database
universe@221 11
universe@221 12 In the setup directory you find three SQL scripts to install the database.
universe@221 13
universe@221 14 * Modify psql_create_database.sql and choose appropriate usernames and
universe@221 15 passwords. Then execute the script as database administrator.
universe@221 16 * Log into the new database with the lightpit_dbo user and execute
universe@221 17 psql_create_tables.sql and psql_default_data.sql.
universe@221 18
universe@221 19 3. Configure a data source in your application servlet or servlet container
universe@221 20
universe@221 21 You may use absolutely anything: Tomcat, TomEE, Glassfish, Payara, you name it.
universe@254 22 If it supports Servlet 6.0, JSP 3.1, and EL 5.0, you are good to go.
universe@221 23 Just make sure to configure a data source with the name jdbc/lightpit/app.
universe@221 24 If you want another name, you can configure the JNDI resource in the
universe@221 25 WEB-INF/web.xml and META-INF/context.xml files. It is highly recommended to use
universe@221 26 the lightpit_app user which has less privileges to create the data source and
universe@221 27 leave the lightpit_dbo user for the database operator.
universe@221 28
universe@262 29 4. Build and Deploy the WAR file of lightpit
universe@221 30
universe@262 31 Build the WAR file with gradle. If your application server already provides
universe@262 32 the necessary runtime libraries for JSTL and PostgreSQL, leave the variable
universe@262 33 libsAreProvided = true during the build. Otherwise, set this variable to false
universe@262 34 and the libraries will be included in the WAR file. But keep in mind that some
universe@262 35 servlet containers, like Tomcat, are not so happy about this when hot redeploy-
universe@262 36 ments are performed. If you experience ClassDefNotFound errors after a hot
universe@262 37 redeployment, you should either provide the libs in your container or always
universe@262 38 restart the entire container after a redeployment.
universe@221 39
universe@254 40 5. Configuring a web server and authentication
universe@221 41
universe@221 42 LightPIT can optionally detect the authenticated user. You may freely decide
universe@221 43 whether to enable authentication in your application server or put a web server
universe@221 44 in front. The latter is recommended, but keep in might that forwarding the
universe@221 45 authentication information may only work with AJP for certain servlet
universe@221 46 containers. Consult the respective manuals of the software you are using.
universe@221 47
universe@221 48 When the remote user is picked up successfully by LightPIT, comments under
universe@221 49 issues e.g. are personalized. For this to work the authenticated username must
universe@221 50 match one of the configured usernames in LightPIT.
universe@221 51
universe@221 52 Have fun!

mercurial