Je suis noy, un nouvel ingénieur. Je crée une application Web qui peut communiquer de manière asynchrone en utilisant Servlet et Ajax. Il a fallu un certain temps pour résoudre l'erreur, je vais donc garder une trace.
Environnement de développement Editeur: Eclipse 2019-03 (4.11.0) Serveur Web: Apache Tomcat v9.0 Langue: Java Bibliothèque: ・ Jquery-3.4.1.min.js ・ Jackson-annotations-2.9.9.jar ・ Jackson-core-2.9.9.jar ・ Jackson-databind-2.9.9.jar
** Statut HTTP 500 - Une erreur de serveur interne se produit lorsque vous essayez de renvoyer une réponse du servlet à ajax **
Onglet "Console" des outils de développement Chrome"Qu'est-ce qu'une erreur 500?!" Et j'ai perdu un peu de temps, mais
Cliquez sur l'erreur et vous trouverez un rapport d'exception. "Cause première java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ObjectMapper」cette? Le fichier qui définit ObjectMapper doit être importé ... Dans cet esprit, lorsque j'ai examiné Eclipse de différentes manières, j'ai trouvé l'avertissement suivant dans l'onglet "Problèmes".
Peut-être que le fichier jackson-XXXXXX-2.9.9.jar qui aurait dû être ajouté au chemin de classe n'est pas référencé ...?
** Le fichier (jackson-XXXXXX-2.9.9.jar) dans lequel ObjectMapper (classe Jackson) est défini ne peut pas être référencé, ce qui entraîne java.lang.NoClassDefFoundError. ** **
Ainsi, quand j'ai googlé "l'entrée de chemin de classe d'éclipse n'est pas exportée ou publiée", j'ai trouvé la page suivante et l'ai résolue.
https://codeday.me/jp/qa/20190201/208565.html "Spring-mvc - Avertissement Eclipse: XXXXXXXXXXX.jar ne sera ni exporté ni publié. Exécution ClassNotFoundExceptions peut se produire"
** Supprimez le fichier jackson-XXXXXX-2.9.9.jar de la bibliothèque de référence et stockez-le directement dans le dossier WEB-INF / lib. ** **
Suppression des trois fichiers jackson-XXXXXX-2.9.9.jar dans la bibliothèque de référence avec "Exclude from build path".
Faites glisser et déposez les trois fichiers jackson-XXXXXX-2.9.9.jar directement dans le dossier WebContent / WEB-INF / lib.
Sélectionnez "Copier le fichier" et cliquez sur "OK"
Le fichier a été stocké.
Les avertissements concernant les trois fichiers jackson-XXXXXX-2.9.9.jar ont disparu. (Ignorez les 2 objets restants maintenant)
L'erreur 500 a disparu et le servlet a pu être exécuté.
Recommended Posts