Chcę wysłać mój obiekt JSON z Javscript do Action Struts2.JSH Jquery do Struts2 akcja
JSON Próbka Object
{
"lists":["list1","list2","list3","list4","list5"],
"maps": {
"key4":"value4","key3":"value3","key5":"value5","key2":"value2","key1":"value1"
},
"number1":123456789,
"numberarray1":[1,2,3,4,5,6,7,8,9],
"string1":"A",
"stringarray1":["A1","B1"]
}
Moje Jquery Ajax
$.ajax({
type: 'POST',
url: 'json/JSON.action',
data: JSON.stringify(data),
dataType: 'json',
async: false ,
contentType: 'application/json; charset=utf-8',
success: function(){window.alert('Done');}
});
Struts.xml config
<action name="JSON" class="com.actions.json.JsonAction" method="getJSON">
<result type="json"/>
</action>
Moja Akcja Class
public class JsonAction extends ActionSupport {
private String data;
public String getJSON() {
return ActionSupport.SUCCESS;
}
public String getData() {
return data;
}
public void setData(String data) {
this.data = data;
}
}
Mój problem polega na tym, jak otrzymać obiekt JSON w klasie działania.
UWAGA: Post obiektu JSON jest udany .. ja po prostu nie wiem, jak je otrzymać za pośrednictwem klasy działania .. PROSZĘ POMÓC Dziękuję
Czy możesz udostępnić swoją klasę Akcji. Masz również zdefiniowany json typu wynikowego w swoim pliku struts.xml i zdefiniowany przechwytujący –
'class =" coma, ctions.json.JsonAction "' typo in 'coma, ctions'? – Daniel
Cóż, już korzystasz z wtyczki (json), więc wypakuj wystarczająco dużo, by wypełnić swoją klasę akcji danymi JSON wysłanymi z żądania, wszystko, co potrzebujesz, aby zadbać o format json i pewne drobne reguły, spójrz na wtyczkę docs. –