Wiki-Quellcode von Projekt Setupguide ONYX

Version 167.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 11 (Oracle or OpenJDK)
172 )))
173 * (((
174 Apache Tomcat 9
175 )))
176
177 === ONYX WebEditor (additionally) ===
178
179 * PostGreSQL (8.4.21 or later)
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 {{scroll-ignore}}
198 {{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}}
199
200
201 {{toc maxLevel="4"/}}
202
203 **
204 **
205 {{/panel}}
206 {{/scroll-ignore}}
207 {{/layout-cell}}
208 {{/layout-section}}
209
210 {{layout-section ac:type="single"}}
211 {{layout-cell}}
212 == Steps for build ==
213
214 All ONYX parts are delivered as Eclipse projects:
215
216 * (((
217 preWebOnyx (ONYX QTI test player)
218 )))
219 * (((
220 preWebEditor (ONYX QTI test editor)
221 )))
222 * (((
223 onyx (ONYX QTI core)
224 )))
225 * (((
226 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)
227 )))
228
229 Use Eclipse:
230
231 * (((
232 Import -> Existing project, start with LaTeXRenderer project
233 )))
234 * (((
235 Import all four projects
236 )))
237
238 Due to license restrictions the **project LaTeXRenderer** is not linked or integrated by default. This must be done manually.
239
240 {{code}}
241 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)
242 {{/code}}
243
244 **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)
245
246 **Setup database for ONYX WebEditor**
247
248 * (((
249 Locate setupdatabase.postgre.sql
250 )))
251 * (((
252 Log on to Postgres
253 )))
254 * (((
255 Create user owe with password owe
256 )))
257 * (((
258 Create database owe and assign to user owe
259 )))
260 * (((
261 Import setupdatabase.postgre.sql to this database
262 )))
263
264 \\
265
266 Hint: you may use other user/database names, change configuration in
267
268 {{code}}
269 applicationContext.xml (see below)
270 {{/code}}
271
272 Changes on ONYX QTI core
273
274 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.
275
276 Configuration
277
278 **preWebOnyx**
279
280 * (((
281 Locate onyxplugin.default.config.xml, copy it to a classpath folder and rename to//onyxplugin.config.xml//
282 )))
283 * (((
284 Configure as needed
285 )))
286 * (((
287 Service provider named “preview” is required if used as preview instance for ONYX WebEditor
288 )))
289
290 **preWebEditor**
291
292 * (((
293 applicationContext.xml: general configurations (database, mail configuration, preview ONYX (you can change this to your local installation), ...)
294 )))
295 * (((
296 metadataConfigurationContext.xml: normally no changes needed as long as no further metadata are required
297 )))
298 * (((
299 moduleConfigurationContext.xml: repository configuration
300 )))
301 * (((
302 pageModelContext.xml: normally no changes required, defines the main tabs in shown application
303 )))
304 * (((
305 webServiceContext.xml: reporter statistics connection, can be changed to your local ONYX installation
306 )))
307
308 Deployment
309
310 * (((
311 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)
312 )))
313 * (((
314 Configure Tomcat deployment to use different ports
315 )))
316 * (((
317 Check path the applications are mounted to
318 )))
319 * (((
320 Start Tomcat(s)
321 )))
322 * (((
323 Call http:~/~/localhost:<port>/<path> in browser
324 )))
325
326 Important notes
327
328 **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.
329
330 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.
331
332 In server environment ONYX applications uses memory strongly dependent from load and users activities. BPS runs them with **8 GB each**.
333 {{/layout-cell}}
334 {{/layout-section}}
335 {{/layout}}
336 {{/sv-translation}}