6
votes

Quel préjudice est causé par Java.Lang.illegalStateException: réponse déjà commise

I Obtenez continuellement en dessous des erreurs sur mes journaux de console Weblogic 10.3 xxx

tronqué. Voir Fichier journal pour complète StackTrace

Je me demandais quel préjudice est causé par cela si cela n'est pas exclu? Cette erreur a été dans mon application avant de rejoindre l'équipe, est-ce suffisamment sérieux pour se qualifier comme "Besoin d'une solution immédiate"?


0 commentaires

3 Réponses :


0
votes

Cela signifie que l'application a essayé d'envoyer une en-tête HTTP après l'envoi de la réponse. Quel type de préjudice cela dépend de l'application.

La plupart du temps, un en-tête HTTP manquant peut être toléré par le navigateur, mais, par exemple, si vous souhaitez spécifier un type de contenu spécial Cela pourrait devenir quelque chose d'un problème.

Néanmoins, je vous suggère de trouver la cause première du problème d'éviter tout résultat confusant ou "étrange".


0 commentaires

0
votes

Cela dépend, la signification de l'erreur est que vous avez écrite sur votre objet HTTPResponse et a commencé à envoyer la réponse (en appelant Flush (), SENDERROR () ou SENDREDIRECT ()), donc potentiellement des ajouts au flux de réponses ( ou des en-têtes, etc.) ou même l'action ultérieure (par exemple, vous appelez Flush () et maintenant vous appelez SendError ()) demandée sera perdue.


2 commentaires

Pardon mon inexpérience mais je ne l'obtiens pas clairement. Notre application de Struts a une classe de distribution dans laquelle la logique commerciale est exécutée en clalant des entreprises expérimentées appropriées, une fois que tout va bien la méthode renvoie en appelant Findforward sur l'instance ActionMapping. Voyez-vous un problème ici ..?


Non à moins que votre logique commerciale envoie des messages à votre objet de réponse. Je ne suis pas trop familier avec des jambes de force spécifiquement, je ne peux donc pas vraiment faire une réponse intelligente à ce niveau, tout ce que je peux dire, c'est de mon expérience avec des servlets de base, j'ai vu cette erreur en "commettant" l'objet de réponse plus d'une fois. Désolé je ne peux pas être d'aide plus d'aide.



11
votes

Struts est open source. Vérifiez simplement la source DemandeProcessor avant la ligne 658 (comme indiqué dans StackTrace): xxx

Voir le commentaire: Aucun mappage ne peut être trouvé pour traiter cette demande . C'est la cause première du problème. Mais le senderError () appel à afficher un message d'erreur ne peut pas être terminé également, car la réponse est déjà commise. Apparemment, il y a deux choses un échec: il y a une cartographie manquante et le travail par défaut de cartographie des jambes de force a été pris en charge par programme de manière incorrecte.


1 commentaires

(+1) En regardant les bibliothèques Le code source est à mon avis le meilleur moyen de déboguer rapidement des problèmes dépendants du cadre.