json文字列をプレーン文字列としてアクションに投稿し、gsonを使用して文字列をリストに変換したいのですが、文字列はjquery / webworkによってjsonオブジェクトとして扱われます、jquery 1.43 + webwork + gsonを使用しています、jqueryはありませんjsonプラグインか何か。
ここにアクションがあります:
public class ImageAction extends BaseAction {
private String pks;
public void setPks(String pks) {
this.pks = pks;
Gson gson=new Gson();
List<Map> list=gson.fromJson(pks,new TypeToken<List<Map<String,String>>>(){}.getType());
System.out.println(list.size());
}
......
}
jqueryコード:
j$.ajax({
url:approveUrl,
data: {pks:'[{"userName":"theoffspring"}]'},
// dataType:'json',
type:'post',
// traditional: true,
success:function (response) {
hideProgressBar(parent.document)
if (response.result==false){
alert(response.msg);
return;
}
// document.location.reload();
}
})
jsonオブジェクトではなく共通の文字列としてpksを投稿したい。しかし、jqueryコードを呼び出すと、setPksメソッドが呼び出されないことがわかりました。とても奇妙。