Comment puis-je la force de Vaadin pour mettre à jour l'écran?

J'ai un petit Vaadin application qui dispose de plusieurs champs de saisie (comboboxes, selectgroups, etc...). Le contenu de la plupart de ceux-ci est déterminé par le contenu choisi de la première zone de liste déroulante. Cependant, lorsque je sélectionne quelque chose en elle, tous les autres restent vides jusqu'à ce que je clique sur l'une, à quel point ils sont tous à jour. Ce n'est pas le comportement souhaité, mais je suppose que c'est causé par le serveur-côté jusqu'à ce jour, mais ne pas mettre à jour le client de la vue de côté. (Même lors de l'ajout d'requestRepaint() dans ma première zone de liste déroulante du ValueChangeListener)

Il doit y avoir une méthode pour forcer Vaadin pour obtenir les données que je veux afficher, même si aucun des autres composants sont cliqués?

MODIFIER
Je ne suis pas autorisé à poster des réponses à ma propre question si peu de temps, donc je vais mettre ici temporairement:

J'ai trouvé qu'il y a une méthode javascript qui synchronise le client et le serveur.

myComponent.getApplication().getMainWindow().executeJavaScript("javascript:vaadin.forceSync();");

Le seul problème que j'ai maintenant c'est que le ValueChangeListener sur une de mes zones de liste modifiables encore se déclenche uniquement lorsque je clique sur une autre zone de liste déroulante (ou le même deux fois). C'est la chose la plus étrange que la deuxième zone de liste déroulante, une fois chargés, les feux c'est l'événement à la perfection.

OriginalL'auteur Valyrion | 2011-09-30

Leave a Reply

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *