2016-11-21 1 views
0

J'ai une application vaadin simple créée à partir d'un acheteur. La page avec le bouton est chargée mais lorsque vous cliquez dessus, la session est déjà expirée. Ce problème se produit juste que dans cette conditions:La session Vaadin a expiré immédiatement

    session de
  • est https
  • browsert est IE 11.0.14393.0 (après Windows Update 10 Aniversary 1607)
  • SPNEGO est utilisé

Le serveur est WildFly 10.1.0.Final

Autres navigateurs (EDGE, Firefox, Chrome) très bien. Avant la mise à jour de l'Anniversaire, IE 11 a également fonctionné.

Je sais que ce n'est pas assez d'informations mais je ne sais pas ce qui peut être important. Pouvez-vous me montrer ce que je devrais vérifier/devrais-je faire? Je n'ai rien trouvé d'étrange au niveau des logs et de la communication. Je devine qu'il y aura quelque chose de mal avec une session mais je ne peux pas trouver ce qui est mauvais :-(

+0

Vous pouvez obtenir cet effet si votre application marque les cookies de session comme étant sécurisés, mais que votre serveur d'applications ne fonctionne pas en mode HTTPS. –

+0

Je suis désolé, je ne comprends pas ce que vous voulez dire. Comme je l'ai écrit, l'application fonctionne (sur le même ordinateur contre le même serveur) avec EDGE, Firefox, Chrome. Il cesse de fonctionner avec IE11 après la mise à jour aniversary. Avant la mise à jour Aniversary, il fonctionne également avec IE. – Vlada

Répondre

1

Le problème est provoqué par la demande générée en interne pour favicon.Cette requête est générée en interne par IE et utilise la mauvaise session ID (jsessionID): le serveur crée une nouvelle session et répond avec son ID, malheureusement, l'IE utilise ce nouvel ID de session pour d'autres requêtes.Un autre navigateur (et la version IE précédente) utilise correctement le jsessionID d'origine et non celui retourné en réponse à la demande de favicon généré en interne

Solution. Je l'ai changé les liens favicon dans mon application et les a signalés en dehors de la zone de serveur sécurisé

01.
  @Override 
      public void modifyBootstrapPage(BootstrapPageResponse response) { 
       // FIX for IE11 at Windows 10 after anniversary update 
       response.getDocument().head().getElementsByAttributeValue("rel", "shortcut icon").attr("href", "/static/favicon.ico"); 
       response.getDocument().head().getElementsByAttributeValue("rel", "icon").attr("href", "/static/favicon.ico"); 
      }