INSTALL

Sun, 06 Oct 2024 15:35:46 +0200

author
Mike Becker <universe@uap-core.de>
date
Sun, 06 Oct 2024 15:35:46 +0200
changeset 326
d5f6331d4adb
parent 262
c357c4e69b9e
permissions
-rw-r--r--

fix critical loss of data - fixes #449

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

mercurial