Änderungen von Dokument 08 Schnittstelle ONYX Reporter

Zuletzt geändert von Carina Enke am 13.02.2024

Von Version 378.1
bearbeitet von sandra_riediger
am 15.12.2014
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 398.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.sandra_riediger
1 +XWiki.carina
Inhalt
... ... @@ -1,39 +2,17 @@
1 -{{sv-translation language="de"}}
2 2  {{layout}}
3 3  {{layout-section ac:type="two_right_sidebar"}}
4 4  {{layout-cell}}
5 -====== Inhalt: ======
6 -
7 -
8 -
9 -{{toc maxLevel="5" style="square" outline="true" absoluteUrl="true"/}}
4 +
10 10  {{/layout-cell}}
11 11  
12 12  {{layout-cell}}
13 -|=(% colspan="1" %)(% colspan="1" %)
14 -(((
15 -Programmversion
16 -)))|(% colspan="1" %)(% colspan="1" %)
17 -(((
18 -
19 -)))
20 -|=(((
21 -Status
22 -)))|(((
23 -(% class="status-macro aui-lozenge aui-lozenge-error" %)ENTWURF
24 -)))
25 -|=(((
26 -Aufgaben
27 -)))|(((
28 -
8 +{{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}}
9 +{{toc start="2"/}}
29 29  
30 -
31 -)))
32 -|=(((
33 -JIRA
34 -)))|(((
35 -
36 -)))
11 + **Weitere Informationen:**
12 +
13 +* [[Schnittstelle ONYX Player>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]]
14 +{{/panel}}
37 37  {{/layout-cell}}
38 38  {{/layout-section}}
39 39  
... ... @@ -43,6 +43,7 @@
43 43  
44 44  Über die Schnittstelle zum ONYX WebReporter erfolgt jede Kommunikation zwischen dem LMS und dem Reporter. Dazu erfolgt eine Reihe von Aufrufen:
45 45  
24 +(% class="wrapped" %)
46 46  |(((
47 47  armSite
48 48  )))|(((
... ... @@ -73,7 +73,7 @@
73 73  
74 74  == Anmeldung des LMS ==
75 75  
76 -{{code title="Anmeldung des LMS" language="xml"}}
55 +{{code language="xml" title="Anmeldung des LMS"}}
77 77  @WebMethod(operationName = „armSite")
78 78  public String armSite(
79 79  @WebParam(name = „version") final Integer version,
... ... @@ -88,6 +88,7 @@
88 88  
89 89  === Parameter armSite ===
90 90  
70 +(% class="wrapped" %)
91 91  |(((
92 92  version
93 93  )))|(((
... ... @@ -130,6 +130,7 @@
130 130  
131 131  === ReturnValue armSite ===
132 132  
113 +(% class="wrapped" %)
133 133  |(((
134 134  String
135 135  )))|(((
... ... @@ -138,7 +138,7 @@
138 138  
139 139  == Initialisierung durch LMS ==
140 140  
141 -{{code title="Initialisierung durch LMS" language="xml"}}
122 +{{code language="xml" title="Initialisierung durch LMS"}}
142 142  @WebMethod(operationName = „initiateSite")
143 143  public String initiateSite(
144 144  @WebParam(name = „version") final Integer version,
... ... @@ -152,6 +152,7 @@
152 152  
153 153  === Parameter initiateSite ===
154 154  
136 +(% class="wrapped" %)
155 155  |(((
156 156  version
157 157  )))|(((
... ... @@ -187,6 +187,7 @@
187 187  
188 188  === ReturnValue initiateSite ===
189 189  
172 +(% class="wrapped" %)
190 190  |(((
191 191  String
192 192  )))|(((
... ... @@ -210,7 +210,6 @@
210 210  
211 211  == Abmeldung durch LMS ==
212 212  
213 -
214 214  
215 215  {{code}}
216 216  @WebMethod(operationName = „disarmSite")
... ... @@ -222,10 +222,10 @@
222 222  }
223 223  {{/code}}
224 224  
225 -
226 226  
227 227  === Parameter disarmSite ===
228 228  
210 +(% class="wrapped" %)
229 229  |(((
230 230  version
231 231  )))|(((
... ... @@ -251,6 +251,7 @@
251 251  
252 252  === ReturnValue disarmSite ===
253 253  
236 +(% class="wrapped" %)
254 254  |(((
255 255  Boolean
256 256  )))|(((
... ... @@ -259,7 +259,7 @@
259 259  
260 260  == Abfrage von Lernerresultaten durch LMS ==
261 261  
262 -{{code title="Abfrage von Lernerresultaten durch LMS" language="xml"}}
245 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}}
263 263   @WebMethod(operationName = „getResultValues")
264 264  public HashMapWrapper getResultValues(
265 265   @WebParam(name = „version") final Integer version,
... ... @@ -273,6 +273,7 @@
273 273  
274 274  === Parameter getResultValues ===
275 275  
259 +(% class="wrapped" %)
276 276  |(((
277 277  version
278 278  )))|(((
... ... @@ -303,6 +303,7 @@
303 303  
304 304  === ReturnValue getResultValues ===
305 305  
290 +(% class="wrapped" %)
306 306  |(((
307 307  HashMap<String, String>
308 308  )))|(((
... ... @@ -311,7 +311,7 @@
311 311  
312 312  == Abfrage von Ergebnisvariablen durch LMS ==
313 313  
314 -{{code title="Abfrage von Ergebnisvariablen durch LMS" language="xml"}}
299 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}}
315 315   @WebMethod(operationName = „getResultVariables")
316 316  public HashMapWrapper getResultVariables(
317 317  @WebParam(name = „version") final Integer version,
... ... @@ -322,6 +322,7 @@
322 322  
323 323  === Parameter getResultVariables ===
324 324  
310 +(% class="wrapped" %)
325 325  |(((
326 326  version
327 327  )))|(((
... ... @@ -340,6 +340,7 @@
340 340  
341 341  === ReturnValue getResultVariables ===
342 342  
329 +(% class="wrapped" %)
343 343  |(((
344 344  HashMap<String, String>
345 345  )))|(((
... ... @@ -348,21 +348,21 @@
348 348  
349 349  == Wrapper ==
350 350  
351 -Da die Übertragung von Maps und Listen über JAX-WS Probleme macht (clientseitig gefüllte Listen werden leer über den WS versandt und kommen daher auch leer serverseitig an), müssen diese gewrappt werden.
338 +Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden.
352 352  
353 353  === Wrapper für die HashMap<String, String> ===
354 354  
355 355  HashMapWrapper.java:
356 356  
357 -[[image:attach:HashMapWrapperjava.png]]
344 +[[image:attach:HashMapWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
358 358  
359 -[[image:attach:HashMapWrapperjava2.png]]
346 +[[image:attach:HashMapWrapperjava2.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
360 360  
361 361  === Wrapper für die ArrayList<ResultsForStudent> ===
362 362  
363 363  ResultsForStudentsWrapper.java:
364 364  
365 -[[image:attach:ResultsForStudentsWrapperjava.png]]
352 +[[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
366 366  {{/layout-cell}}
367 367  {{/layout-section}}
368 368  
... ... @@ -374,380 +374,7 @@
374 374  {{layout-cell}}
375 375  ====== relevante Links: ======
376 376  
377 -* [[doc:Schnittstelle ONYX WebPlayer]]
364 +* [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]]
378 378  {{/layout-cell}}
379 379  {{/layout-section}}
380 380  {{/layout}}
381 -{{/sv-translation}}
382 -
383 -{{sv-translation language="en"}}
384 -{{layout}}
385 -{{layout-section ac:type="two_equal"}}
386 -{{layout-cell}}
387 -====== Content: ======
388 -
389 -
390 -
391 -{{toc style="square" maxLevel="5" outline="true" absoluteUrl="true"/}}
392 -{{/layout-cell}}
393 -
394 -{{layout-cell}}
395 -|=(% colspan="1" %)(% colspan="1" %)
396 -(((
397 -Programmversion
398 -)))|(% colspan="1" %)(% colspan="1" %)
399 -(((
400 -
401 -)))
402 -|=(((
403 -Status
404 -)))|(((
405 -(% class="status-macro aui-lozenge aui-lozenge-error" %)DRAFT
406 -)))
407 -|=(((
408 -Aufgaben
409 -)))|(((
410 -
411 -
412 -
413 -)))
414 -|=(((
415 -JIRA
416 -)))|(((
417 -
418 -)))
419 -{{/layout-cell}}
420 -{{/layout-section}}
421 -
422 -{{layout-section ac:type="single"}}
423 -{{layout-cell}}
424 -
425 -
426 -== Allgemeines ==
427 -
428 -Über die Schnittstelle zum ONYX WebReporter erfolgt jede Kommunikation zwischen dem LMS und dem Reporter. Dazu erfolgt eine Reihe von Aufrufen:
429 -
430 -|(((
431 -armSite
432 -)))|(((
433 -Anmeldung von Folgerequests beim ONYX Reporter.
434 -)))
435 -|(((
436 -initiateSite
437 -)))|(((
438 -Initiiert die Reporter-Session (Übertragung des CPs).
439 -)))
440 -|(((
441 -disarmSite
442 -)))|(((
443 -Freigabe von allen Reporter-Ressourcen für diese Session.
444 -)))
445 -|(((
446 -getResultValues
447 -)))|(((
448 -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.
449 -)))
450 -|(% colspan="1" %)(% colspan="1" %)
451 -(((
452 -getResultVariables
453 -)))|(% colspan="1" %)(% colspan="1" %)
454 -(((
455 -Gibt alle bzw. die angeforderten Outcome-Variablen für den Test zurück. Hierfür sind kein armSite, initiateSite oder disarmSite erforderlich.
456 -)))
457 -
458 -== Anmeldung des LMS ==
459 -
460 -{{code title="Anmeldung des LMS" language="xml"}}
461 -@WebMethod(operationName = „armSite")
462 -public String armSite(
463 -@WebParam(name = „version") final Integer version,
464 -@WebParam(name = „userId") final String userId,
465 -@WebParam(name = „optionalRole") final Integer role,
466 -@WebParam(name = „secretToShare") final String secretToShare,
467 -@WebParam(name = „optionalUserLastName") final String userLastName,
468 -@WebParam(name = „optionalUserFirstName") final String userFirstName,
469 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
470 -}
471 -{{/code}}
472 -
473 -=== Parameter armSite ===
474 -
475 -|(((
476 -version
477 -)))|(((
478 -Angefragte Version: 1
479 -)))
480 -|(((
481 -userId
482 -)))|(((
483 -UserId des anfragenden Reporter-Benutzers
484 -)))
485 -|(((
486 -optionalRole
487 -)))|(((
488 -Optional. Rolle des Benutzers. 0 = Student, 1= Tutor
489 -)))
490 -|(((
491 -secretToShare
492 -)))|(((
493 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
494 -)))
495 -|(((
496 -optionalUserLastName
497 -)))|(((
498 -Optional. Nachname des Benutzers.
499 -)))
500 -|(% colspan="1" %)(% colspan="1" %)
501 -(((
502 -optionalUserFirstName
503 -)))|(% colspan="1" %)(% colspan="1" %)
504 -(((
505 -Optional. Vorname des Benutzers.
506 -)))
507 -|(% colspan="1" %)(% colspan="1" %)
508 -(((
509 -additionalParams
510 -)))|(% colspan="1" %)(% colspan="1" %)
511 -(((
512 -Reserved for future use.
513 -)))
514 -
515 -=== ReturnValue armSite ===
516 -
517 -|(((
518 -String
519 -)))|(((
520 -Session ID, mit der alle weiteren Reporter-Aufrufe gekennzeichnet werden müssen.
521 -)))
522 -
523 -== Initialisierung durch LMS ==
524 -
525 -{{code title="Initialisierung durch LMS" language="xml"}}
526 -@WebMethod(operationName = „initiateSite")
527 -public String initiateSite(
528 -@WebParam(name = „version") final Integer version,
529 -@WebParam(name = „sessionId") final String sessionId,
530 -@WebParam(name = „secretToShare") final String secretToShare,
531 -@WebParam(name = „students") final ArrayList<ResultsForStudent> students,
532 -@WebParam(name = „optionalContentPackage") final byte[] contentPackage,
533 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
534 -}
535 -{{/code}}
536 -
537 -=== Parameter initiateSite ===
538 -
539 -|(((
540 -version
541 -)))|(((
542 -Angefragte Version: 1
543 -)))
544 -|(% colspan="1" %)(% colspan="1" %)
545 -(((
546 -sessionId
547 -)))|(% colspan="1" %)(% colspan="1" %)
548 -(((
549 -SessionId, wie von armSite zurück geliefert.
550 -)))
551 -|(((
552 -secretToShare
553 -)))|(((
554 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
555 -)))
556 -|(((
557 -students
558 -)))|(((
559 -Liste der Studenten mit ihren Resultaten. Siehe unten.
560 -)))
561 -|(((
562 -optionalContentPackage
563 -)))|(((
564 -Optional. Content Package (gezippt) als Byte-Array.
565 -)))
566 -|(((
567 -additionalParams
568 -)))|(((
569 -Reserved for future use.
570 -)))
571 -
572 -=== ReturnValue initiateSite ===
573 -
574 -|(((
575 -String
576 -)))|(((
577 -Absolute URL der Reporter-Seite für den IFrame. Dieser ist vom LMS durch die folgenden URL-Parameter anzureichern:
578 -
579 -* sid: Session ID, wie von armSite zurück gegeben
580 -* uid: Student ID, wie in initiateSite beim Reporter angemeldet
581 -)))
582 -
583 -{{code language="xml"}}
584 -public class ResultsForStudent {
585 -   private String studentId = „";
586 -   private String firstname = „";
587 -   private String lastname = „";
588 -   private String groupname = „";
589 -   private String tutorname = „";
590 -   private File contentFile = null;
591 -   private byte[] resultsFile = null;
592 -}
593 -{{/code}}
594 -
595 -== Abmeldung durch LMS ==
596 -
597 -
598 -
599 -{{code}}
600 -@WebMethod(operationName = „disarmSite")
601 -public Boolean disarmSite(
602 -@WebParam(name = „version") final Integer version,
603 -@WebParam(name = „sessionId") final String sessionId,
604 -@WebParam(name = „secretToShare") final String secretToShare,
605 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
606 -}
607 -{{/code}}
608 -
609 -
610 -
611 -=== Parameter disarmSite ===
612 -
613 -|(((
614 -version
615 -)))|(((
616 -Angefragte Version: 1
617 -)))
618 -|(% colspan="1" %)(% colspan="1" %)
619 -(((
620 -sessionId
621 -)))|(% colspan="1" %)(% colspan="1" %)
622 -(((
623 -SessionId, wie von armSite zurück geliefert.
624 -)))
625 -|(((
626 -secretToShare
627 -)))|(((
628 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
629 -)))
630 -|(((
631 -additionalParams
632 -)))|(((
633 -Reserved for future use.
634 -)))
635 -
636 -=== ReturnValue disarmSite ===
637 -
638 -|(((
639 -Boolean
640 -)))|(((
641 -True bei Erfolg, sonst false.
642 -)))
643 -
644 -== Abfrage von Lernerresultaten durch LMS ==
645 -
646 -{{code title="Abfrage von Lernerresultaten durch LMS" language="xml"}}
647 - @WebMethod(operationName = „getResultValues")
648 -public HashMapWrapper getResultValues(
649 - @WebParam(name = „version") final Integer version,
650 - @WebParam(name = „sessionId") final String sessionId,
651 - @WebParam(name = „secretToShare") final String secretToShare,
652 - @WebParam(name = „requestedValues") final HashMap<String, String>
653 - requestedValues,
654 - @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
655 -}
656 -{{/code}}
657 -
658 -=== Parameter getResultValues ===
659 -
660 -|(((
661 -version
662 -)))|(((
663 -Angefragte Version: 1
664 -)))
665 -|(% colspan="1" %)(% colspan="1" %)
666 -(((
667 -sessionId
668 -)))|(% colspan="1" %)(% colspan="1" %)
669 -(((
670 -SessionId, wie von armSite zurück geliefert.
671 -)))
672 -|(((
673 -secretToShare
674 -)))|(((
675 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
676 -)))
677 -|(((
678 -requestedValues
679 -)))|(((
680 -Kann leer sein, dann werden alle Result-Variables zurück geliefert. Sind Keys enthalten, so kommen nur diese zurück.
681 -)))
682 -|(((
683 -additionalParams
684 -)))|(((
685 -Reserved for future use.
686 -)))
687 -
688 -=== ReturnValue getResultValues ===
689 -
690 -|(((
691 -HashMap<String, String>
692 -)))|(((
693 -Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
694 -)))
695 -
696 -== Abfrage von Ergebnisvariablen durch LMS ==
697 -
698 -{{code title="Abfrage von Ergebnisvariablen durch LMS" language="xml"}}
699 - @WebMethod(operationName = „getResultVariables")
700 -public HashMapWrapper getResultVariables(
701 -@WebParam(name = „version") final Integer version,
702 -@WebParam(name = „contentPackage") final byte[] contentPackage,
703 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
704 -}
705 -{{/code}}
706 -
707 -=== Parameter getResultVariables ===
708 -
709 -|(((
710 -version
711 -)))|(((
712 -Angefragte Version: 1
713 -)))
714 -|(((
715 -contentPackage
716 -)))|(((
717 -Content Package (gezippt) als Byte-Array.
718 -)))
719 -|(((
720 -additionalParams
721 -)))|(((
722 -Reserved for future use.
723 -)))
724 -
725 -=== ReturnValue getResultVariables ===
726 -
727 -|(((
728 -HashMap<String, String>
729 -)))|(((
730 -Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
731 -)))
732 -
733 -== Wrapper ==
734 -
735 -Da die Übertragung von Maps und Listen über JAX-WS Probleme macht (clientseitig gefüllte Listen werden leer über den WS versandt und kommen daher auch leer serverseitig an), müssen diese gewrappt werden.
736 -
737 -=== Wrapper für die HashMap<String, String> ===
738 -
739 -HashMapWrapper.java:
740 -
741 -[[image:attach:HashMapWrapperjava.png]]
742 -
743 -[[image:attach:HashMapWrapperjava2.png]]
744 -
745 -=== Wrapper für die ArrayList<ResultsForStudent> ===
746 -
747 -ResultsForStudentsWrapper.java:
748 -
749 -[[image:attach:ResultsForStudentsWrapperjava.png]]
750 -{{/layout-cell}}
751 -{{/layout-section}}
752 -{{/layout}}
753 -{{/sv-translation}}
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 -3342793
1 +3342390
url
... ... @@ -1,1 +1,1 @@
1 -https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/3342793/Schnittstelle ONYX Reporter
1 +https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/3342390/Schnittstelle ONYX Reporter