J'utilise un code java hérité qui consiste en plusieurs classes statiques de avec dans une application Grails sous tomcat. Lorsque je n'ai qu'un utilisateur utilisant l'application Web, tout fonctionne correctement. Lorsque deux utilisateurs utilisent l'application, les choses commencent à mal tourner. Je crois que c'est parce que les classes statiques maintiennent des verrous de ressource tels que des sockets. Ai-je raison de supposer que, par défaut, toutes les sessions de l'application utiliseront la même copie de la classe statique? Si oui, existe-t-il un moyen de modifier ce comportement pour charger une nouvelle copie pour chaque session utilisateur?Les fonctions statiques sont-elles isolées dans les applications JSP/Grails sous tomcat?
Répondre
Non, il n'y a pas loin pour mapper des méthodes statiques aux sessions http dans tomcat ou tout autre serveur d'application. Après avoir dit que les méthodes statiques sont seulement un problème si elles tiennent l'état statiquement.
Si tel est le cas, vous devrez soit réécrire ces classes afin de pouvoir stocker des instances dans la session.
Ils maintiennent l'état pendant une courte période, il semble que mettre en synchronisation autour de tous les appels à eux résout le problème. – Jared
Vous pourriez être en mesure de modifier les définitions de classe afin que les méthodes aient le mot-clé synchronized dans la définition de la méthode. public synchronized methodName() {} Ainsi, vous n'avez pas à vous soucier de l'encapsuler dans un bloc synchronisé à chaque appel de méthode. –
- 1. fonctions C# avec les données statiques
- 2. Différence entre les métadonnées personnalisées et les fonctions statiques?
- 3. Exécution sélective d'une guerre dans les applications Web Tomcat
- 4. Comment gérer correctement les applications Web Tomcat dans Eclipse?
- 5. Configurer les routes statiques sous Windows
- 6. spécialisation de modèle pour les fonctions membres statiques; comment?
- 7. ASP.NET MVC: Comment utiliser les pages HTML statiques dans les applications MVC?
- 8. Les applications .net fonctionnent-elles sous Linux?
- 9. Recherche dans les pages statiques
- 10. Combinant les bibliothèques statiques
- 11. Où placer de gros fichiers statiques dans un projet Tomcat?
- 12. Mappage de fichiers statiques et dynamiques dans Tomcat/Spring?
- 13. Caches statiques dans les services Web
- 14. HttpContext.Current accédé dans les classes statiques
- 15. Utilisation de C# pour automatiser les fonctions et les mouvements entre deux applications de navigateur différentes?
- 16. Superpositions dans les applications Windows
- 17. BDC - Problèmes dans les applications
- 18. JSF dans les applications d'entreprise
- 19. Aide sur les contrôles Open Source dans les applications commerciales
- 20. Accélérer les images dans Tomcat 6
- 21. Énumérer les fonctions DLL?
- 22. Fonctions non déterministes dans les fonctions de partitionnement sql
- 23. Problème lors de l'accès aux variables const statiques via les fonctions de membre de classe
- 24. Application_BeginRequest pour les fichiers statiques * .JS dans ASP.NET dans IIS6?
- 25. Sur les blocs d'initialisation statiques et non statiques en Java
- 26. Fonctions d'agrégation personnalisées dans les rapports
- 27. Conseiller sur les données statiques dans une application et tester
- 28. Assimiler les applications existantes?
- 29. PHP Les fonctions statiques ne fonctionnent pas lorsque le répertoire change?
- 30. Surveillance des applications Apache Tomcat dans l'environnement de production
Pouvez-vous publier un exemple de méthodes statiques? Il y a quelques méthodes statiques dans les grails qui sont complètement normales. –