一个网站程序,有表单提交页面,原本程序运行得很正常,在我将机器换为win7后,这个表单就不正常了,跟踪了一下,发现,在action的方法中,取不到表单中的值,没有提示其它错误。而程序我没有改过,只可能是环境影响了。但是什么影响呢?一直搞不清。
今天又跟踪,仔细看了一下request变量,发现里面有一条错误信息(这条错误信息在tomcat的日志中也没有):"Processing of multipart/form-data request failed. c:\\upload__482c561e_133678ba8cd__8000_00000000.tmp (拒绝访问。)" (id=241)。看来是tomcat没有权限在c盘的根目录下建立临时文件。是谁让它在这儿建临时文件的呢?在工程所有配置文件中搜索了一下“c:”,发现是在struts.xml中:<constant name="struts.multipart.saveDir" value="c:\"></constant>。将这一行注释掉,程序可以正常运行了。