浏览 4840 次
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2008-02-21
通过request.getReader()或者是request.getInputStream()都无法获得数据流,不知有什么方法能获得 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-02-22
问题已解决。
在struts2中,DispatchFilter已经调用过request.getParameter()的方法,所 以不能使用request.getInputStream() 或者 request.getReader()获得数据 。 可以通过request.getParameterMap()的方式获得key,这个key就是你需要的字符流。 j2ee 1.4文档中对于reuqest.getParameter()的解释,如果调用了request.getParameter()就不能使用request.getInputStream() 或者 request.getReader() 如果调用了 request.getInputStream() 或者 request.getReader(),也就不能通过reqeust.getParameter()获得数据了,这2类方法相互影响. 以下是j2ee 1.4文档的解释,我英文不好,不知道理解的意思是否正确 http://java.sun.com/j2ee/1.4/docs/api/javax/servlet/ServletRequest.html#getParameter(java.lang.String) 不知道是否还有别的方法。 |
|
返回顶楼 | |
发表时间:2008-06-12
你的理解不正确- -
request.getInputStream() 和 request.getParameter()先后顺序无关。 struts2比较妖,request对象经过多次封装,递交过来的post请求必须包含content-type,如果没有,那就不能获得inputStream() 据我所知request.setCharactorEncoding()是不能在request.getParameter()之后运行的。 |
|
返回顶楼 | |
发表时间:2008-09-10
把contentType改为text/html,搞掂!!!!
|
|
返回顶楼 | |
发表时间:2008-11-14
我也遇到跟你一样的问题。我发现去掉content-type的设置就可以。但是这样提交上去的数据乱码。
|
|
返回顶楼 | |