Die Fehlermeldung „Kein Ergebnis für die Aktion definiert. Teil und Ergebnis {"col1": "col1", "col2": "col2"🎜>" zeigen an, dass Struts2 das nicht finden kann angegebene Aktion oder Ergebnis in Ihrer Anwendungskonfiguration.
Das Struts2-JSON-Plugin serialisiert die gesamte Aktion standardmäßig in JSON , ausgenommen transiente Eigenschaften oder solche ohne Getter. Sie können dieses Verhalten jedoch anpassen, indem Sie ein Stammobjekt angeben, das definiert, welcher Teil der Aktion serialisiert werden soll.
Hier ist ein Beispiel, wie Ihr Code aussehen könnte:< /p>
Wert Objekt:
public class MyRow implementiert Serializable {<br></p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">private static final long serialVersionUID = 1L; private String col1; private String col2; // Getters public String getCol1(){ return this.col1; } public String getCol2(){ return this.col2; }
Aktion Klasse:
public class PartAction implementiert Serializable {<br></p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">private static final long serialVersionUID = 1L; private List<MyRow> rows; // Getter public List<MyRow> getRows() { return this.rows; } public String finder() { String result = Action.SUCCESS; rows = new ArrayList<MyRow>(); try { Iterator it = findList.iterator(); while(it.hasNext()) { SearchResult part = (SearchResult) it.next(); MyRow row = new MyRow(); row.setCol1(part.getcol1()); row.setCol2(part.getcol2()); rows.add(row); } } catch (Exception e) { result = Action.ERROR; log.error(e); } return result; }
Struts.xml Konfiguration:
<package name="default" namespace="/ajax" erweitert="json-default"><br></p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><action name="finder">
jQuery Erfolgreicher Rückruf:
var handledata = function(data) {<br></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">$.each(data, function(index) { alert(data[index].col1); alert(data[index].col2); });
Das obige ist der detaillierte Inhalt vonWie behebe ich den Fehler „Kein Ergebnis für Aktion action.Part und Ergebnis definiert' in Struts2 mit dem JSON-Plugin?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!