Ä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
am 01.12.2014
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 399.1
bearbeitet von Carina Enke
am 13.02.2024
am 13.02.2024
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (4 geändert, 0 hinzugefügt, 0 gelöscht)
-
Anhänge (0 geändert, 3 hinzugefügt, 0 gelöscht)
-
Objekte (1 geändert, 0 hinzugefügt, 0 gelöscht)
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. tleu1 +XWiki.carina - Inhalt
-
... ... @@ -1,40 +1,770 @@ 1 -{{layout}} 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 + 2 2 {{layout-section ac:type="two_right_sidebar"}} 3 3 {{layout-cell}} 4 -====== Inhalt: ====== 55 + 56 +{{/layout-cell}} 5 5 58 +{{layout-cell}} 59 +{{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}} 60 +{{toc start="2"/}} 6 6 62 + **Weitere Informationen:** 7 7 8 -{{toc style="square" maxLevel="5" outline="true" absoluteUrl="true"/}} 64 +* [[Schnittstelle ONYX Player>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 65 +{{/panel}} 9 9 {{/layout-cell}} 67 +{{/layout-section}} 10 10 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 + 11 11 {{layout-cell}} 12 -|=(% colspan="1" %)(% colspan="1" %) 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" %) 13 13 ((( 14 - Programmversion460 +getResultVariables 15 15 )))|(% colspan="1" %)(% colspan="1" %) 16 16 ((( 17 - 463 +Gibt alle bzw. die angeforderten Outcome-Variablen für den Test zurück. Hierfür sind kein armSite, initiateSite oder disarmSite erforderlich. 18 18 ))) 19 -|=((( 20 -Status 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 21 21 )))|((( 22 - (% class="status-macro aui-lozengeui-lozenge-error"%)ENTWURF487 +Angefragte Version: 1 23 23 ))) 24 -| =(((25 - Aufgaben489 +|((( 490 +userId 26 26 )))|((( 27 - 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 +))) 28 28 29 - 524 +=== ReturnValue armSite === 525 + 526 +(% class="wrapped" %) 527 +|((( 528 +String 529 +)))|((( 530 +Session ID, mit der alle weiteren Reporter-Aufrufe gekennzeichnet werden müssen. 30 30 ))) 31 -|=((( 32 -JIRA 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 33 33 )))|((( 34 - 553 +Angefragte Version: 1 35 35 ))) 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"]] 36 36 {{/layout-cell}} 37 - {{/layout-section}}767 +))) 38 38 39 39 {{layout-section ac:type="single"}} 40 40 {{layout-cell}} ... ... @@ -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 775 +(% 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. 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. 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") 806 +{{code language="xml" title="Anmeldung des LMS"}} 807 +@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,703 @@ 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 816 +} 817 +{{/code}} 87 87 819 +=== Parameter armSite === 820 + 821 +(% class="wrapped" %) 88 88 |((( 89 - 823 +version 90 90 )))|((( 91 - 825 +Angefragte Version: 1 92 92 ))) 93 93 |((( 94 - 828 +userId 95 95 )))|((( 96 - 830 +UserId des anfragenden Reporter-Benutzers 97 97 ))) 98 98 |((( 99 - 833 +optionalRole 100 100 )))|((( 101 - 835 +Optional. Rolle des Benutzers. 0 = Student, 1= Tutor 102 102 ))) 103 103 |((( 104 - 838 +secretToShare 105 105 )))|((( 106 - 840 +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 - 843 +optionalUserLastName 110 110 )))|((( 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}} 111 111 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]] 112 112 ))) 113 113 114 -= Überschrift2 = 1129 +{{layout-cell}} 1130 +====== relevante Links: ====== 115 115 116 - Loremipsumdolor sitamet,consectetuerdipiscingelit. Aliquam fermentum vestibulum est. Cras rhoncus.Pellentesque habitantmorbitristique senectus et netus et malesuadafames ac turpis egestas. Sed quis tortor. Donec non ipsum. Mauris condimentum, odioc porta tristique, ante neque malesuada massa, in dignissim eros velit at tellus.Donecet risus inligula eleifend consectetuer. Donec volutpateleifend augue. Integer gravida sodalesleo.Nuncvehiculaneque ac erat.Vivamus non nisl. Fusceac magna. Suspendisse euismod liberoegetmauris.1132 +* [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 117 117 {{/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}} 118 118 {{/layout-section}} 1147 +))) 119 119 1149 +{{layout}} 120 120 {{layout-section ac:type="two_right_sidebar"}} 121 121 {{layout-cell}} 122 -====== untergeordnete Seiten: ====== 1152 + 1153 +{{/layout-cell}} 123 123 1155 +{{layout-cell}} 1156 +{{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}} 1157 +{{toc start="2"/}} 124 124 1159 + **Weitere Informationen:** 125 125 126 -{{children all="true"/}} 1161 +* [[Schnittstelle ONYX Player>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 1162 +{{/panel}} 127 127 {{/layout-cell}} 1164 +{{/layout-section}} 128 128 1166 +{{layout-section ac:type="single"}} 129 129 {{layout-cell}} 1168 +== Allgemeines == 1169 + 1170 +Über die Schnittstelle zum ONYX WebReporter erfolgt jede Kommunikation zwischen dem LMS und dem Reporter. Dazu erfolgt eine Reihe von Aufrufen: 1171 + 1172 +(% class="wrapped" %) 1173 +|((( 1174 +armSite 1175 +)))|((( 1176 +Anmeldung von Folgerequests beim ONYX Reporter. 1177 +))) 1178 +|((( 1179 +initiateSite 1180 +)))|((( 1181 +Initiiert die Reporter-Session (Übertragung des CPs). 1182 +))) 1183 +|((( 1184 +disarmSite 1185 +)))|((( 1186 +Freigabe von allen Reporter-Ressourcen für diese Session. 1187 +))) 1188 +|((( 1189 +getResultValues 1190 +)))|((( 1191 +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. 1192 +))) 1193 +|(% colspan="1" %)(% colspan="1" %) 1194 +((( 1195 +getResultVariables 1196 +)))|(% colspan="1" %)(% colspan="1" %) 1197 +((( 1198 +Gibt alle bzw. die angeforderten Outcome-Variablen für den Test zurück. Hierfür sind kein armSite, initiateSite oder disarmSite erforderlich. 1199 +))) 1200 + 1201 +== Anmeldung des LMS == 1202 + 1203 +{{code language="xml" title="Anmeldung des LMS"}} 1204 +@WebMethod(operationName = „armSite") 1205 +public String armSite( 1206 +@WebParam(name = „version") final Integer version, 1207 +@WebParam(name = „userId") final String userId, 1208 +@WebParam(name = „optionalRole") final Integer role, 1209 +@WebParam(name = „secretToShare") final String secretToShare, 1210 +@WebParam(name = „optionalUserLastName") final String userLastName, 1211 +@WebParam(name = „optionalUserFirstName") final String userFirstName, 1212 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 1213 +} 1214 +{{/code}} 1215 + 1216 +=== Parameter armSite === 1217 + 1218 +(% class="wrapped" %) 1219 +|((( 1220 +version 1221 +)))|((( 1222 +Angefragte Version: 1 1223 +))) 1224 +|((( 1225 +userId 1226 +)))|((( 1227 +UserId des anfragenden Reporter-Benutzers 1228 +))) 1229 +|((( 1230 +optionalRole 1231 +)))|((( 1232 +Optional. Rolle des Benutzers. 0 = Student, 1= Tutor 1233 +))) 1234 +|((( 1235 +secretToShare 1236 +)))|((( 1237 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 1238 +))) 1239 +|((( 1240 +optionalUserLastName 1241 +)))|((( 1242 +Optional. Nachname des Benutzers. 1243 +))) 1244 +|(% colspan="1" %)(% colspan="1" %) 1245 +((( 1246 +optionalUserFirstName 1247 +)))|(% colspan="1" %)(% colspan="1" %) 1248 +((( 1249 +Optional. Vorname des Benutzers. 1250 +))) 1251 +|(% colspan="1" %)(% colspan="1" %) 1252 +((( 1253 +additionalParams 1254 +)))|(% colspan="1" %)(% colspan="1" %) 1255 +((( 1256 +Reserved for future use. 1257 +))) 1258 + 1259 +=== ReturnValue armSite === 1260 + 1261 +(% class="wrapped" %) 1262 +|((( 1263 +String 1264 +)))|((( 1265 +Session ID, mit der alle weiteren Reporter-Aufrufe gekennzeichnet werden müssen. 1266 +))) 1267 + 1268 +== Initialisierung durch LMS == 1269 + 1270 +{{code language="xml" title="Initialisierung durch LMS"}} 1271 +@WebMethod(operationName = „initiateSite") 1272 +public String initiateSite( 1273 +@WebParam(name = „version") final Integer version, 1274 +@WebParam(name = „sessionId") final String sessionId, 1275 +@WebParam(name = „secretToShare") final String secretToShare, 1276 +@WebParam(name = „students") final ArrayList<ResultsForStudent> students, 1277 +@WebParam(name = „optionalContentPackage") final byte[] contentPackage, 1278 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 1279 +} 1280 +{{/code}} 1281 + 1282 +=== Parameter initiateSite === 1283 + 1284 +(% class="wrapped" %) 1285 +|((( 1286 +version 1287 +)))|((( 1288 +Angefragte Version: 1 1289 +))) 1290 +|(% colspan="1" %)(% colspan="1" %) 1291 +((( 1292 +sessionId 1293 +)))|(% colspan="1" %)(% colspan="1" %) 1294 +((( 1295 +SessionId, wie von armSite zurück geliefert. 1296 +))) 1297 +|((( 1298 +secretToShare 1299 +)))|((( 1300 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 1301 +))) 1302 +|((( 1303 +students 1304 +)))|((( 1305 +Liste der Studenten mit ihren Resultaten. Siehe unten. 1306 +))) 1307 +|((( 1308 +optionalContentPackage 1309 +)))|((( 1310 +Optional. Content Package (gezippt) als Byte-Array. 1311 +))) 1312 +|((( 1313 +additionalParams 1314 +)))|((( 1315 +Reserved for future use. 1316 +))) 1317 + 1318 +=== ReturnValue initiateSite === 1319 + 1320 +(% class="wrapped" %) 1321 +|((( 1322 +String 1323 +)))|((( 1324 +Absolute URL der Reporter-Seite für den IFrame. Dieser ist vom LMS durch die folgenden URL-Parameter anzureichern: 1325 + 1326 +* sid: Session ID, wie von armSite zurück gegeben 1327 +* uid: Student ID, wie in initiateSite beim Reporter angemeldet 1328 +))) 1329 + 1330 +{{code language="xml"}} 1331 +public class ResultsForStudent { 1332 + private String studentId = „"; 1333 + private String firstname = „"; 1334 + private String lastname = „"; 1335 + private String groupname = „"; 1336 + private String tutorname = „"; 1337 + private File contentFile = null; 1338 + private byte[] resultsFile = null; 1339 +} 1340 +{{/code}} 1341 + 1342 +== Abmeldung durch LMS == 1343 + 1344 + 1345 +{{code}} 1346 +@WebMethod(operationName = „disarmSite") 1347 +public Boolean disarmSite( 1348 +@WebParam(name = „version") final Integer version, 1349 +@WebParam(name = „sessionId") final String sessionId, 1350 +@WebParam(name = „secretToShare") final String secretToShare, 1351 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 1352 +} 1353 +{{/code}} 1354 + 1355 + 1356 +=== Parameter disarmSite === 1357 + 1358 +(% class="wrapped" %) 1359 +|((( 1360 +version 1361 +)))|((( 1362 +Angefragte Version: 1 1363 +))) 1364 +|(% colspan="1" %)(% colspan="1" %) 1365 +((( 1366 +sessionId 1367 +)))|(% colspan="1" %)(% colspan="1" %) 1368 +((( 1369 +SessionId, wie von armSite zurück geliefert. 1370 +))) 1371 +|((( 1372 +secretToShare 1373 +)))|((( 1374 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 1375 +))) 1376 +|((( 1377 +additionalParams 1378 +)))|((( 1379 +Reserved for future use. 1380 +))) 1381 + 1382 +=== ReturnValue disarmSite === 1383 + 1384 +(% class="wrapped" %) 1385 +|((( 1386 +Boolean 1387 +)))|((( 1388 +True bei Erfolg, sonst false. 1389 +))) 1390 + 1391 +== Abfrage von Lernerresultaten durch LMS == 1392 + 1393 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}} 1394 + @WebMethod(operationName = „getResultValues") 1395 +public HashMapWrapper getResultValues( 1396 + @WebParam(name = „version") final Integer version, 1397 + @WebParam(name = „sessionId") final String sessionId, 1398 + @WebParam(name = „secretToShare") final String secretToShare, 1399 + @WebParam(name = „requestedValues") final HashMap<String, String> 1400 + requestedValues, 1401 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 1402 +} 1403 +{{/code}} 1404 + 1405 +=== Parameter getResultValues === 1406 + 1407 +(% class="wrapped" %) 1408 +|((( 1409 +version 1410 +)))|((( 1411 +Angefragte Version: 1 1412 +))) 1413 +|(% colspan="1" %)(% colspan="1" %) 1414 +((( 1415 +sessionId 1416 +)))|(% colspan="1" %)(% colspan="1" %) 1417 +((( 1418 +SessionId, wie von armSite zurück geliefert. 1419 +))) 1420 +|((( 1421 +secretToShare 1422 +)))|((( 1423 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 1424 +))) 1425 +|((( 1426 +requestedValues 1427 +)))|((( 1428 +Kann leer sein, dann werden alle Result-Variables zurück geliefert. Sind Keys enthalten, so kommen nur diese zurück. 1429 +))) 1430 +|((( 1431 +additionalParams 1432 +)))|((( 1433 +Reserved for future use. 1434 +))) 1435 + 1436 +=== ReturnValue getResultValues === 1437 + 1438 +(% class="wrapped" %) 1439 +|((( 1440 +HashMap<String, String> 1441 +)))|((( 1442 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt) 1443 +))) 1444 + 1445 +== Abfrage von Ergebnisvariablen durch LMS == 1446 + 1447 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}} 1448 + @WebMethod(operationName = „getResultVariables") 1449 +public HashMapWrapper getResultVariables( 1450 +@WebParam(name = „version") final Integer version, 1451 +@WebParam(name = „contentPackage") final byte[] contentPackage, 1452 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 1453 +} 1454 +{{/code}} 1455 + 1456 +=== Parameter getResultVariables === 1457 + 1458 +(% class="wrapped" %) 1459 +|((( 1460 +version 1461 +)))|((( 1462 +Angefragte Version: 1 1463 +))) 1464 +|((( 1465 +contentPackage 1466 +)))|((( 1467 +Content Package (gezippt) als Byte-Array. 1468 +))) 1469 +|((( 1470 +additionalParams 1471 +)))|((( 1472 +Reserved for future use. 1473 +))) 1474 + 1475 +=== ReturnValue getResultVariables === 1476 + 1477 +(% class="wrapped" %) 1478 +|((( 1479 +HashMap<String, String> 1480 +)))|((( 1481 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt) 1482 +))) 1483 + 1484 +== Wrapper == 1485 + 1486 +Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden. 1487 + 1488 +=== Wrapper für die HashMap<String, String> === 1489 + 1490 +HashMapWrapper.java: 1491 + 1492 +[[image:attach:HashMapWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 1493 + 1494 +[[image:attach:HashMapWrapperjava2.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 1495 + 1496 +=== Wrapper für die ArrayList<ResultsForStudent> === 1497 + 1498 +ResultsForStudentsWrapper.java: 1499 + 1500 +[[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 1501 +{{/layout-cell}} 1502 +{{/layout-section}} 1503 + 1504 +{{layout-section ac:type="two_right_sidebar"}} 1505 +{{layout-cell}} 1506 + 1507 +{{/layout-cell}} 1508 + 1509 +{{layout-cell}} 130 130 ====== relevante Links: ====== 131 131 132 -* [[l oremipsum>>url:https://www.bps-system.de/help/display/OPAL/Handbuch+OPAL||shape="rect"]]1512 +* [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 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 -334239 21 +3342390 - url
-
... ... @@ -1,1 +1,1 @@ 1 -https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/334239 2/Schnittstelle ONYX Reporter1 +https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/3342390/Schnittstelle ONYX Reporter