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"}
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>
Dans cet exemple, le champ rows de l'action class est l'objet racine qui sera sérialisé en JSON.
Supplémentaire Conseils :
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!