Tue, 14 Jan 2025 20:12:25 +0100
add author to issue history and RSS feed - fixes #463
| 
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! |