开发中遇到的问题及解决方案总结一

####################问题#########################
1.Unable to create this part due to an internal error. Reason for the failure: Project MNDPTIMS is not configured as a MyEclipse Web-Struts Project. Therefore the MyEclipse Struts Editor may not be used with struts-config.xml. The default XML Editor has been used to open the file instead.
解决方案一:
  Unable to create this part due to an internal error. Reason for the failure: Project MNDPTIMS is not configured as a MyEclipse Web-Struts Project. Therefore the MyEclipse Struts Editor may not be used with struts-config.xml. The default XML Editor has been used to open the file instead.刷新工程即可
解决方案二:MyEclipse-->Add Struts Capabilities
**************************************************
2.用户登陆无法实现页面跳转问题,总是将页面跳到缺省页面/ok.jsp
解决方案:无法实现用户的useType校对,数据表中的userType为空
**************************************************
3.数据库表中汉语乱码问题
解决方案:在hibernate.cfg.xml的jdbc的URL后追加useUnicode=true&characterEncoding=utf8
**************************************************
4.超时
需要在com.dpt.ec.sys.util.TimeoutFiler.java中进行设置,超时检测设置
去除超时检测后没有出现超时问题
**************************************************
**************************************************
5.页面查询标准功能实现
提示错误:com.dpt.ec.web.action.TeamApplyResult.java出错
解决方案:查询的参考程序中第143行的NumberPager为Pager,提示出错,但没有报出错的原因,尝试将其改为NumberPager则可以实现所有功能,但显示的美学效果不好,功能已完全实现
错误原因:未知
**************************************************
**************************************************
6.对SSH三大框架的.jar包进行封装
* widows/preferences/java/bulid path/user libraries/new/******/import所有.jar包
亦可分别建立struts/hibernet/spring的.jar包,方便各框架更新时替换使用
* 新增库可新增系统自带库,一般有三个系统库必须加进来,加用户自定义库的方法,为选定项目/properties/java build path/add libraries/usr liberais
**************************************************
**************************************************
7.没有对用户类型进行判断,最初是与“管理员”进行比较,而数据库中存放的是"admin",这样代码正确的话,客户端不会给出任何错误提示,后台也没有错误提醒,但实际上并没有成功,在进行管理员密码修改和添加用户时都出现这样的情况
* 解决方案:对用户类型进行正确的判断
**************************************************
**************************************************
8.在对用户类型进行判断时,用户类型与字符串的比较不能使用期!=或==,而应该使用equals()
* 解决方案:对用户类型进行正确的判断
**************************************************
**************************************************
9.无法正确显示头文件
* 解决方案:现文件中类似注释的东西,是在IE6,IE7 不同客户端解析HTML语言时使用,不能去掉,如果IE6解析则将标签自动加载
**************************************************
**************************************************
10.文件不能正确上传,只在数据库中添加了除文件及文件名以外的东西
* 解决方案:FormFile fFile = form.getFile();
  if (fFile.getFileSize() != 0) {
   if (fFile.getFileSize() > 1024*1024) 
   {
    String errorTitle = messages.getMessage("admin.file.errortitle");
    String errorMsg = messages.getMessage("admin.file.errormessage");
    httpSession.setAttribute("ERRORTITLE", errorTitle);
    httpSession.setAttribute("ERRORMSG", errorMsg);    
    return mapping.findForward("warning");
   }
   
   file.setFileName(fFile.getFileName());
   InputStream streamIn = fFile.getInputStream();
   byte[] b = new byte[streamIn.available()];
   streamIn.read(b);
   streamIn.close();
   file.setFile(Hibernate.createBlob(b));
  }
注意这一段中的file(com.dpt.ec.data.bean.File)和fFile(FormFIle)
**************************************************
**************************************************
11.在做文件修改时,发生如下错误:can't find fileForm in any scope
* 解决方案:在做文件上传时参考了一些资料,选择了一个比较正规的做为参考,但发现过于繁杂,比如他的两个action,一个为fileModify,另一个为fileUpdate,分别做了两个Action,在每一个中都做了用户类型的检验,防止非法操作。我觉得两次检验既有其合理,也有其不合理处;合理在于可以最大限度地防止非法操作,且极其友好;不合理处在于工程量增加,且两次校验改为一次也没有什么不可以。所以我将其改为一次,但改为一次时,就找不到了fileForm,在原来的代码中strutsconfig.xml和fileMofify中使用了fileForm,所以可以找得到。解决上述错误的方法即为,在Strutsconfig.xml 配置文件中的/goFileUpload中加入name="fileForm" scope="request",即可。但就安全性、健壮性和商业化而言,用两次检验更好。
**************************************************
**************************************************
 
 
      本文转自 gaochaojs 51CTO博客,原文链接:http://blog.51cto.com/jncumter/164018,如需转载请自行联系原作者

 

上一篇:MySQL的分页技术总结


下一篇:gdb调试之---当commit时碰到的第一个等待事件是什么?