Wiki-Quellcode von Projekt Setupguide ONYX

Version 302.1 von Carina Enke am 23.01.2019

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