Maison > Java > javaDidacticiel > Pourquoi mon appel AJAX du plug-in JSON Struts2 renvoie-t-il une erreur « Impossible de trouver une action ou un résultat » ?

Pourquoi mon appel AJAX du plug-in JSON Struts2 renvoie-t-il une erreur « Impossible de trouver une action ou un résultat » ?

Barbara Streisand
Libérer: 2024-12-22 18:49:14
original
968 Les gens l'ont consulté

Why is my Struts2 JSON Plugin AJAX Call Returning an

Erreur : Impossible de trouver une action ou un résultat

Scénario :

Vous utilisez le plugin Struts2 JSON dans un AJAX appel, mais la réponse ne renvoie pas de données JSON. Au lieu de cela, vous recevez un message d'erreur :

org.apache.struts2.dispatcher.Dispatcher - Could not find action or result
No result defined for action action.Part 
and result {"col1":"col1","col2":"col2"}
Copier après la connexion

Cause :

L'erreur se produit car l'action ne renvoie pas le type de données correct. Le plugin JSON s'attend à ce que l'action renvoie un objet pouvant être sérialisé au format JSON. Cependant, dans ce cas, l'action renvoie un objet personnalisé qui n'est pas sérialisable.

Solution :

Pour résoudre ce problème, vous pouvez utiliser le paramètre root dans le fichier struts.xml pour spécifier l'objet racine qui doit être sérialisé. L'objet racine doit être un champ public ou une méthode getter dans la classe d'action.

Exemple :

<result type="json">
    <param name="root">rows</param>
</result>
Copier après la connexion

Dans cet exemple, le champ rows de l'action class est l'objet racine qui sera sérialisé en JSON.

Supplémentaire Conseils :

  • Assurez-vous que le champ de lignes est d'un type qui peut être sérialisé en JSON, comme une liste de chaînes ou une liste d'objets personnalisés.
  • Modifiez le Fonction de rappel AJAX pour utiliser $.each pour parcourir la réponse JSON et accéder aux propriétés col1 et col2.
  • Testez l'appel AJAX pour confirmer que la réponse JSON est désormais reçue correctement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal