我想将一个json字符串作为纯字符串发布到一个动作中,然后使用gson将该字符串转换为List,但该字符串仍被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();
            }
        })
我希望将 pks 作为通用字符串而不是 json 对象发布。但是当我调用 jquery 代码时,结果并没有调用 setPks 方法。这么奇怪。