Sun, 08 Jan 2023 19:33:08 +0100
version 1.0 - finally
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! |