Versionen im Vergleich

Schlüssel

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



 

 

Panel
borderColor#ff8c1a
titleColor#ffffff
borderWidth2
titleBGColor#ff8c1a
borderWidthborderStyle2solid
titleGültig ab JWT Version 5.4.11.0
borderStylesolid
Zusammenfassung: Steuerung des Verhaltens, ob Annotationen server- oder clientseitig gerendert werden,

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

.

 

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


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();
  }
};