Wiki source code of 03 Projekt Setupguide ONYX

Last modified by Carina Enke on 13.02.2024

Show last authors
1 == System requirements ==
2
3 === All components ===
4
5 * Linux-based OS
6 * Java 17
7 * Apache Tomcat 9 (latest update)
8
9 === ONYX Editor (additionally) ===
10
11 * PostgreSQL 12
12 * Java unlimited security enabled
13
14 {{code}}
15 http://stackoverflow.com/questions/6481627/java-security-illegal-key-size-or-default-parameters
16 Download from http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
17 {{/code}}
18
19 === Build process ===
20
21 * Linux-based OS
22 * Java 11 (latest update, Oracle or OpenJDK)
23 * Eclipse for JEE (Kepler or later)
24 * Maven2
25 * Eclipse Maven integration (m2)
26
27 {{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}}
28 {{toc start="2"/}}
29
30
31 {{/panel}}
32
33
34 == Steps for build ==
35
36 All ONYX parts are delivered as Eclipse projects
37
38
39 * preOnyx (ONYX QTI test player)
40 * preWebEditor (ONYX QTI test editor)
41 * onyx (ONYX QTI core)
42 * LaTeXRenderer (LaTeX image renderer connector, used to render LaTeX math formulas to images, which can be included in PDFs. This project only offers an interface to connect whatever lib you want, e.g. jlatexmath (GPL, delivered as example)
43
44 * Use Eclipse
45 * Import -> Existing project, start with LaTeXRenderer project
46 * Import all four projects
47
48 Due to license restrictions the **project LaTeXRenderer** is not linked or integrated by default. This must be done manually.
49
50 {{info}}
51 Ensure that project dependency from preWebOnyx and preWebEditor to LaTeXRenderer is fulfilled.
52 Ensure that project LaTeXRenderer exports all libs in /libs folder (you may get ClassNotFoundExceptions in Tomcat otherwise, if you still get them add all libs from project LaTeXRenderer to Tomcat classpath manually)
53 {{/info}}
54
55 (% style="line-height:1.4285715" %)**Maven will build all projects automatically**(%%) (you can do this manually on console, anyhow this is not tested in development environment and may disturb Eclipse Maven integration)
56
57 (% style="line-height:1.4285715" %)**Setup database for ONYX Editor**
58
59 * Locate setupdatabase.postgre.sql
60 * Log on to Postgres
61 * Create user owe with password owe
62 * Create database owe and assign to user owe
63 * Import setupdatabase.postgre.sql to this database
64
65 Hint: you may use other user/database names, change configuration in
66
67 {{code}}
68 applicationContext.xml (see below)
69 {{/code}}
70
71 == Changes on ONYX QTI core ==
72
73 Since all ONYX components are managed by Maven, the ONYX QTI core from BPS Maven artifactory is used by default. If you want to change some code you are required to create a JAR from project onyx on your own and either adopt the pom.xml references in preWebOnyx and preWebEditor to your own artifactory or put the JAR in classpath.
74
75 == Configuration ==
76
77 **preWebOnyx**
78
79 * Locate onyxplugin.default.config.xml, copy it to a classpath folder and rename to //onyxplugin.config.xml//
80 * Configure as needed
81 * Service provider named “preview” is required if used as preview instance for ONYX Editor
82
83 **preWebEditor**
84
85 * applicationContext.xml: general configurations (database, mail configuration, preview ONYX (you can change this to your local installation), ...)
86 * metadataConfigurationContext.xml: normally no changes needed as long as no further metadata are required
87 * moduleConfigurationContext.xml: repository configuration
88 * pageModelContext.xml: normally no changes required, defines the main tabs in shown application
89 * webServiceContext.xml: reporter statistics connection, can be changed to your local ONYX installation
90
91 == Deployment ==
92
93 * Deploy preWebOnyx and preWebEditor to Tomcat in Eclipse (it is recommended to use two Tomcat servers in Eclipse to be able to restart both independently)
94 * Configure Tomcat deployment to use different ports
95 * Check path the applications are mounted to
96 * Start Tomcat(s)
97 * Call http:~/~/localhost:<port>/<path> in browser
98
99 == Important notes ==
100
101 **Before running any ONYX application** in Eclipse/Tomcat, always **clean Tomcat Work Directory** first. This is also required in server environment after each update. Since ONYX creates large amounts of temporary files in server environment it is also strictly recommended to clean servers and tomcat temp directory before each application starts.
102
103 When run from Eclipse/Tomcat ONYX applications may not shut down properly. In this case just “kill” them using the red “Terminate” button in console view.
104
105 In server environment ONYX applications uses memory strongly dependent from load and users activities. BPS runs them with **8 GB each**.