Wiki-Quellcode von Projekt Setupguide ONYX

Version 237.1 von Carina Enke am 19.05.2020

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