Wiki-Quellcode von Projekt Setupguide ONYX

Version 377.1 von Carina Enke am 13.02.2024

Zeige letzte Bearbeiter
1 {{layout}}
2 {{layout-section ac:type="two_right_sidebar"}}
3 {{layout-cell}}
4 == System requirements ==
5
6 === All components ===
7
8 * (((
9 Linux-based OS
10 )))
11 * (((
12 Java 17
13 )))
14 * (((
15 Apache Tomcat 9 (latest update)
16 )))
17
18 === ONYX Editor (additionally) ===
19
20 * PostgreSQL 12
21 * Java unlimited security enabled
22
23 {{code}}
24 http://stackoverflow.com/questions/6481627/java-security-illegal-key-size-or-default-parameters
25 Download from http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
26 {{/code}}
27
28 === Build process ===
29
30 * Linux-based OS
31 * Java 11 (latest update, Oracle or OpenJDK)
32 * Eclipse for JEE (Kepler or later)
33 * Maven2
34 * Eclipse Maven integration (m2)
35 {{/layout-cell}}
36
37 {{layout-cell}}
38 {{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}}
39 {{toc start="2"/}}
40
41
42 {{/panel}}
43 {{/layout-cell}}
44 {{/layout-section}}
45
46 {{layout-section ac:type="single"}}
47 {{layout-cell}}
48 == Steps for build ==
49
50 All ONYX parts are delivered as Eclipse projects
51
52
53 * preOnyx (ONYX QTI test player)
54 * preWebEditor (ONYX QTI test editor)
55 * onyx (ONYX QTI core)
56 * 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)
57 \\
58
59 * Use Eclipse
60 * Import -> Existing project, start with LaTeXRenderer project
61 * Import all four projects
62
63 Due to license restrictions the **project LaTeXRenderer** is not linked or integrated by default. This must be done manually.
64
65 {{code}}
66 Ensure that project dependency from preWebOnyx and preWebEditor to LaTeXRenderer is fulfilled.
67 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)
68
69
70 {{/code}}
71
72 (% 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)
73
74 (% style="line-height:1.4285715" %)**Setup database for ONYX Editor**
75
76 * Locate setupdatabase.postgre.sql
77 * Log on to Postgres
78 * Create user owe with password owe
79 * Create database owe and assign to user owe
80 * Import setupdatabase.postgre.sql to this database
81
82 Hint: you may use other user/database names, change configuration in
83
84 {{code}}
85 applicationContext.xml (see below)
86 {{/code}}
87
88 == Changes on ONYX QTI core ==
89
90 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.
91
92 == Configuration ==
93
94 **preWebOnyx**
95
96 * Locate onyxplugin.default.config.xml, copy it to a classpath folder and rename to //onyxplugin.config.xml//
97 * Configure as needed
98 * Service provider named “preview” is required if used as preview instance for ONYX Editor
99
100 **preWebEditor**
101
102 * applicationContext.xml: general configurations (database, mail configuration, preview ONYX (you can change this to your local installation), ...)
103 * metadataConfigurationContext.xml: normally no changes needed as long as no further metadata are required
104 * moduleConfigurationContext.xml: repository configuration
105 * pageModelContext.xml: normally no changes required, defines the main tabs in shown application
106 * webServiceContext.xml: reporter statistics connection, can be changed to your local ONYX installation
107
108 == Deployment ==
109
110 * 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)
111 * Configure Tomcat deployment to use different ports
112 * Check path the applications are mounted to
113 * Start Tomcat(s)
114 * Call http:~/~/localhost:<port>/<path> in browser
115
116 == Important notes ==
117
118 **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.
119
120 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.
121
122 In server environment ONYX applications uses memory strongly dependent from load and users activities. BPS runs them with **8 GB each**.
123 {{/layout-cell}}
124 {{/layout-section}}
125 {{/layout}}
126
127 {{layout}}
128 {{layout-section ac:type="two_right_sidebar"}}
129 {{layout-cell}}
130 == System requirements ==
131
132 === All components ===
133
134 * (((
135 Linux-based OS
136 )))
137 * (((
138 Java 17
139 )))
140 * (((
141 Apache Tomcat 9
142 )))
143
144 === ONYX WebEditor (additionally) ===
145
146 * PostgreSQL 12
147 * Java unlimited security enabled
148
149 {{code}}
150 http://stackoverflow.com/questions/6481627/java-security-illegal-key-size-or-default-parameters
151 Download from http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
152 {{/code}}
153
154 === Build process ===
155
156 * Linux-based OS
157 * Java 11 (Oracle or OpenJDK)
158 * Eclipse for JEE (Kepler or later)
159 * Maven2
160 * Eclipse Maven integration (m2)
161 {{/layout-cell}}
162
163 {{layout-cell}}
164 {{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}}
165 {{toc maxLevel="4"/}}
166
167
168 {{/panel}}
169 {{/layout-cell}}
170 {{/layout-section}}
171
172 {{layout-section ac:type="single"}}
173 {{layout-cell}}
174 == Steps for build ==
175
176 All ONYX parts are delivered as Eclipse projects:
177
178 * (((
179 preWebOnyx (ONYX QTI test player)
180 )))
181 * (((
182 preWebEditor (ONYX QTI test editor)
183 )))
184 * (((
185 onyx (ONYX QTI core)
186 )))
187 * (((
188 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)
189 )))
190
191 Use Eclipse:
192
193 * (((
194 Import -> Existing project, start with LaTeXRenderer project
195 )))
196 * (((
197 Import all four projects
198 )))
199
200 Due to license restrictions the **project LaTeXRenderer** is not linked or integrated by default. This must be done manually.
201
202 {{code}}
203 Ensure that project dependency from preWebOnyx and preWebEditor to LaTeXRenderer is fulfilled. 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)
204 {{/code}}
205
206 **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)
207
208 **Setup database for ONYX WebEditor**
209
210 * (((
211 Locate setupdatabase.postgre.sql
212 )))
213 * (((
214 Log on to Postgres
215 )))
216 * (((
217 Create user owe with password owe
218 )))
219 * (((
220 Create database owe and assign to user owe
221 )))
222 * (((
223 Import setupdatabase.postgre.sql to this database
224 )))
225
226 Hint: you may use other user/database names, change configuration in
227
228 {{code}}
229 applicationContext.xml (see below)
230 {{/code}}
231
232 Changes on ONYX QTI core
233
234 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.
235
236 Configuration
237
238 **preWebOnyx**
239
240 * (((
241 Locate onyxplugin.default.config.xml, copy it to a classpath folder and rename to//onyxplugin.config.xml//
242 )))
243 * (((
244 Configure as needed
245 )))
246 * (((
247 Service provider named “preview” is required if used as preview instance for ONYX WebEditor
248 )))
249
250 **preWebEditor**
251
252 * (((
253 applicationContext.xml: general configurations (database, mail configuration, preview ONYX (you can change this to your local installation), ...)
254 )))
255 * (((
256 metadataConfigurationContext.xml: normally no changes needed as long as no further metadata are required
257 )))
258 * (((
259 moduleConfigurationContext.xml: repository configuration
260 )))
261 * (((
262 pageModelContext.xml: normally no changes required, defines the main tabs in shown application
263 )))
264 * (((
265 webServiceContext.xml: reporter statistics connection, can be changed to your local ONYX installation
266 )))
267
268 Deployment
269
270 * (((
271 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)
272 )))
273 * (((
274 Configure Tomcat deployment to use different ports
275 )))
276 * (((
277 Check path the applications are mounted to
278 )))
279 * (((
280 Start Tomcat(s)
281 )))
282 * (((
283 Call http:~/~/localhost:<port>/<path> in browser
284 )))
285
286 Important notes
287
288 **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.
289
290 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.
291
292 In server environment ONYX applications uses memory strongly dependent from load and users activities. BPS runs them with **8 GB each**.
293 {{/layout-cell}}
294 {{/layout-section}}
295 {{/layout}}