Änderungen von Dokument 08 Schnittstelle ONYX Reporter
Zuletzt geändert von Carina Enke am 13.02.2024
Von Version 399.1
bearbeitet von Carina Enke
am 13.02.2024
am 13.02.2024
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 401.1
bearbeitet von Carina Enke
am 13.02.2024
am 13.02.2024
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (1 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Inhalt
-
... ... @@ -1,1151 +1149,3 @@ 1 -(% data-xwiki-non-generated-content="java.util.List" %) 2 -((( 3 -" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container"> 4 - 5 -(% data-xwiki-non-generated-content="java.util.List" %) 6 -((( 7 -" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container"> 8 - 9 -(% data-xwiki-non-generated-content="java.util.List" %) 10 -((( 11 -" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container"> 12 -))) 13 - 14 -{{layout-cell}} 15 - 16 -{{/layout-cell}} 17 - 18 -(% data-xwiki-non-generated-content="java.util.List" %) 19 -((( 20 -" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container"> 21 - 22 -(% data-xwiki-non-generated-content="java.util.List" %) 23 -((( 24 -" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container"> 25 - 26 -{{toc start="2"/}} 27 - 28 - **Weitere Informationen:** 29 - 30 -* [[Schnittstelle ONYX Player>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 31 -))) 32 - 33 -{{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}} 34 -{{toc start="2"/}} 35 - 36 - **Weitere Informationen:** 37 - 38 -* [[Schnittstelle ONYX Player>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 39 -{{/panel}} 40 -))) 41 - 42 -{{layout-cell}} 43 -{{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}} 44 -{{toc start="2"/}} 45 - 46 - **Weitere Informationen:** 47 - 48 -* [[Schnittstelle ONYX Player>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 49 -{{/panel}} 50 -{{/layout-cell}} 51 -))) 52 - 53 -{{layout-section ac:type="two_right_sidebar"}} 54 -{{layout-cell}} 55 - 56 -{{/layout-cell}} 57 - 58 -{{layout-cell}} 59 -{{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}} 60 -{{toc start="2"/}} 61 - 62 - **Weitere Informationen:** 63 - 64 -* [[Schnittstelle ONYX Player>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 65 -{{/panel}} 66 -{{/layout-cell}} 67 -{{/layout-section}} 68 - 69 -(% data-xwiki-non-generated-content="java.util.List" %) 70 -((( 71 -" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container"> 72 - 73 -(% data-xwiki-non-generated-content="java.util.List" %) 74 -((( 75 -" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container"> 76 - 77 -== Allgemeines == 78 - 79 -Über die Schnittstelle zum ONYX WebReporter erfolgt jede Kommunikation zwischen dem LMS und dem Reporter. Dazu erfolgt eine Reihe von Aufrufen: 80 - 81 -(% class="wrapped" %) 82 -|((( 83 -armSite 84 -)))|((( 85 -Anmeldung von Folgerequests beim ONYX Reporter. 86 -))) 87 -|((( 88 -initiateSite 89 -)))|((( 90 -Initiiert die Reporter-Session (Übertragung des CPs). 91 -))) 92 -|((( 93 -disarmSite 94 -)))|((( 95 -Freigabe von allen Reporter-Ressourcen für diese Session. 96 -))) 97 -|((( 98 -getResultValues 99 -)))|((( 100 -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. 101 -))) 102 -|(% colspan="1" %)(% colspan="1" %) 103 -((( 104 -getResultVariables 105 -)))|(% colspan="1" %)(% colspan="1" %) 106 -((( 107 -Gibt alle bzw. die angeforderten Outcome-Variablen für den Test zurück. Hierfür sind kein armSite, initiateSite oder disarmSite erforderlich. 108 -))) 109 - 110 -== Anmeldung des LMS == 111 - 112 -(% data-xwiki-non-generated-content="java.util.List" %) 113 -((( 114 -" data-xwiki-parameter-name="title" class="xwiki-metadata-container">Anmeldung des LMS 115 -))) 116 - 117 -{{code language="xml" title="Anmeldung des LMS"}} 118 -@WebMethod(operationName = „armSite") 119 -public String armSite( 120 -@WebParam(name = „version") final Integer version, 121 -@WebParam(name = „userId") final String userId, 122 -@WebParam(name = „optionalRole") final Integer role, 123 -@WebParam(name = „secretToShare") final String secretToShare, 124 -@WebParam(name = „optionalUserLastName") final String userLastName, 125 -@WebParam(name = „optionalUserFirstName") final String userFirstName, 126 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 127 -} 128 -{{/code}} 129 - 130 -=== Parameter armSite === 131 - 132 -(% class="wrapped" %) 133 -|((( 134 -version 135 -)))|((( 136 -Angefragte Version: 1 137 -))) 138 -|((( 139 -userId 140 -)))|((( 141 -UserId des anfragenden Reporter-Benutzers 142 -))) 143 -|((( 144 -optionalRole 145 -)))|((( 146 -Optional. Rolle des Benutzers. 0 = Student, 1= Tutor 147 -))) 148 -|((( 149 -secretToShare 150 -)))|((( 151 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 152 -))) 153 -|((( 154 -optionalUserLastName 155 -)))|((( 156 -Optional. Nachname des Benutzers. 157 -))) 158 -|(% colspan="1" %)(% colspan="1" %) 159 -((( 160 -optionalUserFirstName 161 -)))|(% colspan="1" %)(% colspan="1" %) 162 -((( 163 -Optional. Vorname des Benutzers. 164 -))) 165 -|(% colspan="1" %)(% colspan="1" %) 166 -((( 167 -additionalParams 168 -)))|(% colspan="1" %)(% colspan="1" %) 169 -((( 170 -Reserved for future use. 171 -))) 172 - 173 -=== ReturnValue armSite === 174 - 175 -(% class="wrapped" %) 176 -|((( 177 -String 178 -)))|((( 179 -Session ID, mit der alle weiteren Reporter-Aufrufe gekennzeichnet werden müssen. 180 -))) 181 - 182 -== Initialisierung durch LMS == 183 - 184 -(% data-xwiki-non-generated-content="java.util.List" %) 185 -((( 186 -" data-xwiki-parameter-name="title" class="xwiki-metadata-container">Initialisierung durch LMS 187 -))) 188 - 189 -{{code language="xml" title="Initialisierung durch LMS"}} 190 -@WebMethod(operationName = „initiateSite") 191 -public String initiateSite( 192 -@WebParam(name = „version") final Integer version, 193 -@WebParam(name = „sessionId") final String sessionId, 194 -@WebParam(name = „secretToShare") final String secretToShare, 195 -@WebParam(name = „students") final ArrayList<ResultsForStudent> students, 196 -@WebParam(name = „optionalContentPackage") final byte[] contentPackage, 197 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 198 -} 199 -{{/code}} 200 - 201 -=== Parameter initiateSite === 202 - 203 -(% class="wrapped" %) 204 -|((( 205 -version 206 -)))|((( 207 -Angefragte Version: 1 208 -))) 209 -|(% colspan="1" %)(% colspan="1" %) 210 -((( 211 -sessionId 212 -)))|(% colspan="1" %)(% colspan="1" %) 213 -((( 214 -SessionId, wie von armSite zurück geliefert. 215 -))) 216 -|((( 217 -secretToShare 218 -)))|((( 219 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 220 -))) 221 -|((( 222 -students 223 -)))|((( 224 -Liste der Studenten mit ihren Resultaten. Siehe unten. 225 -))) 226 -|((( 227 -optionalContentPackage 228 -)))|((( 229 -Optional. Content Package (gezippt) als Byte-Array. 230 -))) 231 -|((( 232 -additionalParams 233 -)))|((( 234 -Reserved for future use. 235 -))) 236 - 237 -=== ReturnValue initiateSite === 238 - 239 -(% class="wrapped" %) 240 -|((( 241 -String 242 -)))|((( 243 -Absolute URL der Reporter-Seite für den IFrame. Dieser ist vom LMS durch die folgenden URL-Parameter anzureichern: 244 - 245 -* sid: Session ID, wie von armSite zurück gegeben 246 -* uid: Student ID, wie in initiateSite beim Reporter angemeldet 247 -))) 248 - 249 -{{code language="xml"}} 250 -public class ResultsForStudent { 251 - private String studentId = „"; 252 - private String firstname = „"; 253 - private String lastname = „"; 254 - private String groupname = „"; 255 - private String tutorname = „"; 256 - private File contentFile = null; 257 - private byte[] resultsFile = null; 258 -} 259 -{{/code}} 260 - 261 -== Abmeldung durch LMS == 262 - 263 - 264 -{{code}} 265 -@WebMethod(operationName = „disarmSite") 266 -public Boolean disarmSite( 267 -@WebParam(name = „version") final Integer version, 268 -@WebParam(name = „sessionId") final String sessionId, 269 -@WebParam(name = „secretToShare") final String secretToShare, 270 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 271 -} 272 -{{/code}} 273 - 274 - 275 -=== Parameter disarmSite === 276 - 277 -(% class="wrapped" %) 278 -|((( 279 -version 280 -)))|((( 281 -Angefragte Version: 1 282 -))) 283 -|(% colspan="1" %)(% colspan="1" %) 284 -((( 285 -sessionId 286 -)))|(% colspan="1" %)(% colspan="1" %) 287 -((( 288 -SessionId, wie von armSite zurück geliefert. 289 -))) 290 -|((( 291 -secretToShare 292 -)))|((( 293 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 294 -))) 295 -|((( 296 -additionalParams 297 -)))|((( 298 -Reserved for future use. 299 -))) 300 - 301 -=== ReturnValue disarmSite === 302 - 303 -(% class="wrapped" %) 304 -|((( 305 -Boolean 306 -)))|((( 307 -True bei Erfolg, sonst false. 308 -))) 309 - 310 -== Abfrage von Lernerresultaten durch LMS == 311 - 312 -(% data-xwiki-non-generated-content="java.util.List" %) 313 -((( 314 -" data-xwiki-parameter-name="title" class="xwiki-metadata-container">Abfrage von Lernerresultaten durch LMS 315 -))) 316 - 317 -{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}} 318 - @WebMethod(operationName = „getResultValues") 319 -public HashMapWrapper getResultValues( 320 - @WebParam(name = „version") final Integer version, 321 - @WebParam(name = „sessionId") final String sessionId, 322 - @WebParam(name = „secretToShare") final String secretToShare, 323 - @WebParam(name = „requestedValues") final HashMap<String, String> 324 - requestedValues, 325 - @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 326 -} 327 -{{/code}} 328 - 329 -=== Parameter getResultValues === 330 - 331 -(% class="wrapped" %) 332 -|((( 333 -version 334 -)))|((( 335 -Angefragte Version: 1 336 -))) 337 -|(% colspan="1" %)(% colspan="1" %) 338 -((( 339 -sessionId 340 -)))|(% colspan="1" %)(% colspan="1" %) 341 -((( 342 -SessionId, wie von armSite zurück geliefert. 343 -))) 344 -|((( 345 -secretToShare 346 -)))|((( 347 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 348 -))) 349 -|((( 350 -requestedValues 351 -)))|((( 352 -Kann leer sein, dann werden alle Result-Variables zurück geliefert. Sind Keys enthalten, so kommen nur diese zurück. 353 -))) 354 -|((( 355 -additionalParams 356 -)))|((( 357 -Reserved for future use. 358 -))) 359 - 360 -=== ReturnValue getResultValues === 361 - 362 -(% class="wrapped" %) 363 -|((( 364 -HashMap<String, String> 365 -)))|((( 366 -Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt) 367 -))) 368 - 369 -== Abfrage von Ergebnisvariablen durch LMS == 370 - 371 -(% data-xwiki-non-generated-content="java.util.List" %) 372 -((( 373 -" data-xwiki-parameter-name="title" class="xwiki-metadata-container">Abfrage von Ergebnisvariablen durch LMS 374 -))) 375 - 376 -{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}} 377 - @WebMethod(operationName = „getResultVariables") 378 -public HashMapWrapper getResultVariables( 379 -@WebParam(name = „version") final Integer version, 380 -@WebParam(name = „contentPackage") final byte[] contentPackage, 381 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 382 -} 383 -{{/code}} 384 - 385 -=== Parameter getResultVariables === 386 - 387 -(% class="wrapped" %) 388 -|((( 389 -version 390 -)))|((( 391 -Angefragte Version: 1 392 -))) 393 -|((( 394 -contentPackage 395 -)))|((( 396 -Content Package (gezippt) als Byte-Array. 397 -))) 398 -|((( 399 -additionalParams 400 -)))|((( 401 -Reserved for future use. 402 -))) 403 - 404 -=== ReturnValue getResultVariables === 405 - 406 -(% class="wrapped" %) 407 -|((( 408 -HashMap<String, String> 409 -)))|((( 410 -Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt) 411 -))) 412 - 413 -== Wrapper == 414 - 415 -Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden. 416 - 417 -=== Wrapper für die HashMap<String, String> === 418 - 419 -HashMapWrapper.java: 420 - 421 -[[image:attach:HashMapWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 422 - 423 -[[image:attach:HashMapWrapperjava2.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 424 - 425 -=== Wrapper für die ArrayList<ResultsForStudent> === 426 - 427 -ResultsForStudentsWrapper.java: 428 - 429 -[[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 430 -))) 431 - 432 -{{layout-cell}} 433 -== Allgemeines == 434 - 435 -Über die Schnittstelle zum ONYX WebReporter erfolgt jede Kommunikation zwischen dem LMS und dem Reporter. Dazu erfolgt eine Reihe von Aufrufen: 436 - 437 -(% class="wrapped" %) 438 -|((( 439 -armSite 440 -)))|((( 441 -Anmeldung von Folgerequests beim ONYX Reporter. 442 -))) 443 -|((( 444 -initiateSite 445 -)))|((( 446 -Initiiert die Reporter-Session (Übertragung des CPs). 447 -))) 448 -|((( 449 -disarmSite 450 -)))|((( 451 -Freigabe von allen Reporter-Ressourcen für diese Session. 452 -))) 453 -|((( 454 -getResultValues 455 -)))|((( 456 -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. 457 -))) 458 -|(% colspan="1" %)(% colspan="1" %) 459 -((( 460 -getResultVariables 461 -)))|(% colspan="1" %)(% colspan="1" %) 462 -((( 463 -Gibt alle bzw. die angeforderten Outcome-Variablen für den Test zurück. Hierfür sind kein armSite, initiateSite oder disarmSite erforderlich. 464 -))) 465 - 466 -== Anmeldung des LMS == 467 - 468 -{{code language="xml" title="Anmeldung des LMS"}} 469 -@WebMethod(operationName = „armSite") 470 -public String armSite( 471 -@WebParam(name = „version") final Integer version, 472 -@WebParam(name = „userId") final String userId, 473 -@WebParam(name = „optionalRole") final Integer role, 474 -@WebParam(name = „secretToShare") final String secretToShare, 475 -@WebParam(name = „optionalUserLastName") final String userLastName, 476 -@WebParam(name = „optionalUserFirstName") final String userFirstName, 477 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 478 -} 479 -{{/code}} 480 - 481 -=== Parameter armSite === 482 - 483 -(% class="wrapped" %) 484 -|((( 485 -version 486 -)))|((( 487 -Angefragte Version: 1 488 -))) 489 -|((( 490 -userId 491 -)))|((( 492 -UserId des anfragenden Reporter-Benutzers 493 -))) 494 -|((( 495 -optionalRole 496 -)))|((( 497 -Optional. Rolle des Benutzers. 0 = Student, 1= Tutor 498 -))) 499 -|((( 500 -secretToShare 501 -)))|((( 502 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 503 -))) 504 -|((( 505 -optionalUserLastName 506 -)))|((( 507 -Optional. Nachname des Benutzers. 508 -))) 509 -|(% colspan="1" %)(% colspan="1" %) 510 -((( 511 -optionalUserFirstName 512 -)))|(% colspan="1" %)(% colspan="1" %) 513 -((( 514 -Optional. Vorname des Benutzers. 515 -))) 516 -|(% colspan="1" %)(% colspan="1" %) 517 -((( 518 -additionalParams 519 -)))|(% colspan="1" %)(% colspan="1" %) 520 -((( 521 -Reserved for future use. 522 -))) 523 - 524 -=== ReturnValue armSite === 525 - 526 -(% class="wrapped" %) 527 -|((( 528 -String 529 -)))|((( 530 -Session ID, mit der alle weiteren Reporter-Aufrufe gekennzeichnet werden müssen. 531 -))) 532 - 533 -== Initialisierung durch LMS == 534 - 535 -{{code language="xml" title="Initialisierung durch LMS"}} 536 -@WebMethod(operationName = „initiateSite") 537 -public String initiateSite( 538 -@WebParam(name = „version") final Integer version, 539 -@WebParam(name = „sessionId") final String sessionId, 540 -@WebParam(name = „secretToShare") final String secretToShare, 541 -@WebParam(name = „students") final ArrayList<ResultsForStudent> students, 542 -@WebParam(name = „optionalContentPackage") final byte[] contentPackage, 543 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 544 -} 545 -{{/code}} 546 - 547 -=== Parameter initiateSite === 548 - 549 -(% class="wrapped" %) 550 -|((( 551 -version 552 -)))|((( 553 -Angefragte Version: 1 554 -))) 555 -|(% colspan="1" %)(% colspan="1" %) 556 -((( 557 -sessionId 558 -)))|(% colspan="1" %)(% colspan="1" %) 559 -((( 560 -SessionId, wie von armSite zurück geliefert. 561 -))) 562 -|((( 563 -secretToShare 564 -)))|((( 565 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 566 -))) 567 -|((( 568 -students 569 -)))|((( 570 -Liste der Studenten mit ihren Resultaten. Siehe unten. 571 -))) 572 -|((( 573 -optionalContentPackage 574 -)))|((( 575 -Optional. Content Package (gezippt) als Byte-Array. 576 -))) 577 -|((( 578 -additionalParams 579 -)))|((( 580 -Reserved for future use. 581 -))) 582 - 583 -=== ReturnValue initiateSite === 584 - 585 -(% class="wrapped" %) 586 -|((( 587 -String 588 -)))|((( 589 -Absolute URL der Reporter-Seite für den IFrame. Dieser ist vom LMS durch die folgenden URL-Parameter anzureichern: 590 - 591 -* sid: Session ID, wie von armSite zurück gegeben 592 -* uid: Student ID, wie in initiateSite beim Reporter angemeldet 593 -))) 594 - 595 -{{code language="xml"}} 596 -public class ResultsForStudent { 597 - private String studentId = „"; 598 - private String firstname = „"; 599 - private String lastname = „"; 600 - private String groupname = „"; 601 - private String tutorname = „"; 602 - private File contentFile = null; 603 - private byte[] resultsFile = null; 604 -} 605 -{{/code}} 606 - 607 -== Abmeldung durch LMS == 608 - 609 - 610 -{{code}} 611 -@WebMethod(operationName = „disarmSite") 612 -public Boolean disarmSite( 613 -@WebParam(name = „version") final Integer version, 614 -@WebParam(name = „sessionId") final String sessionId, 615 -@WebParam(name = „secretToShare") final String secretToShare, 616 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 617 -} 618 -{{/code}} 619 - 620 - 621 -=== Parameter disarmSite === 622 - 623 -(% class="wrapped" %) 624 -|((( 625 -version 626 -)))|((( 627 -Angefragte Version: 1 628 -))) 629 -|(% colspan="1" %)(% colspan="1" %) 630 -((( 631 -sessionId 632 -)))|(% colspan="1" %)(% colspan="1" %) 633 -((( 634 -SessionId, wie von armSite zurück geliefert. 635 -))) 636 -|((( 637 -secretToShare 638 -)))|((( 639 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 640 -))) 641 -|((( 642 -additionalParams 643 -)))|((( 644 -Reserved for future use. 645 -))) 646 - 647 -=== ReturnValue disarmSite === 648 - 649 -(% class="wrapped" %) 650 -|((( 651 -Boolean 652 -)))|((( 653 -True bei Erfolg, sonst false. 654 -))) 655 - 656 -== Abfrage von Lernerresultaten durch LMS == 657 - 658 -{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}} 659 - @WebMethod(operationName = „getResultValues") 660 -public HashMapWrapper getResultValues( 661 - @WebParam(name = „version") final Integer version, 662 - @WebParam(name = „sessionId") final String sessionId, 663 - @WebParam(name = „secretToShare") final String secretToShare, 664 - @WebParam(name = „requestedValues") final HashMap<String, String> 665 - requestedValues, 666 - @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 667 -} 668 -{{/code}} 669 - 670 -=== Parameter getResultValues === 671 - 672 -(% class="wrapped" %) 673 -|((( 674 -version 675 -)))|((( 676 -Angefragte Version: 1 677 -))) 678 -|(% colspan="1" %)(% colspan="1" %) 679 -((( 680 -sessionId 681 -)))|(% colspan="1" %)(% colspan="1" %) 682 -((( 683 -SessionId, wie von armSite zurück geliefert. 684 -))) 685 -|((( 686 -secretToShare 687 -)))|((( 688 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 689 -))) 690 -|((( 691 -requestedValues 692 -)))|((( 693 -Kann leer sein, dann werden alle Result-Variables zurück geliefert. Sind Keys enthalten, so kommen nur diese zurück. 694 -))) 695 -|((( 696 -additionalParams 697 -)))|((( 698 -Reserved for future use. 699 -))) 700 - 701 -=== ReturnValue getResultValues === 702 - 703 -(% class="wrapped" %) 704 -|((( 705 -HashMap<String, String> 706 -)))|((( 707 -Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt) 708 -))) 709 - 710 -== Abfrage von Ergebnisvariablen durch LMS == 711 - 712 -{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}} 713 - @WebMethod(operationName = „getResultVariables") 714 -public HashMapWrapper getResultVariables( 715 -@WebParam(name = „version") final Integer version, 716 -@WebParam(name = „contentPackage") final byte[] contentPackage, 717 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 718 -} 719 -{{/code}} 720 - 721 -=== Parameter getResultVariables === 722 - 723 -(% class="wrapped" %) 724 -|((( 725 -version 726 -)))|((( 727 -Angefragte Version: 1 728 -))) 729 -|((( 730 -contentPackage 731 -)))|((( 732 -Content Package (gezippt) als Byte-Array. 733 -))) 734 -|((( 735 -additionalParams 736 -)))|((( 737 -Reserved for future use. 738 -))) 739 - 740 -=== ReturnValue getResultVariables === 741 - 742 -(% class="wrapped" %) 743 -|((( 744 -HashMap<String, String> 745 -)))|((( 746 -Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt) 747 -))) 748 - 749 -== Wrapper == 750 - 751 -Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden. 752 - 753 -=== Wrapper für die HashMap<String, String> === 754 - 755 -HashMapWrapper.java: 756 - 757 -[[image:attach:HashMapWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 758 - 759 -[[image:attach:HashMapWrapperjava2.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 760 - 761 -=== Wrapper für die ArrayList<ResultsForStudent> === 762 - 763 -ResultsForStudentsWrapper.java: 764 - 765 -[[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 766 -{{/layout-cell}} 767 -))) 768 - 769 -{{layout-section ac:type="single"}} 770 -{{layout-cell}} 771 -== Allgemeines == 772 - 773 -Über die Schnittstelle zum ONYX WebReporter erfolgt jede Kommunikation zwischen dem LMS und dem Reporter. Dazu erfolgt eine Reihe von Aufrufen: 774 - 775 -(% class="wrapped" %) 776 -|((( 777 -armSite 778 -)))|((( 779 -Anmeldung von Folgerequests beim ONYX Reporter. 780 -))) 781 -|((( 782 -initiateSite 783 -)))|((( 784 -Initiiert die Reporter-Session (Übertragung des CPs). 785 -))) 786 -|((( 787 -disarmSite 788 -)))|((( 789 -Freigabe von allen Reporter-Ressourcen für diese Session. 790 -))) 791 -|((( 792 -getResultValues 793 -)))|((( 794 -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. 795 -))) 796 -|(% colspan="1" %)(% colspan="1" %) 797 -((( 798 -getResultVariables 799 -)))|(% colspan="1" %)(% colspan="1" %) 800 -((( 801 -Gibt alle bzw. die angeforderten Outcome-Variablen für den Test zurück. Hierfür sind kein armSite, initiateSite oder disarmSite erforderlich. 802 -))) 803 - 804 -== Anmeldung des LMS == 805 - 806 -{{code language="xml" title="Anmeldung des LMS"}} 807 -@WebMethod(operationName = „armSite") 808 -public String armSite( 809 -@WebParam(name = „version") final Integer version, 810 -@WebParam(name = „userId") final String userId, 811 -@WebParam(name = „optionalRole") final Integer role, 812 -@WebParam(name = „secretToShare") final String secretToShare, 813 -@WebParam(name = „optionalUserLastName") final String userLastName, 814 -@WebParam(name = „optionalUserFirstName") final String userFirstName, 815 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 816 -} 817 -{{/code}} 818 - 819 -=== Parameter armSite === 820 - 821 -(% class="wrapped" %) 822 -|((( 823 -version 824 -)))|((( 825 -Angefragte Version: 1 826 -))) 827 -|((( 828 -userId 829 -)))|((( 830 -UserId des anfragenden Reporter-Benutzers 831 -))) 832 -|((( 833 -optionalRole 834 -)))|((( 835 -Optional. Rolle des Benutzers. 0 = Student, 1= Tutor 836 -))) 837 -|((( 838 -secretToShare 839 -)))|((( 840 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 841 -))) 842 -|((( 843 -optionalUserLastName 844 -)))|((( 845 -Optional. Nachname des Benutzers. 846 -))) 847 -|(% colspan="1" %)(% colspan="1" %) 848 -((( 849 -optionalUserFirstName 850 -)))|(% colspan="1" %)(% colspan="1" %) 851 -((( 852 -Optional. Vorname des Benutzers. 853 -))) 854 -|(% colspan="1" %)(% colspan="1" %) 855 -((( 856 -additionalParams 857 -)))|(% colspan="1" %)(% colspan="1" %) 858 -((( 859 -Reserved for future use. 860 -))) 861 - 862 -=== ReturnValue armSite === 863 - 864 -(% class="wrapped" %) 865 -|((( 866 -String 867 -)))|((( 868 -Session ID, mit der alle weiteren Reporter-Aufrufe gekennzeichnet werden müssen. 869 -))) 870 - 871 -== Initialisierung durch LMS == 872 - 873 -{{code language="xml" title="Initialisierung durch LMS"}} 874 -@WebMethod(operationName = „initiateSite") 875 -public String initiateSite( 876 -@WebParam(name = „version") final Integer version, 877 -@WebParam(name = „sessionId") final String sessionId, 878 -@WebParam(name = „secretToShare") final String secretToShare, 879 -@WebParam(name = „students") final ArrayList<ResultsForStudent> students, 880 -@WebParam(name = „optionalContentPackage") final byte[] contentPackage, 881 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 882 -} 883 -{{/code}} 884 - 885 -=== Parameter initiateSite === 886 - 887 -(% class="wrapped" %) 888 -|((( 889 -version 890 -)))|((( 891 -Angefragte Version: 1 892 -))) 893 -|(% colspan="1" %)(% colspan="1" %) 894 -((( 895 -sessionId 896 -)))|(% colspan="1" %)(% colspan="1" %) 897 -((( 898 -SessionId, wie von armSite zurück geliefert. 899 -))) 900 -|((( 901 -secretToShare 902 -)))|((( 903 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 904 -))) 905 -|((( 906 -students 907 -)))|((( 908 -Liste der Studenten mit ihren Resultaten. Siehe unten. 909 -))) 910 -|((( 911 -optionalContentPackage 912 -)))|((( 913 -Optional. Content Package (gezippt) als Byte-Array. 914 -))) 915 -|((( 916 -additionalParams 917 -)))|((( 918 -Reserved for future use. 919 -))) 920 - 921 -=== ReturnValue initiateSite === 922 - 923 -(% class="wrapped" %) 924 -|((( 925 -String 926 -)))|((( 927 -Absolute URL der Reporter-Seite für den IFrame. Dieser ist vom LMS durch die folgenden URL-Parameter anzureichern: 928 - 929 -* sid: Session ID, wie von armSite zurück gegeben 930 -* uid: Student ID, wie in initiateSite beim Reporter angemeldet 931 -))) 932 - 933 -{{code language="xml"}} 934 -public class ResultsForStudent { 935 - private String studentId = „"; 936 - private String firstname = „"; 937 - private String lastname = „"; 938 - private String groupname = „"; 939 - private String tutorname = „"; 940 - private File contentFile = null; 941 - private byte[] resultsFile = null; 942 -} 943 -{{/code}} 944 - 945 -== Abmeldung durch LMS == 946 - 947 - 948 -{{code}} 949 -@WebMethod(operationName = „disarmSite") 950 -public Boolean disarmSite( 951 -@WebParam(name = „version") final Integer version, 952 -@WebParam(name = „sessionId") final String sessionId, 953 -@WebParam(name = „secretToShare") final String secretToShare, 954 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 955 -} 956 -{{/code}} 957 - 958 - 959 -=== Parameter disarmSite === 960 - 961 -(% class="wrapped" %) 962 -|((( 963 -version 964 -)))|((( 965 -Angefragte Version: 1 966 -))) 967 -|(% colspan="1" %)(% colspan="1" %) 968 -((( 969 -sessionId 970 -)))|(% colspan="1" %)(% colspan="1" %) 971 -((( 972 -SessionId, wie von armSite zurück geliefert. 973 -))) 974 -|((( 975 -secretToShare 976 -)))|((( 977 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 978 -))) 979 -|((( 980 -additionalParams 981 -)))|((( 982 -Reserved for future use. 983 -))) 984 - 985 -=== ReturnValue disarmSite === 986 - 987 -(% class="wrapped" %) 988 -|((( 989 -Boolean 990 -)))|((( 991 -True bei Erfolg, sonst false. 992 -))) 993 - 994 -== Abfrage von Lernerresultaten durch LMS == 995 - 996 -{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}} 997 - @WebMethod(operationName = „getResultValues") 998 -public HashMapWrapper getResultValues( 999 - @WebParam(name = „version") final Integer version, 1000 - @WebParam(name = „sessionId") final String sessionId, 1001 - @WebParam(name = „secretToShare") final String secretToShare, 1002 - @WebParam(name = „requestedValues") final HashMap<String, String> 1003 - requestedValues, 1004 - @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 1005 -} 1006 -{{/code}} 1007 - 1008 -=== Parameter getResultValues === 1009 - 1010 -(% class="wrapped" %) 1011 -|((( 1012 -version 1013 -)))|((( 1014 -Angefragte Version: 1 1015 -))) 1016 -|(% colspan="1" %)(% colspan="1" %) 1017 -((( 1018 -sessionId 1019 -)))|(% colspan="1" %)(% colspan="1" %) 1020 -((( 1021 -SessionId, wie von armSite zurück geliefert. 1022 -))) 1023 -|((( 1024 -secretToShare 1025 -)))|((( 1026 -Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 1027 -))) 1028 -|((( 1029 -requestedValues 1030 -)))|((( 1031 -Kann leer sein, dann werden alle Result-Variables zurück geliefert. Sind Keys enthalten, so kommen nur diese zurück. 1032 -))) 1033 -|((( 1034 -additionalParams 1035 -)))|((( 1036 -Reserved for future use. 1037 -))) 1038 - 1039 -=== ReturnValue getResultValues === 1040 - 1041 -(% class="wrapped" %) 1042 -|((( 1043 -HashMap<String, String> 1044 -)))|((( 1045 -Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt) 1046 -))) 1047 - 1048 -== Abfrage von Ergebnisvariablen durch LMS == 1049 - 1050 -{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}} 1051 - @WebMethod(operationName = „getResultVariables") 1052 -public HashMapWrapper getResultVariables( 1053 -@WebParam(name = „version") final Integer version, 1054 -@WebParam(name = „contentPackage") final byte[] contentPackage, 1055 -@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 1056 -} 1057 -{{/code}} 1058 - 1059 -=== Parameter getResultVariables === 1060 - 1061 -(% class="wrapped" %) 1062 -|((( 1063 -version 1064 -)))|((( 1065 -Angefragte Version: 1 1066 -))) 1067 -|((( 1068 -contentPackage 1069 -)))|((( 1070 -Content Package (gezippt) als Byte-Array. 1071 -))) 1072 -|((( 1073 -additionalParams 1074 -)))|((( 1075 -Reserved for future use. 1076 -))) 1077 - 1078 -=== ReturnValue getResultVariables === 1079 - 1080 -(% class="wrapped" %) 1081 -|((( 1082 -HashMap<String, String> 1083 -)))|((( 1084 -Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt) 1085 -))) 1086 - 1087 -== Wrapper == 1088 - 1089 -Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden. 1090 - 1091 -=== Wrapper für die HashMap<String, String> === 1092 - 1093 -HashMapWrapper.java: 1094 - 1095 -[[image:attach:HashMapWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 1096 - 1097 -[[image:attach:HashMapWrapperjava2.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 1098 - 1099 -=== Wrapper für die ArrayList<ResultsForStudent> === 1100 - 1101 -ResultsForStudentsWrapper.java: 1102 - 1103 -[[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 1104 -{{/layout-cell}} 1105 -{{/layout-section}} 1106 - 1107 -(% data-xwiki-non-generated-content="java.util.List" %) 1108 -((( 1109 -" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container"> 1110 - 1111 -(% data-xwiki-non-generated-content="java.util.List" %) 1112 -((( 1113 -" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container"> 1114 -))) 1115 - 1116 -{{layout-cell}} 1117 - 1118 -{{/layout-cell}} 1119 - 1120 -(% data-xwiki-non-generated-content="java.util.List" %) 1121 -((( 1122 -" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container"> 1123 - 1124 -====== relevante Links: ====== 1125 - 1126 -* [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 1127 -))) 1128 - 1129 -{{layout-cell}} 1130 -====== relevante Links: ====== 1131 - 1132 -* [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 1133 -{{/layout-cell}} 1134 -))) 1135 - 1136 -{{layout-section ac:type="two_right_sidebar"}} 1137 -{{layout-cell}} 1138 - 1139 -{{/layout-cell}} 1140 - 1141 -{{layout-cell}} 1142 -====== relevante Links: ====== 1143 - 1144 -* [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 1145 -{{/layout-cell}} 1146 -{{/layout-section}} 1147 -))) 1148 - 1149 1149 {{layout}} 1150 1150 {{layout-section ac:type="two_right_sidebar"}} 1151 1151 {{layout-cell}} ... ... @@ -1500,16 +1500,4 @@ 1500 1500 [[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 1501 1501 {{/layout-cell}} 1502 1502 {{/layout-section}} 1503 - 1504 -{{layout-section ac:type="two_right_sidebar"}} 1505 -{{layout-cell}} 1506 - 1507 -{{/layout-cell}} 1508 - 1509 -{{layout-cell}} 1510 -====== relevante Links: ====== 1511 - 1512 -* [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 1513 -{{/layout-cell}} 1514 -{{/layout-section}} 1515 1515 {{/layout}}