Wiki-Quellcode von Projekt Setupguide ONYX

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