谁能帮我解决这个问题javax.servlet.ServletException: BeanUtils.populate
答案:1 悬赏:50 手机版
解决时间 2021-05-03 12:13
- 提问者网友:战魂
- 2021-05-02 20:02
弄了好久 也不知道什么错误 哪位高手知道的告诉一下
最佳答案
- 五星知识达人网友:三千妖杀
- 2021-05-02 21:07
javax.servlet.ServletException: BeanUtils.populate 解决方案:ENCTYPE="multipart/form-data"
(1)在用Struts上传文件时,遇到了javax.servlet.ServletException: BeanUtils.populate异常。我的ActionServlet并没有用到BeanUtils这些工具类。感觉很奇怪。后来仔细检查代码发现是在jsp文件里的form忘了加enctype="multipart/form-data" 了。加上之后,果然没有异常了。所以写程序遇到错误或异常应该从多方面考虑问题存在的可能性,想到系统提示信息以外的东西。
(2)ENCTYPE="multipart/form-data"解释:
用于表单里有图片上传。 <form name="userInfo" method="post" action="first_submit.jsp" ENCTYPE="multipart/form-data"> 表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码。默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传;只有使用了multipart/form-data,才能完整的传递文件数据,进行下面的操作. enctype=\"multipart/form-data\"是上传二进制数据; form里面的input的值以2进制的方式传过去。 form里面的input的值以2进制的方式传过去,所以request就得不到值了。 也就是说加了这段代码,用request就会传递不成功, 取表单值加入数据库时,用到下面的: SmartUpload su = new SmartUpload();//新建一个SmartUpload对象 su.getRequest().getParameterValues();取数组值 su.getRequest().getParameter( );取单个参数单个值 |
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯