Send JSON object to Struts 2 action by using strut2 jquery plugin tags

偶尔善良 提交于 2019-12-01 07:17:08

问题


We can send JSON to Struts2 actions by json interceptor. There is good sample at http://tech.learnerandtutor.com/send-json-object-to-struts-2-action-by-jquery-ajax/.

The json interceptor requires that the requests content type be application/json or application/json-rpc this can be set when we directly use Ajax like:

$.ajax({
    url: "writeJSON.action",
    data: data1,
    dataType: 'json',
    contentType: 'application/json',

But we are using struts 2 jquery plugin tags (sj:a and sj:submit ...) which manage ajax calls for us.

Is there any way that we can set the contentType with these tags.

I did not find tag properties for this.

If it is not implemented is there any other way to set it.


回答1:


You should set Content-type: application/json header to xhr object that is used by the $.ajax().

$.ajax({
    url: "writeJSON.action",
    data: data1,
    dataType: 'json',
    contentType: 'application/json',

The plugin is using $.ajaxSubmit(), this kind of submission should be eliminated because it doesn't work with json data.



来源:https://stackoverflow.com/questions/39750113/send-json-object-to-struts-2-action-by-using-strut2-jquery-plugin-tags

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!