首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件开发 >

沃杂志后台项目开发测试有关问题总结 之 后台有关问题

2013-09-11 
沃杂志后台项目开发测试问题总结 之 后台问题/***********************后台bug总结**********************

沃杂志后台项目开发测试问题总结 之 后台问题

/***********************后台bug总结**********************************
下面是在工作中常用的一些后台的bug,
目标:总结常用的问题的解决方法,提高开发效率
开始时间:2011-11-10
编写人:happ
参阅书籍:
相关项目:《中国联通电子杂志后台【2011-10~】 技术:ssh1+oracle+javaScript||jQuery》
*/

目录【按项目划分】

1 杂志管理项目中遇到的bug【2011-10~2012-1】
??? 1.1 在做验证杂志不能重复时 【2011-11-10】
?? ?bug描述:Caused by: org.hibernate.hql.ast.QuerySyntaxException: unexpected token: Z near line 1,?? column 97 [from com.sinovatech.mall.magazine.model.dto.TMagazineDTO Z where Z.isDel=0 and????? Z.name='happ043' Z.period='2018002']
? ??原因:在where 条件中新增的查询条件之前没有加"and",请仔细看 “where Z.isDel=0 and Z.name='happ043'?? Z.period='2018002'”
? ?解决方案:在“Z.period” 前边加“and” where Z.isDel=0 and Z.name='happ043' Z.period='2018002'

?

??? 1.2 在做会员管理的会员信息的查询时【2011-11-14】?

?

??????? bug描述:org.apache.commons.beanutils.ConversionException: No value specified for 'Date'
??????? ??org.apache.commons.beanutils.ConversionException: DateConverter does not support default String to 'Date' conversion.
??????? 原因:在jsp页面上的数据类型时String,而在实体中定义的是Date,所以在提交时往bean中填充值时出错
??????? 解决法案:将该字段的name属性的值改为不和bean中一样的,在提交时就不会自动填充值,然后在后台自动取值就可以?


???? 1.3 在做会员管理会员信息的编辑【2011-11-15】?

?

??????bug描述:java.text.ParseException: Unparseable date: ""?
???? ?原因:在后台action中索取到的日期字段的值为空
???? ?解决方案:加上不为空的验证即可?


???? 1.4 在做会员管理会员信息的编辑【2011-11-15】?

?

??????bug描述:java.text.ParseException: Unparseable date: "2011-11-03"
???? ?原因:在后台action中索取到的日期字段的值为 2011-11-03 而SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");包含时分秒,格式不匹配
???? ?解决方案:将取到的值加上时分秒,或者将格式中的时分秒去掉?


???? 1.5 在做会员管理会员信息的编辑【2011-11-15】?

?

??????bug描述:request.setAttribute("error", "1");,但是在前台取怎么都取不到
???? ?原因:未知???? ?
???? ?解决方案:将tomcat重启就可以取到了?


???? 1.6 在做会员管理会员信息的查看时【2011-11-15】?

?

??????bug描述:org.apache.jasper.JasperException: File "/WEB-INF/tld/extremecomponents.tld" not found
???? ?原因:在所对应的jsp页面引入tabglib时路径写错???? ?
???? ?解决方案:找到对应的页面将其改对就可?


???? 1.7 在做会员管理会员信息的查看时【2011-11-15】?

?

??????bug描述: <tr align="center" bgcolor="#f7f7f7">
??????性别:
?????</td>
?????<td align="left" bgcolor="#f7f7f7">
??????<c:if test="${m.sex eq '0' }" >女</c:if>??????
????????? ????<c:if test="${m.sex eq '1' }">男</c:if>????????
?????</td>
????</tr>
????在前台显示的是“女男”,其实应该显示“女”
???? ?原因:在所对应的jsp页面未引入<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>标签??? ?
???? ?解决方案:找到对应的页面将<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>引入即可

?
???? 1.8 在做会员管理-消费记录的查询时【2011-11-16】

?

??????bug描述: /**
???? * <ul>
???? * <li> <b>???:</b> <br />
???? * <p>
???? * ?????TMemberOrderDTO??Action
???? * </p>
???? * </li>
???? * <li><b>??????????</b></li>
???? * <li><b>???в????</b></li>
???? * <li> <b>????????</b><br />
???? * <p>
???? * ????:2011-11-08 16:17:54<br />
???? * ????:CodeGenerator
???? * </p>
???? * </li>
???? * <li><b>???????</b></li>
???? * </ul>
???? */
???? 在action中出现了乱码,如上所示
???? ?原因:action原来采用的是GBK编码,后来将其改为UTF-8,就出现了如上所示的乱码??? ?
???? ?解决方案:将文件改为GBK编码,变为正常的中文后,拷贝文件的内容,然后将文件的编码改为UTF-8,将文件的内容覆盖,即可;如果不行,将该文件先关闭然后重新打开即可
???? ?
???? 1.9 在做会员管理-消费记录的分页时【2011-11-16】

?

???????bug描述:javax.servlet.ServletException: org.apache.jasper.JasperException: javax.el.ELException: Error reading 'memberName' on type com.sinovatech.mall.member.model.dto.TMemberDTO_$$_javassist_47
???? ???org.apache.jasper.JasperException: javax.el.ELException: Error reading 'memberName' on type com.sinovatech.mall.member.model.dto.TMemberDTO_$$_javassist_47
???? ???javax.el.ELException: Error reading 'memberName' on type com.sinovatech.mall.member.model.dto.TMemberDTO_$$_javassist_47
???? ???org.hibernate.LazyInitializationException: could not initialize proxy - no Session
???? ???报如上异常,还是支出在jsp页面的? ?<td>${mem.tbTMemberDTO.memberName}</td>这一行报错,将其改为?<td>${mem.tbTMemberDTO.id}</td>后不报错
???? ?原因:从网上查org.hibernate.LazyInitializationException: could not initialize proxy - no Session这个异常是原因是hibernate的session已经关闭,集合没有被初始化。
???? ?? 在hibernate中:hibernate3 默认支持延迟加载(lazy="proxy"我们可以把proxy看作是true
???? ?解决方案:将映射文件中<many-to-one> 中设置 lazy="false"
???? ?
???? 2.0 在做会员管理-消费记录的查询时【2011-11-16】

?

???????bug描述: could not resolve property: servicename of: com.sinovatech.mall.member.model.dto.TMemberOrderDTO???? ???
???? ?原因: 异常的意思是不能解析“servicename”属性,就是在实体com.sinovatech.mall.member.model.dto.TMemberOrderDTO 里找不到对应的属性
???? ?解决方案:看看实体TMemberOrderDTO中的值是怎么拼写的,估计是servicename拼写错误,将其改正即可
???? ?
???? 2.1 修改杂志管理-杂志信息-下载的bug时【2011-11-21】

?

???????bug描述:点击文件下载链接进行下载,采用ajax提交方法,显示alert弹出框,框中有“pk U”的字样,并且不能弹出下载框??
???? ?原因: ajax不能完成文件下载,只能完成请求提交并获取返回信息,不能处理下载文件的response
???? ?解决方案:改为??var url = "${ctx}/magazineshow/downLoadFile.do?fileName="+name+"&file="+value;?
??window.location.href=url;提交方法
??
???? 2.2 修改杂志管理-杂志信息-下载的bug时【2011-11-21】【可以看看自己的javaeye博客中《JAVA中文字符编码问题详解》这篇文章】

?

???????bug描述:在jsp页面采用get方式提交中文中,用struts1在后台取值时出现乱码 "/upload/magfile/1321593057562/???????¥3???.zip"?
???? ?原因:在采用get方式进行提交时需用encodeURI 方法进行两次编码如:name=encodeURI(encodeURI(name)),
???? ?? 并且在后台进行解码:file = java.net.URLDecoder.decode(file,"UTF-8");
???? ?? 如果不进行解码 则会出现如下结果:/upload/magfile/1321593057562/%E6%9D%82%E5%BF%97%E5%A5%B3%E5%8F%8B.zip???? ??
???? ?解决方案:改为??var url = "${ctx}/magazineshow/downLoadFile.do?fileName="+name+"&file="+value;?
????window.location.href=url;提交方法


???? 2.3 发布magazine时【2011-11-23】?

?

??????bug描述:Caused by:
????org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Communications link failure
????The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.)
???? ?
???? ?原因: mysql 服务器所在的机器开着防火墙或者没给开放访问权限
???? ?解决方案: 请客户给开放
?
???? 2.3 发布magazine时【2011-11-23】?

?

?

??????bug描述:mysql SQL Error: 1146, SQLState: 42S02 (linux)
???? ?2011-11-24 17:06:20,367 ERROR [org.hibernate.util.JDBCExceptionReporter] - Table 'magazine.BMS_DOMAIN' doesn't exist
???? ?Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'magazine.BMS_DOMAIN' doesn't exist
??????? at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
??????? at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
??????? at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
??????? at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
??????? at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
??????? at com.mysql.jdbc.Util.getInstance(Util.java:384)
??????? at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1054)
??????? at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3566)
??????? at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3498)
??????? at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1959)
??????? at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2113)
??????? at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2568)
??????? at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2113)
??????? at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2275)
??????? at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92)
??????? at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:186)
??????? at org.hibernate.loader.Loader.getResultSet(Loader.java:1787)
??????? at org.hibernate.loader.Loader.doQuery(Loader.java:674)
??????? at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
??????? at org.hibernate.loader.Loader.doList(Loader.java:2220)
??????? ... 48 more
???? ?
???? ?
???? ?原因:项目在开发的时候在WINDOWS平台下开发的,开发完了之后在LINUX环境上部署好之后,运行时MySQL数据库报错,提示为某个表不存在之类的错误信息,后来修改了MySQL的配置文件将大小写敏感去掉,问题解决。
???这个问题的根源在于,在 MySQL 中,数据库和表其实就是数据目录下的目录和文件,因而,操作系统的敏感性决定数据库和表命名的大小写敏感。这就意味着数据库和表名在 Windows 中是大小写不敏感的,而在大多数类型的 Unix/Linux 系统中是大小写敏感的。
???MySQL大小写敏感可以通过配置文件的lower_case_table_names参数来控制。
???? ???
???? ?解决方案:WINDOWS:
???编辑MySQL安装目录下的my.ini 文件,在[mysqld]节下 添加 lower_case_table_names=0 (备注:为0时大小写敏感,为1时大小写不敏感,默认为1),可以实现MySql按照建表Sql语句的大小写状态来定义表名。
???LINUX:
???编辑/etc/my.cnf文件,在[mysqld]节下 添加 lower_case_table_names=1 参数,并设置相应的值 (备注:为0时大小写敏感,为1时大小写不敏感,默认为0)。
??
??注意:看是否有修改/etc/my.cnf的权限,如果不能修改,请客户开放修改配置文件的权限
?
??2.4? 测试magazine时【2012-1-10】??

?

???bug描述:
?? ?at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
???at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
???at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
???at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
???at com.sinovatech.web.filter.BmsIntegrationFilter.doFilter(BmsIntegrationFilter.java:69)
???at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
???at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
???at com.sinovatech.common.web.filter.EncodeFilter.doFilter(EncodeFilter.java:59)
???at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
???at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
???at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
???at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
???at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
???at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
???at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
???at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
???at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
???at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
???at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
???at java.lang.Thread.run(Unknown Source)
???? ?原因:
???? ?解决方案:
????? 注意:


??2.5? 第三轮测试magazine时【2012-1-10】??


???bug描述:Caused by: java.lang.NoSuchFieldError: deferredExpression
?? ?
???? ?原因:
???? ?解决方案:
???? ?注意:
?


我的异常网推荐解决方案:The driver has not received any packets from the server.,http://www.myexception.cn/j2ee/345243.html

热点排行