Wiki-Quellcode von Projekt Setupguide ONYX

Version 165.1 von Carina Enke am 08.03.2022

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