Änderungen von Dokument 08 Schnittstelle ONYX Reporter

Zuletzt geändert von Carina Enke am 13.02.2024

Von Version 383.1
bearbeitet von sandra_riediger
am 15.12.2014
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 387.1
bearbeitet von tleu
am 01.12.2014
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.sandra_riediger
1 +XWiki.tleu
Inhalt
... ... @@ -1,4 +2,3 @@
1 -{{sv-translation language="de"}}
2 2  {{layout}}
3 3  {{layout-section ac:type="two_right_sidebar"}}
4 4  {{layout-cell}}
... ... @@ -6,7 +6,7 @@
6 6  
7 7  
8 8  
9 -{{toc maxLevel="5" style="square" outline="true" absoluteUrl="true"/}}
8 +{{toc style="square" maxLevel="5" outline="true" absoluteUrl="true"/}}
10 10  {{/layout-cell}}
11 11  
12 12  {{layout-cell}}
... ... @@ -61,7 +61,9 @@
61 61  |(((
62 62  getResultValues
63 63  )))|(((
64 -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.
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.
65 65  )))
66 66  |(% colspan="1" %)(% colspan="1" %)
67 67  (((
... ... @@ -210,22 +210,10 @@
210 210  
211 211  == Abmeldung durch LMS ==
212 212  
213 -
214 +Abfrage von Lernerresultaten durch LMS
214 214  
215 -{{code}}
216 -@WebMethod(operationName = „disarmSite")
217 -public Boolean disarmSite(
218 -@WebParam(name = „version") final Integer version,
219 -@WebParam(name = „sessionId") final String sessionId,
220 -@WebParam(name = „secretToShare") final String secretToShare,
221 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
222 -}
223 -{{/code}}
224 -
225 225  
226 226  
227 -=== Parameter disarmSite ===
228 -
229 229  |(((
230 230  version
231 231  )))|(((
... ... @@ -260,19 +260,9 @@
260 260  == Abfrage von Lernerresultaten durch LMS ==
261 261  
262 262  {{code title="Abfrage von Lernerresultaten durch LMS" language="xml"}}
263 - @WebMethod(operationName = „getResultValues")
264 -public HashMapWrapper getResultValues(
265 - @WebParam(name = „version") final Integer version,
266 - @WebParam(name = „sessionId") final String sessionId,
267 - @WebParam(name = „secretToShare") final String secretToShare,
268 - @WebParam(name = „requestedValues") final HashMap<String, String>
269 - requestedValues,
270 - @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
271 -}
252
272 272  {{/code}}
273 273  
274 -=== Parameter getResultValues ===
275 -
276 276  |(((
277 277  version
278 278  )))|(((
... ... @@ -291,466 +291,36 @@
291 291  Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
292 292  )))
293 293  |(((
294 -requestedValues
273 +students
295 295  )))|(((
296 -Kann leer sein, dann werden alle Result-Variables zurück geliefert. Sind Keys enthalten, so kommen nur diese zurück.
275 +Liste der Studenten mit ihren Resultaten. Siehe unten.
297 297  )))
298 298  |(((
299 -additionalParams
278 +optionalContentPackage
300 300  )))|(((
301 -Reserved for future use.
280 +Optional. Content Package (gezippt) als Byte-Array.
302 302  )))
303 -
304 -=== ReturnValue getResultValues ===
305 -
306 306  |(((
307 -HashMap<String, String>
308 -)))|(((
309 -Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
310 -)))
311 -
312 -== Abfrage von Ergebnisvariablen durch LMS ==
313 -
314 -{{code title="Abfrage von Ergebnisvariablen durch LMS" language="xml"}}
315 - @WebMethod(operationName = „getResultVariables")
316 -public HashMapWrapper getResultVariables(
317 -@WebParam(name = „version") final Integer version,
318 -@WebParam(name = „contentPackage") final byte[] contentPackage,
319 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
320 -}
321 -{{/code}}
322 -
323 -=== Parameter getResultVariables ===
324 -
325 -|(((
326 -version
327 -)))|(((
328 -Angefragte Version: 1
329 -)))
330 -|(((
331 -contentPackage
332 -)))|(((
333 -Content Package (gezippt) als Byte-Array.
334 -)))
335 -|(((
336 336  additionalParams
337 337  )))|(((
338 338  Reserved for future use.
339 339  )))
340 -
341 -=== ReturnValue getResultVariables ===
342 -
343 -|(((
344 -HashMap<String, String>
345 -)))|(((
346 -Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
347 -)))
348 -
349 -== Wrapper ==
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.
352 -
353 -=== Wrapper für die HashMap<String, String> ===
354 -
355 -HashMapWrapper.java:
356 -
357 -[[image:attach:HashMapWrapperjava.png]]
358 -
359 -[[image:attach:HashMapWrapperjava2.png]]
360 -
361 -=== Wrapper für die ArrayList<ResultsForStudent> ===
362 -
363 -ResultsForStudentsWrapper.java:
364 -
365 -[[image:attach:ResultsForStudentsWrapperjava.png]]
366 366  {{/layout-cell}}
367 367  {{/layout-section}}
368 368  
369 369  {{layout-section ac:type="two_right_sidebar"}}
370 370  {{layout-cell}}
371 -
372 -{{/layout-cell}}
292 +====== untergeordnete Seiten: ======
373 373  
374 -{{layout-cell}}
375 -====== relevante Links: ======
376 376  
377 -* [[doc:Schnittstelle ONYX WebPlayer]]
378 -{{/layout-cell}}
379 -{{/layout-section}}
380 -{{/layout}}
381 -{{/sv-translation}}
382 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"/}}
296 +{{children all="true"/}}
392 392  {{/layout-cell}}
393 393  
394 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" %)DONE
406 -)))
407 -|=(((
408 -Aufgaben
409 -)))|(((
410 -
300 +====== relevante Links: ======
411 411  
412 -
413 -)))
414 -|=(((
415 -JIRA
416 -)))|(((
417 -
418 -)))
302 +* [[lorem ipsum>>url:https://www.bps-system.de/help/display/OPAL/Handbuch+OPAL||shape="rect"]]
419 419  {{/layout-cell}}
420 420  {{/layout-section}}
421 -
422 -{{layout-section ac:type="single"}}
423 -{{layout-cell}}
424 -
425 -
426 -== General ==
427 -
428 -The API to the ONYX WebReporter enables the communication between the LMS and the reporter. Therefore, a couple of commands will be executed:
429 -
430 -|(((
431 -armSite
432 -)))|(((
433 -Registration of sequence requests at the ONYX reporter
434 -)))
435 -|(((
436 -initiateSite
437 -)))|(((
438 -Initiates the reporter session (transmission of the CP).
439 -)))
440 -|(((
441 -disarmSite
442 -)))|(((
443 -Release of all reporter resources for this session.
444 -)))
445 -|(((
446 -getResultValues
447 -)))|(((
448 -Returns all or all requested results for the test. Condition: there is exactly one student in list transmitted in the initiateSite.
449 -)))
450 -|(% colspan="1" %)(% colspan="1" %)
451 -(((
452 -getResultVariables
453 -)))|(% colspan="1" %)(% colspan="1" %)
454 -(((
455 -Returns all or all requested outcome variables for the test. No armSite, initiateSite or disarmSite is necessary.
456 -)))
457 -
458 -== Connection to the 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 -Requested version: 1
479 -)))
480 -|(((
481 -userId
482 -)))|(((
483 -UserId of the requested reporter user
484 -)))
485 -|(((
486 -optionalRole
487 -)))|(((
488 -Optional. User role. 0=student, 1=tutor
489 -)))
490 -|(((
491 -secretToShare
492 -)))|(((
493 -Shared secret. Has to remain identical for every communication.
494 -)))
495 -|(((
496 -optionalUserLastName
497 -)))|(((
498 -Optional. User lastname.
499 -)))
500 -|(% colspan="1" %)(% colspan="1" %)
501 -(((
502 -optionalUserFirstName
503 -)))|(% colspan="1" %)(% colspan="1" %)
504 -(((
505 -Optional. User firstname.
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 that has to be used to mark any further reporter call.
521 -)))
522 -
523 -== Initialisation through 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 -Requested version: 1
543 -)))
544 -|(% colspan="1" %)(% colspan="1" %)
545 -(((
546 -sessionId
547 -)))|(% colspan="1" %)(% colspan="1" %)
548 -(((
549 -SessionId, as returned by armSite.
550 -)))
551 -|(((
552 -secretToShare
553 -)))|(((
554 -Shared secret. Has to remain identical at every communication.
555 -)))
556 -|(((
557 -students
558 -)))|(((
559 -List of students with their results. See below.
560 -)))
561 -|(((
562 -optionalContentPackage
563 -)))|(((
564 -Optional. Content Package (zipped) as 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 of the reporter site for the frame. It has to be enriched by the LMS with the following URLparameters:
578 -
579 -* sid: Session ID as returned by armSite
580 -* (((
581 -uid: Student ID as registrated in the initiateSite at the ONYX Reporter.
582 -)))
583 -)))
584 -
585 -{{code language="xml"}}
586 -public class ResultsForStudent {
587 -   private String studentId = „";
588 -   private String firstname = „";
589 -   private String lastname = „";
590 -   private String groupname = „";
591 -   private String tutorname = „";
592 -   private File contentFile = null;
593 -   private byte[] resultsFile = null;
594 -}
595 -{{/code}}
596 -
597 -== Deconnection through the LMS ==
598 -
599 -
600 -
601 -{{code}}
602 -@WebMethod(operationName = „disarmSite")
603 -public Boolean disarmSite(
604 -@WebParam(name = „version") final Integer version,
605 -@WebParam(name = „sessionId") final String sessionId,
606 -@WebParam(name = „secretToShare") final String secretToShare,
607 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
608 -}
609 -{{/code}}
610 -
611 -
612 -
613 -=== Parameter disarmSite ===
614 -
615 -|(((
616 -version
617 -)))|(((
618 -Requested version: 1
619 -)))
620 -|(% colspan="1" %)(% colspan="1" %)
621 -(((
622 -sessionId
623 -)))|(% colspan="1" %)(% colspan="1" %)
624 -(((
625 -SessionId, as returned by armSite.
626 -)))
627 -|(((
628 -secretToShare
629 -)))|(((
630 -Shared secret. Has to remain identical at every communication.
631 -)))
632 -|(((
633 -additionalParams
634 -)))|(((
635 -Reserved for future use.
636 -)))
637 -
638 -=== ReturnValue disarmSite ===
639 -
640 -|(((
641 -Boolean
642 -)))|(((
643 -True if successful, otherwise false.
644 -)))
645 -
646 -== Request of learning results through the LMS ==
647 -
648 -{{code title="Abfrage von Lernerresultaten durch LMS" language="xml"}}
649 - @WebMethod(operationName = „getResultValues")
650 -public HashMapWrapper getResultValues(
651 - @WebParam(name = „version") final Integer version,
652 - @WebParam(name = „sessionId") final String sessionId,
653 - @WebParam(name = „secretToShare") final String secretToShare,
654 - @WebParam(name = „requestedValues") final HashMap<String, String>
655 - requestedValues,
656 - @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
657 -}
658 -{{/code}}
659 -
660 -=== Parameter getResultValues ===
661 -
662 -|(((
663 -version
664 -)))|(((
665 -Requested version: 1
666 -)))
667 -|(% colspan="1" %)(% colspan="1" %)
668 -(((
669 -sessionId
670 -)))|(% colspan="1" %)(% colspan="1" %)
671 -(((
672 -SessionId, as returned by armSite.
673 -)))
674 -|(((
675 -secretToShare
676 -)))|(((
677 -Shared secret. Has to remain identical at every communication.
678 -)))
679 -|(((
680 -requestedValues
681 -)))|(((
682 -Can be empty, thus all result variables will be returned. If it contains keys, only those will be returned.
683 -)))
684 -|(((
685 -additionalParams
686 -)))|(((
687 -Reserved for future use.
688 -)))
689 -
690 -=== ReturnValue getResultValues ===
691 -
692 -|(((
693 -HashMap<String, String>
694 -)))|(((
695 -Map of result variables, key is the variable name, value the corresponding value (HashMap is wrapped)
696 -)))
697 -
698 -== Request of result variables through the LMS ==
699 -
700 -{{code title="Abfrage von Ergebnisvariablen durch LMS" language="xml"}}
701 - @WebMethod(operationName = „getResultVariables")
702 -public HashMapWrapper getResultVariables(
703 -@WebParam(name = „version") final Integer version,
704 -@WebParam(name = „contentPackage") final byte[] contentPackage,
705 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
706 -}
707 -{{/code}}
708 -
709 -=== Parameter getResultVariables ===
710 -
711 -|(((
712 -version
713 -)))|(((
714 -Requested version: 1
715 -)))
716 -|(((
717 -contentPackage
718 -)))|(((
719 -Content package (zipped) as byte array.
720 -)))
721 -|(((
722 -additionalParams
723 -)))|(((
724 -Reserved for future use.
725 -)))
726 -
727 -=== ReturnValue getResultVariables ===
728 -
729 -|(((
730 -HashMap<String, String>
731 -)))|(((
732 -Map of result variables, key is the variable name, value the corresponding
733 -value (HashMap is wrapped).
734 -)))
735 -
736 -== Wrapper ==
737 -
738 -As the transmission of maps and lists generate problems via JAX-WS (lists filled by the customer are sent without any data and thus reach the server without data) they have to be wrapped.
739 -
740 -=== Wrapper for HashMap<String, String> ===
741 -
742 -HashMapWrapper.java:
743 -
744 -[[image:attach:HashMapWrapperjava.png]]
745 -
746 -[[image:attach:HashMapWrapperjava2.png]]
747 -
748 -=== Wrapper for the ArrayList<ResultsForStudent> ===
749 -
750 -ResultsForStudentsWrapper.java:
751 -
752 -[[image:attach:ResultsForStudentsWrapperjava.png]]
753 -{{/layout-cell}}
754 -{{/layout-section}}
755 755  {{/layout}}
756 -{{/sv-translation}}
Confluence.Code.ConfluencePageClass[0]
id
... ... @@ -1,1 +1,1 @@
1 -3342922
1 +3342396
url
... ... @@ -1,1 +1,1 @@
1 -https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/3342922/Schnittstelle ONYX Reporter
1 +https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/3342396/Schnittstelle ONYX Reporter