Heim >Java >javaLernprogramm >Wie behebe ich den Fehler „Kein Ergebnis für Aktion action.Part und Ergebnis definiert' in Struts2 mit dem JSON-Plugin?

Wie behebe ich den Fehler „Kein Ergebnis für Aktion action.Part und Ergebnis definiert' in Struts2 mit dem JSON-Plugin?

Barbara Streisand
Barbara StreisandOriginal
2024-12-09 01:28:10607Durchsuche

How to Resolve

Unautorisierter Zugriff auf nicht vorhandene Aktionen oder Ergebnisse


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.

Grundlegendes zum Struts2-JSON-Plugin


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.


Problem mithilfe des Stammobjekts lösen


< p>In Ihrem Fall können Sie ein benutzerdefiniertes Stammobjekt wie MyRow definieren, um die Datenstruktur Ihrer Zeilen darzustellen. Anschließend können Sie dieses Stammobjekt in Ihrer Struts2-Konfiguration verwenden, um anzugeben, dass die JSON-Serialisierung es anstelle der gesamten Aktion verwenden soll.


Hier ist ein Beispiel, wie Ihr Code aussehen könnte:< /p>


Wert Objekt:

public class MyRow implementiert Serializable {<br></p>
<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>
<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>
<pre class="brush:php;toolbar:false"><action name=&quot;finder&quot;>




jQuery Erfolgreicher Rückruf:

var handledata = function(data) {<br></p><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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn