Änderungen von Dokument 08 Schnittstelle ONYX Reporter

Zuletzt geändert von Carina Enke am 13.02.2024

Von Version 374.1
bearbeitet von tleu
am 01.12.2014
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 396.1
bearbeitet von Carina Enke
am 13.02.2024
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Titel
... ... @@ -1,1 +1,1 @@
1 -Schnittstelle ONYX Reporter
1 +10 Schnittstelle ONYX Reporter
Übergeordnete Seite
... ... @@ -1,0 +1,1 @@
1 +ONYX.Systeminformationen.WebHome
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.tleu
1 +XWiki.carina
Inhalt
... ... @@ -1,38 +1,13 @@
1 1  {{layout}}
2 2  {{layout-section ac:type="two_right_sidebar"}}
3 3  {{layout-cell}}
4 -====== Inhalt: ======
5 -
6 -
7 -
8 -{{toc style="square" maxLevel="5" outline="true" absoluteUrl="true"/}}
4 +
9 9  {{/layout-cell}}
10 10  
11 11  {{layout-cell}}
12 -|=(% colspan="1" %)(% colspan="1" %)
13 -(((
14 -Programmversion
15 -)))|(% colspan="1" %)(% colspan="1" %)
16 -(((
17 -
18 -)))
19 -|=(((
20 -Status
21 -)))|(((
22 -(% class="status-macro aui-lozenge aui-lozenge-error" %)ENTWURF
23 -)))
24 -|=(((
25 -Aufgaben
26 -)))|(((
27 -
28 -
29 -
30 -)))
31 -|=(((
32 -JIRA
33 -)))|(((
34 -
35 -)))
8 +{{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}}
9 +{{toc start="2"/}}
10 +{{/panel}}
36 36  {{/layout-cell}}
37 37  {{/layout-section}}
38 38  
... ... @@ -42,6 +42,7 @@
42 42  
43 43  Über die Schnittstelle zum ONYX WebReporter erfolgt jede Kommunikation zwischen dem LMS und dem Reporter. Dazu erfolgt eine Reihe von Aufrufen:
44 44  
20 +(% class="wrapped" %)
45 45  |(((
46 46  armSite
47 47  )))|(((
... ... @@ -60,9 +60,7 @@
60 60  |(((
61 61  getResultValues
62 62  )))|(((
63 -Gibt alle bzw. die angeforderten Resultate für den Test zurück. Voraussetzung:
64 -
65 -Es ist nur exakt ein Student in der bei initiateSite übertragenen Liste.
39 +Gibt alle bzw. die angeforderten Resultate für den Test zurück. Voraussetzung: Es ist nur exakt ein Student in der bei initiateSite übertragenen Liste.
66 66  )))
67 67  |(% colspan="1" %)(% colspan="1" %)
68 68  (((
... ... @@ -74,7 +74,8 @@
74 74  
75 75  == Anmeldung des LMS ==
76 76  
77 -{{code title="Anmeldung des LMS" language="xml"}}@WebMethod(operationName = „armSite")
51 +{{code language="xml" title="Anmeldung des LMS"}}
52 +@WebMethod(operationName = „armSite")
78 78  public String armSite(
79 79  @WebParam(name = „version") final Integer version,
80 80  @WebParam(name = „userId") final String userId,
... ... @@ -83,53 +83,649 @@
83 83  @WebParam(name = „optionalUserLastName") final String userLastName,
84 84  @WebParam(name = „optionalUserFirstName") final String userFirstName,
85 85  @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
86 -}{{/code}}Parameter armSite
61 +}
62 +{{/code}}
87 87  
64 +=== Parameter armSite ===
65 +
66 +(% class="wrapped" %)
88 88  |(((
89 -
68 +version
90 90  )))|(((
91 -
70 +Angefragte Version: 1
92 92  )))
93 93  |(((
94 -
73 +userId
95 95  )))|(((
96 -
75 +UserId des anfragenden Reporter-Benutzers
97 97  )))
98 98  |(((
99 -
78 +optionalRole
100 100  )))|(((
101 -
80 +Optional. Rolle des Benutzers. 0 = Student, 1= Tutor
102 102  )))
103 103  |(((
104 -
83 +secretToShare
105 105  )))|(((
106 -
85 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
107 107  )))
108 108  |(((
109 -
88 +optionalUserLastName
110 110  )))|(((
111 -
90 +Optional. Nachname des Benutzers.
112 112  )))
92 +|(% colspan="1" %)(% colspan="1" %)
93 +(((
94 +optionalUserFirstName
95 +)))|(% colspan="1" %)(% colspan="1" %)
96 +(((
97 +Optional. Vorname des Benutzers.
98 +)))
99 +|(% colspan="1" %)(% colspan="1" %)
100 +(((
101 +additionalParams
102 +)))|(% colspan="1" %)(% colspan="1" %)
103 +(((
104 +Reserved for future use.
105 +)))
113 113  
114 -= Überschrift2 =
107 +=== ReturnValue armSite ===
115 115  
116 -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam fermentum vestibulum est. Cras rhoncus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Sed quis tortor. Donec non ipsum. Mauris condimentum, odio nec porta tristique, ante neque malesuada massa, in dignissim eros velit at tellus. Donec et risus in ligula eleifend consectetuer. Donec volutpat eleifend augue. Integer gravida sodales leo. Nunc vehicula neque ac erat. Vivamus non nisl. Fusce ac magna. Suspendisse euismod libero eget mauris.
109 +(% class="wrapped" %)
110 +|(((
111 +String
112 +)))|(((
113 +Session ID, mit der alle weiteren Reporter-Aufrufe gekennzeichnet werden müssen.
114 +)))
115 +
116 +== Initialisierung durch LMS ==
117 +
118 +{{code language="xml" title="Initialisierung durch LMS"}}
119 +@WebMethod(operationName = „initiateSite")
120 +public String initiateSite(
121 +@WebParam(name = „version") final Integer version,
122 +@WebParam(name = „sessionId") final String sessionId,
123 +@WebParam(name = „secretToShare") final String secretToShare,
124 +@WebParam(name = „students") final ArrayList<ResultsForStudent> students,
125 +@WebParam(name = „optionalContentPackage") final byte[] contentPackage,
126 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
127 +}
128 +{{/code}}
129 +
130 +=== Parameter initiateSite ===
131 +
132 +(% class="wrapped" %)
133 +|(((
134 +version
135 +)))|(((
136 +Angefragte Version: 1
137 +)))
138 +|(% colspan="1" %)(% colspan="1" %)
139 +(((
140 +sessionId
141 +)))|(% colspan="1" %)(% colspan="1" %)
142 +(((
143 +SessionId, wie von armSite zurück geliefert.
144 +)))
145 +|(((
146 +secretToShare
147 +)))|(((
148 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
149 +)))
150 +|(((
151 +students
152 +)))|(((
153 +Liste der Studenten mit ihren Resultaten. Siehe unten.
154 +)))
155 +|(((
156 +optionalContentPackage
157 +)))|(((
158 +Optional. Content Package (gezippt) als Byte-Array.
159 +)))
160 +|(((
161 +additionalParams
162 +)))|(((
163 +Reserved for future use.
164 +)))
165 +
166 +=== ReturnValue initiateSite ===
167 +
168 +(% class="wrapped" %)
169 +|(((
170 +String
171 +)))|(((
172 +Absolute URL der Reporter-Seite für den IFrame. Dieser ist vom LMS durch die folgenden URL-Parameter anzureichern:
173 +
174 +* sid: Session ID, wie von armSite zurück gegeben
175 +* uid: Student ID, wie in initiateSite beim Reporter angemeldet
176 +)))
177 +
178 +{{code language="xml"}}
179 +public class ResultsForStudent {
180 +   private String studentId = „";
181 +   private String firstname = „";
182 +   private String lastname = „";
183 +   private String groupname = „";
184 +   private String tutorname = „";
185 +   private File contentFile = null;
186 +   private byte[] resultsFile = null;
187 +}
188 +{{/code}}
189 +
190 +== Abmeldung durch LMS ==
191 +
192 +
193 +{{code}}
194 +@WebMethod(operationName = „disarmSite")
195 +public Boolean disarmSite(
196 +@WebParam(name = „version") final Integer version,
197 +@WebParam(name = „sessionId") final String sessionId,
198 +@WebParam(name = „secretToShare") final String secretToShare,
199 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
200 +}
201 +{{/code}}
202 +
203 +
204 +=== Parameter disarmSite ===
205 +
206 +(% class="wrapped" %)
207 +|(((
208 +version
209 +)))|(((
210 +Angefragte Version: 1
211 +)))
212 +|(% colspan="1" %)(% colspan="1" %)
213 +(((
214 +sessionId
215 +)))|(% colspan="1" %)(% colspan="1" %)
216 +(((
217 +SessionId, wie von armSite zurück geliefert.
218 +)))
219 +|(((
220 +secretToShare
221 +)))|(((
222 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
223 +)))
224 +|(((
225 +additionalParams
226 +)))|(((
227 +Reserved for future use.
228 +)))
229 +
230 +=== ReturnValue disarmSite ===
231 +
232 +(% class="wrapped" %)
233 +|(((
234 +Boolean
235 +)))|(((
236 +True bei Erfolg, sonst false.
237 +)))
238 +
239 +== Abfrage von Lernerresultaten durch LMS ==
240 +
241 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}}
242 + @WebMethod(operationName = „getResultValues")
243 +public HashMapWrapper getResultValues(
244 + @WebParam(name = „version") final Integer version,
245 + @WebParam(name = „sessionId") final String sessionId,
246 + @WebParam(name = „secretToShare") final String secretToShare,
247 + @WebParam(name = „requestedValues") final HashMap<String, String>
248 + requestedValues,
249 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
250 +}
251 +{{/code}}
252 +
253 +=== Parameter getResultValues ===
254 +
255 +(% class="wrapped" %)
256 +|(((
257 +version
258 +)))|(((
259 +Angefragte Version: 1
260 +)))
261 +|(% colspan="1" %)(% colspan="1" %)
262 +(((
263 +sessionId
264 +)))|(% colspan="1" %)(% colspan="1" %)
265 +(((
266 +SessionId, wie von armSite zurück geliefert.
267 +)))
268 +|(((
269 +secretToShare
270 +)))|(((
271 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
272 +)))
273 +|(((
274 +requestedValues
275 +)))|(((
276 +Kann leer sein, dann werden alle Result-Variables zurück geliefert. Sind Keys enthalten, so kommen nur diese zurück.
277 +)))
278 +|(((
279 +additionalParams
280 +)))|(((
281 +Reserved for future use.
282 +)))
283 +
284 +=== ReturnValue getResultValues ===
285 +
286 +(% class="wrapped" %)
287 +|(((
288 +HashMap<String, String>
289 +)))|(((
290 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
291 +)))
292 +
293 +== Abfrage von Ergebnisvariablen durch LMS ==
294 +
295 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}}
296 + @WebMethod(operationName = „getResultVariables")
297 +public HashMapWrapper getResultVariables(
298 +@WebParam(name = „version") final Integer version,
299 +@WebParam(name = „contentPackage") final byte[] contentPackage,
300 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
301 +}
302 +{{/code}}
303 +
304 +=== Parameter getResultVariables ===
305 +
306 +(% class="wrapped" %)
307 +|(((
308 +version
309 +)))|(((
310 +Angefragte Version: 1
311 +)))
312 +|(((
313 +contentPackage
314 +)))|(((
315 +Content Package (gezippt) als Byte-Array.
316 +)))
317 +|(((
318 +additionalParams
319 +)))|(((
320 +Reserved for future use.
321 +)))
322 +
323 +=== ReturnValue getResultVariables ===
324 +
325 +(% class="wrapped" %)
326 +|(((
327 +HashMap<String, String>
328 +)))|(((
329 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
330 +)))
331 +
332 +== Wrapper ==
333 +
334 +Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden.
335 +
336 +=== Wrapper für die HashMap<String, String> ===
337 +
338 +HashMapWrapper.java:
339 +
340 +[[image:attach:HashMapWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
341 +
342 +[[image:attach:HashMapWrapperjava2.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
343 +
344 +=== Wrapper für die ArrayList<ResultsForStudent> ===
345 +
346 +ResultsForStudentsWrapper.java:
347 +
348 +[[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
117 117  {{/layout-cell}}
118 118  {{/layout-section}}
119 119  
120 120  {{layout-section ac:type="two_right_sidebar"}}
121 121  {{layout-cell}}
122 -====== untergeordnete Seiten: ======
354 +
355 +{{/layout-cell}}
123 123  
357 +{{layout-cell}}
358 +====== relevante Links: ======
124 124  
360 +* [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]]
361 +{{/layout-cell}}
362 +{{/layout-section}}
363 +{{/layout}}
125 125  
126 -{{children all="true"/}}
365 +{{layout}}
366 +{{layout-section ac:type="two_equal"}}
367 +{{layout-cell}}
368 +====== Content: ======
369 +
370 +{{toc start="2"/}}
127 127  {{/layout-cell}}
128 128  
129 129  {{layout-cell}}
130 -====== relevante Links: ======
374 +
375 +{{/layout-cell}}
376 +{{/layout-section}}
131 131  
132 -* [[lorem ipsum>>url:https://www.bps-system.de/help/display/OPAL/Handbuch+OPAL||shape="rect"]]
378 +{{layout-section ac:type="single"}}
379 +{{layout-cell}}
380 +== General information ==
381 +
382 +The API to the ONYX WebReporter enables the communication between the LMS and the Reporter. Therefore, a couple of commands will be executed:
383 +
384 +|(((
385 +armSite
386 +)))|(((
387 +Registration of sequence requests at the ONYX Reporter
388 +)))
389 +|(((
390 +initiateSite
391 +)))|(((
392 +Initiates the Reporter session (transmission of the CP).
393 +)))
394 +|(((
395 +disarmSite
396 +)))|(((
397 +Release of all Reporter resources for this session.
398 +)))
399 +|(((
400 +getResultValues
401 +)))|(((
402 +Returns all (requested) results for the test. Condition: There is only one student in the list transmitted with initiateSite.
403 +)))
404 +|(% colspan="1" %)(% colspan="1" %)
405 +(((
406 +getResultVariables
407 +)))|(% colspan="1" %)(% colspan="1" %)
408 +(((
409 +Returns all (requested) outcome variables for the test. No armSite, initiateSite, or disarmSite is required.
410 +)))
411 +
412 +== Login through the LMS ==
413 +
414 +{{code language="xml" title="Login through the LMS"}}
415 +@WebMethod(operationName = „armSite")
416 +public String armSite(
417 +@WebParam(name = „version") final Integer version,
418 +@WebParam(name = „userId") final String userId,
419 +@WebParam(name = „optionalRole") final Integer role,
420 +@WebParam(name = „secretToShare") final String secretToShare,
421 +@WebParam(name = „optionalUserLastName") final String userLastName,
422 +@WebParam(name = „optionalUserFirstName") final String userFirstName,
423 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
424 +}
425 +{{/code}}
426 +
427 +=== Parameter armSite ===
428 +
429 +|(((
430 +version
431 +)))|(((
432 +Requested version: 1
433 +)))
434 +|(((
435 +userId
436 +)))|(((
437 +UserId of the requested Reporter user
438 +)))
439 +|(((
440 +optionalRole
441 +)))|(((
442 +Optional. User role. 0 = student, 1 = tutor
443 +)))
444 +|(((
445 +secretToShare
446 +)))|(((
447 +A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication.
448 +)))
449 +|(((
450 +optionalUserLastName
451 +)))|(((
452 +Optional. Last name of the user.
453 +)))
454 +|(% colspan="1" %)(% colspan="1" %)
455 +(((
456 +optionalUserFirstName
457 +)))|(% colspan="1" %)(% colspan="1" %)
458 +(((
459 +Optional. First name of the user.
460 +)))
461 +|(% colspan="1" %)(% colspan="1" %)
462 +(((
463 +additionalParams
464 +)))|(% colspan="1" %)(% colspan="1" %)
465 +(((
466 +Reserved for future use.
467 +)))
468 +
469 +=== ReturnValue armSite ===
470 +
471 +|(((
472 +String
473 +)))|(((
474 +Session ID which has to be used to mark any other Reporter call.
475 +)))
476 +
477 +== Initialisation through LMS ==
478 +
479 +{{code language="xml" title="Initialisation through LMS"}}
480 +@WebMethod(operationName = „initiateSite")
481 +public String initiateSite(
482 +@WebParam(name = „version") final Integer version,
483 +@WebParam(name = „sessionId") final String sessionId,
484 +@WebParam(name = „secretToShare") final String secretToShare,
485 +@WebParam(name = „students") final ArrayList<ResultsForStudent> students,
486 +@WebParam(name = „optionalContentPackage") final byte[] contentPackage,
487 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
488 +}
489 +{{/code}}
490 +
491 +=== Parameter initiateSite ===
492 +
493 +|(((
494 +version
495 +)))|(((
496 +Requested version: 1
497 +)))
498 +|(% colspan="1" %)(% colspan="1" %)
499 +(((
500 +sessionId
501 +)))|(% colspan="1" %)(% colspan="1" %)
502 +(((
503 +SessionId, as returned by armSite.
504 +)))
505 +|(((
506 +secretToShare
507 +)))|(((
508 +A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication.
509 +)))
510 +|(((
511 +students
512 +)))|(((
513 +List of students and their results. See below.
514 +)))
515 +|(((
516 +optionalContentPackage
517 +)))|(((
518 +Optional. Content package (zipped) as byte array.
519 +)))
520 +|(((
521 +additionalParams
522 +)))|(((
523 +Reserved for future use.
524 +)))
525 +
526 +=== ReturnValue initiateSite ===
527 +
528 +|(((
529 +String
530 +)))|(((
531 +Absolute URL of the Reporter site for the IFrame. The URL has to be amended by the LMS with the following URL parameters:
532 +
533 +* sid: Session ID, as returned by armSite
534 +* (((
535 +uid: Student ID, as registrated in the initiateSite at the ONYX Reporter
536 +)))
537 +)))
538 +
539 +{{code language="xml"}}
540 +public class ResultsForStudent {
541 +   private String studentId = „";
542 +   private String firstname = „";
543 +   private String lastname = „";
544 +   private String groupname = „";
545 +   private String tutorname = „";
546 +   private File contentFile = null;
547 +   private byte[] resultsFile = null;
548 +}
549 +{{/code}}
550 +
551 +== Logout through the LMS ==
552 +
553 +
554 +{{code}}
555 +@WebMethod(operationName = „disarmSite")
556 +public Boolean disarmSite(
557 +@WebParam(name = „version") final Integer version,
558 +@WebParam(name = „sessionId") final String sessionId,
559 +@WebParam(name = „secretToShare") final String secretToShare,
560 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
561 +}
562 +{{/code}}
563 +
564 +
565 +=== Parameter disarmSite ===
566 +
567 +|(((
568 +version
569 +)))|(((
570 +Requested version: 1
571 +)))
572 +|(% colspan="1" %)(% colspan="1" %)
573 +(((
574 +sessionId
575 +)))|(% colspan="1" %)(% colspan="1" %)
576 +(((
577 +SessionId, as returned by armSite.
578 +)))
579 +|(((
580 +secretToShare
581 +)))|(((
582 +A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication.
583 +)))
584 +|(((
585 +additionalParams
586 +)))|(((
587 +Reserved for future use.
588 +)))
589 +
590 +=== ReturnValue disarmSite ===
591 +
592 +|(((
593 +Boolean
594 +)))|(((
595 +True in the case of success, otherwise false.
596 +)))
597 +
598 +== Request of learner results through the LMS ==
599 +
600 +{{code language="xml" title="Request of learner results through the LMS"}}
601 + @WebMethod(operationName = „getResultValues")
602 +public HashMapWrapper getResultValues(
603 + @WebParam(name = „version") final Integer version,
604 + @WebParam(name = „sessionId") final String sessionId,
605 + @WebParam(name = „secretToShare") final String secretToShare,
606 + @WebParam(name = „requestedValues") final HashMap<String, String>
607 + requestedValues,
608 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
609 +}
610 +{{/code}}
611 +
612 +=== Parameter getResultValues ===
613 +
614 +|(((
615 +version
616 +)))|(((
617 +Requested version: 1
618 +)))
619 +|(% colspan="1" %)(% colspan="1" %)
620 +(((
621 +sessionId
622 +)))|(% colspan="1" %)(% colspan="1" %)
623 +(((
624 +SessionId, as returned by armSite.
625 +)))
626 +|(((
627 +secretToShare
628 +)))|(((
629 +A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication.
630 +)))
631 +|(((
632 +requestedValues
633 +)))|(((
634 +Can be empty, in which case all result variables are returned. If keys are included, only the keys will be returned.
635 +)))
636 +|(((
637 +additionalParams
638 +)))|(((
639 +Reserved for future use.
640 +)))
641 +
642 +=== ReturnValue getResultValues ===
643 +
644 +|(((
645 +HashMap<String, String>
646 +)))|(((
647 +Map of result variables, key is the variable name, value is the respective variable's value (HashMap is wrapped)
648 +)))
649 +
650 +== Request of result variables through the LMS ==
651 +
652 +{{code language="xml" title="Request of result variables through the LMS"}}
653 + @WebMethod(operationName = „getResultVariables")
654 +public HashMapWrapper getResultVariables(
655 +@WebParam(name = „version") final Integer version,
656 +@WebParam(name = „contentPackage") final byte[] contentPackage,
657 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
658 +}
659 +{{/code}}
660 +
661 +=== Parameter getResultVariables ===
662 +
663 +|(((
664 +version
665 +)))|(((
666 +Requested version: 1
667 +)))
668 +|(((
669 +contentPackage
670 +)))|(((
671 +Content package (zipped) as byte array.
672 +)))
673 +|(((
674 +additionalParams
675 +)))|(((
676 +Reserved for future use.
677 +)))
678 +
679 +=== ReturnValue getResultVariables ===
680 +
681 +|(((
682 +HashMap<String, String>
683 +)))|(((
684 +Map of result variables, key is the variable name, value is the respective variable's value (HashMap is wrapped)
685 +)))
686 +
687 +== Wrapper ==
688 +
689 +Since the transmission of maps and lists via JAX-WS can cause problems, they have to be wrapped.
690 +
691 +=== Wrapper for HashMap<String, String> ===
692 +
693 +HashMapWrapper.java:
694 +
695 +[[image:attach:HashMapWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
696 +
697 +[[image:attach:HashMapWrapperjava2.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
698 +
699 +=== Wrapper for the ArrayList<ResultsForStudent> ===
700 +
701 +ResultsForStudentsWrapper.java:
702 +
703 +[[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
133 133  {{/layout-cell}}
134 134  {{/layout-section}}
135 135  {{/layout}}
HashMapWrapperjava.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.XWikiGuest
Größe
... ... @@ -1,0 +1,1 @@
1 +135.3 KB
Inhalt
HashMapWrapperjava2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.XWikiGuest
Größe
... ... @@ -1,0 +1,1 @@
1 +187.3 KB
Inhalt
ResultsForStudentsWrapperjava.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.XWikiGuest
Größe
... ... @@ -1,0 +1,1 @@
1 +83.3 KB
Inhalt
Confluence.Code.ConfluencePageClass[0]
id
... ... @@ -1,1 +1,1 @@
1 -3342392
1 +3342390
url
... ... @@ -1,1 +1,1 @@
1 -https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/3342392/Schnittstelle ONYX Reporter
1 +https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/3342390/Schnittstelle ONYX Reporter