JSP请求对象没有参数

时间:2010-03-03 12:17:01

标签: java jsp extjs

我有一个JSP文件create.jsp,它从包含数据参数的Ext网格接收POST请求。 Firebug显示如下的POST:

{"data":{"a":"","b":"","c":""}}

当我尝试使用此方法从create.jsp中的请求对象检索数据时,

request.getParameter("data");

它返回null。实际上,请求对象不包含任何参数或属性。

我已经使用包含xaction的POST测试了create.jsp:read然后request.getParameter(“xaction”)按预期返回“read”。

3 个答案:

答案 0 :(得分:4)

这是一个JSON字符串。它是否真的是作为请求参数发送的?即

data={"data":{"a":"","b":"","c":""}}

这些内容通常会被发送为“普通香草”作为请求正文,您需要HttpServletRequest#getInputStream()HttpServletRequest#getReader()处理。

更新:抱歉,没看到你已经弄清楚了。我在浏览器标签中显然打开了这个主题太久了。但实际上,只要请求未通过“普通”HTML表单发送,您就需要自己解析请求体。请记住字符编码,否则你会遇到麻烦。

答案 1 :(得分:0)

似乎data有多个值,请尝试:

request.getParameterValues("data");

答案 2 :(得分:0)

使用request.getReader()方法结束手动解析请求。

相关问题