Wiki-Quellcode von ONYX project setup guide

Version 353.1 von sandra_riediger am 15.12.2014

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