Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.



Steuerung des Verhaltens, ob Annotationen server- oder clientseitig gerendert werden, Die Anleitung wurde für jadice web toolkit Version 5.4.11.0 erstellt.

steuern kann, ob Annotationen server- oder clientseitig gerendert werden,

Seiteneigenschaften
Zusammenfassung
Panel
borderColor#ff8c1a
titleColor#ffffff
borderWidth2
titleBGColor#ff8c1a
borderStylesolid
titleGültig ab JWT Version 5.4.11.0

Diese Anleitung beschreibt, wie man mittels PredefinedAnnotationRenderStrategy.CLIENT und PredefinedAnnotationRenderStrategy.SERVER_SIDE_MASKING

.
JWT Version


Status Quo

Annotationen werden im jadice web toolkit grundsätzlich clientseitig gerendert. Es sei denn, die Annotationen sind mit den Berechtigungen DENY.CHANGE und DENY.REMOVE belegt. Dann werden sie grundsätzlich serverseitig gerendert.

...

Mit JWT 5.4.11.0 stehen dem Integrator deshalb zwei vordefinierte {{AnnotationRenderStrategy}}s zur Verfügung:

  • eine, die das bisherige Verhalten abbildet (SERVER_SIDE_MASKING)
  • und eine Strategie, die ein neues Verhalten, nämlich ein vollständig clientseitiges Rendern der Annotationen ermöglicht (CLIENT) - unabhängig von den Permissions auf den Annotationen

...

Die Strategie kann pro Dokument gesetzt werden - damit ist der Integrator flexibler.

Info

Achtung: Mit jadice web toolkit 5.5.0.0 ist PredefinedAnnotationRenderStrategy.CLIENT der Default. Zum serverseitigen Maskieren sensibler Dokumentinhalte muss dann explizit PredefinedAnnotationRenderStrategy.SERVER_SIDE_MASKING.applyToDocument(Document) gesetzt werden.

Fall Nummer 1: DENY.SHOW - So geht's besser

...

Hier gibt es keine weiteren Tücken zu beachtetn.beachten. Sogar noch einfacher geht das, wenn man die dokumentweiten Berechtigungen verwendet:

private final AbstractPageViewCommand cmdAllow = new AbstractPageViewCommand() {
@Override
protected void execute() {
    UIDocument<IsWidget> document = getPageView().getDocument();
    clearAnnoChangeANDRemovePermissions(document);
document.getPermissions().getPermissions().add(DocumentAnnotationPermission.ALLOW.REMOVE);
document.getPermissions().getPermissions().add(DocumentAnnotationPermission.ALLOW.CHANGE);
   getPageView().repaint();
ThumbnailTool thumbnailTool = tm.getTool(ThumbnailTool.class);
thumbnailTool.getThumbnailView().repaint();
  }
};