zoukankan      html  css  js  c++  java
  • 使用SSH过程中遇到的几个问题及解决方案

    一、HTTP Status 500 - org.springframework.orm.hibernate3.HibernateOptimisticLockingFailureException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1; nested exception is org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1

    解决办法:

    主键提前删除了,放到语句后面就没事了

    参考:

    http://blog.csdn.net/ssyan/article/details/7471343

    二、java.lang.OutOfMemoryError: Java heap space解决方法

    解决方法:

    引起java.lang.OutOfMemoryError: Java heap space异常,可能是由JAVA的堆栈设置太小的原因

    根据网上的答案大致有以下两种解决方法:

    1、在D:/apache-tomcat-6.0.18/bin/catalina.bat最前面加入:set JAVA_OPTS=-Xms384m -Xmx384m

    注意:只有startup.bat启动tomcat,设置才能生效,如果利用windows的系统服务启动tomcat服务,上面的设置就不生效了,
    就是说set JAVA_OPTS=-Xms384m -Xmx384m没起作用             

    2、在Eclilpse中修改启动参数,在VM arguments 加入了-Xms384m -Xmx384m,设置如下图所示

                           

    问题解决。

    不过发现最后还是会出现内存不足的情况,只能每次运行都重启tomcat.问题解决,就是有点耗时。 

    参考:

    http://www.cnblogs.com/linjiqin/archive/2011/04/27/2030115.html

    三、 java.lang.NullPointerException

    解决方法:

    NullPointerException异常的原因?? 
        所谓空指针异常,是因为用空(null)去调用属性或方法。 
      null表示没有这个对象,既然没有这个对象,那么去调用他的属性和方法,就会报异常。 
      <--主要有以下几种原因: 
      1、使用了未初始化的变量(虽然已经声明) 
      2、使用了未初始化的对象(虽然已经声明) 
      3、使用了关键字或已存在的类名作变量对象方法或类名。 
      当应用程序试图在需要对象的地方使用 null 时,抛出该异常。 
      <--这种情况包括: 
      调用 null对象的实例方法。 
      访问或修改null对象的字段。 
      将null作为一个数组,获得其长度。 
      将null作为一个数组,访问或修改其时间片。 
      将null作为Throwable值抛出。

    四、网页报错:HTTP Status 500 - org.springframework.orm.hibernate3.HibernateJdbcException: JDBC exception on Hibernate data access; nested exception is org.hibernate.exception.GenericJDBCException: could not insert: [com.zrdm.domain.Votecontext]

    服务器报错:Servlet.service() for servlet [default] in context with path [/votesystem] threw exception [org.springframework.orm.hibernate3.HibernateJdbcException: JDBC exception on Hibernate data access; nested exception is org.hibernate.exception.GenericJDBCException: could not execute query] with root cause java.sql.SQLException: Illegal mix of collations (gbk_chinese_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'like'

    解决办法:

    编码问题不统一造成的。本项目采用的是UTF-8编码,但是里面混杂了GBK编码。所以造成这个问题。查找项目中所有gbk关键字,然后改为UTF-8,解决问题。

    五、Referenced file contains errors (http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd)

    解决办法:

    以后struts2的校验器的规范要改成: 
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN" "http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd">

    参考:http://blog.csdn.net/happyjiahan/article/details/6535793

     

    六、action重复调用

    问题:使用<s:action>标签,jsp加载时自动执行action,发生数据不断循环重复

    原因:为定义了两个相同方法但不同名的action。

    解决办法:更换思路http://www.cnblogs.com/HeroZearin/articles/2729987.html

    参考:http://blog.sina.com.cn/s/blog_451f5962010150um.html

     

     



  • 相关阅读:
    构建之法作业要求 20160922
    构建之法作业截止 20160908
    作业成绩 20160901
    动态范围理解
    解像力理解以及单位换算;
    QT:基本知识(一);
    qml: 截图(单窗口);
    (转载)python: getopt的使用;
    python: with的使用;
    qml: 自定义输入框
  • 原文地址:https://www.cnblogs.com/zrdm/p/5536029.html
Copyright © 2011-2022 走看看