Wiki source code of 03 Projekt Setupguide ONYX

Last modified by Carina Enke on 15.11.2025

Show last authors
1 {{section}}
2 {{column width="60%"}}
3 == System requirements ==
4
5 === All components ===
6
7 * Linux-based OS
8 * Java 17
9 * Apache Tomcat 9 (latest update)
10
11 === ONYX Editor (additionally) ===
12
13 * PostgreSQL 12
14 * Java unlimited security enabled
15 {{/column}}
16
17 {{column width="30%"}}
18 {{panel title="Content"}}
19 {{toc start="2"/}}
20 {{/panel}}
21 {{/column}}
22 {{/section}}
23
24 {{code}}
25 http://stackoverflow.com/questions/6481627/java-security-illegal-key-size-or-default-parameters
26 Download from http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
27 {{/code}}
28
29 === Build process ===
30
31 * Linux-based OS
32 * Java 11 (latest update, Oracle or OpenJDK)
33 * Eclipse for JEE (Kepler or later)
34 * Maven2
35 * Eclipse Maven integration (m2)
36
37 == Steps for build ==
38
39 All ONYX parts are delivered as Eclipse projects
40
41
42 * preOnyx (ONYX QTI test player)
43 * preWebEditor (ONYX QTI test editor)
44 * onyx (ONYX QTI core)
45 * 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)
46
47 * Use Eclipse
48 * Import -> Existing project, start with LaTeXRenderer project
49 * Import all four projects
50
51 Due to license restrictions the **project LaTeXRenderer** is not linked or integrated by default. This must be done manually.
52
53 {{info}}
54 Ensure that project dependency from preWebOnyx and preWebEditor to LaTeXRenderer is fulfilled.
55 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)
56 {{/info}}
57
58 (% 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)
59
60 **Setup database for ONYX Editor**
61
62 * Locate setupdatabase.postgre.sql
63 * Log on to Postgres
64 * Create user owe with password owe
65 * Create database owe and assign to user owe
66 * Import setupdatabase.postgre.sql to this database
67
68 Hint: you may use other user/database names, change configuration in
69
70 {{code}}
71 applicationContext.xml (see below)
72 {{/code}}
73
74 == Changes on ONYX QTI core ==
75
76 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.
77
78 == Configuration ==
79
80 **preWebOnyx**
81
82 * Locate onyxplugin.default.config.xml, copy it to a classpath folder and rename to onyxplugin.config.xml
83 * Configure as needed
84 * Service provider named “preview” is required if used as preview instance for ONYX Editor
85
86 **preWebEditor**
87
88 * applicationContext.xml: general configurations (database, mail configuration, preview ONYX (you can change this to your local installation), ...)
89 * metadataConfigurationContext.xml: normally no changes needed as long as no further metadata are required
90 * moduleConfigurationContext.xml: repository configuration
91 * pageModelContext.xml: normally no changes required, defines the main tabs in shown application
92 * webServiceContext.xml: reporter statistics connection, can be changed to your local ONYX installation
93
94 == Deployment ==
95
96 * 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)
97 * Configure Tomcat deployment to use different ports
98 * Check path the applications are mounted to
99 * Start Tomcat(s)
100 * Call http:~/~/localhost:<port>/<path> in browser
101
102 == Important notes ==
103
104 **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.
105
106 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.
107
108 In server environment ONYX applications uses memory strongly dependent from load and users activities. BPS runs them with **8 GB each**.