这个问题困扰了我两天,始终在程序中查找原因,但是发现在开发环境中运行Tomcat是不会报这个错误的,系统也能正常运行,在后台添加信息修改信息都可以。唯独在TOMCAT下启动 startup.bat 后,在系统后台对信息只能添加和删除,不能进行信息修改,修改就会报系统错误。后来在网上各个网站查找相应的错误解决方法,都各有各的说法,最后发现,问题可能出在TOMCAT本身,于是修改tomcat的运行内存,此问题算是解决。但是还没有经过长期测试,具体稳定性不能肯定。
解决方法:在tomcat_home/bin目录下找到catalina.bat,用文本编辑器打开,加上下面一行:
set JAVA_OPTS= -Xms1024M -Xmx1024M -XX:PermSize=256M -XX:MaxNewSize=256M -XX:MaxPermSize=256M
解释一下各个参数:
-Xms1024M:初始化堆内存大小(注意,不加M的话单位是KB)
-Xmx1029M:最大堆内存大小
-XX:PermSize=256M:初始化类加载内存池大小
-XX:MaxPermSize=256M:最大类加载内存池大小
-XX:MaxNewSize=256M:新生代内存的最大可分配大小