问题一:
数据覆盖问题
问题现象
条件一致,触发点一致,执行一个自动关联
原因
后面的执行的程序会覆盖前面的程序,导致数据覆盖
问题二:
数据库死锁问题
问题现象
前端一直转圈,不能操作一个数据库,11月出现4次数据库死锁问题
造成原因
多半是因为并发操作数据库,对一张表同时删除同一条数据或者修改的时候删除同一条数据
解决方法
- 重启数据库
- java代码加上同步锁,避免这种问题
- 找到数据库死锁的线程,杀死
问题三:
防火墙问题
问题现象
提示报错异常
原因
防火墙不能访问某些网站
解决方法
打开防火墙
问题四:
数据丢失问题
问题现象
- 流程过程中部分字段数据丢失
- 流程过程中附件丢失问题
- 无流程底表打开提示该条数据已被删除
- 流程底表打开提示该条数据已被删除
造成原因
- 移动端心跳锁失效 导致缓存未移除,他人编辑后,移动端再提交时 导致数据覆盖
- ctp_attachment存的所有附件的表,如果查得到数据则能修复,如果查不到就不能
- formmain是主表数据,ctp_content_all里边存的所有无流程底表的正文包括模板,等信息
- formmain是主表数据,
问题五:
环境问题
问题现象
表单转邮件,表单通过无头浏览器转化成图片转的邮件,但是之后的邮件显示不全
产生原因
Linux并没有中文包工具,通过无头浏览器无法识别中文样式
解决办法
安装一个中文包工具就行了
问题六:
刷新清空值
问题现象
无流程底表刷新之后,某个控件的值被清空
产生原因
自动关联传参的时候有一个空格,导致查不出来数据,把数据清空了
解决办法
把参数空格去掉
问题七:
缓存问题
问题现象
DEE开发调用我们CAP4表单的接口,发现偶尔取不到缓存
产生原因
表单浏览状态下,不涉及到数据的变更,不会存session
解决办法
浏览状态,不涉及到值的改变,浏览状态下直接去数据去值
问题八:
Sqlite数据库驱动问题
问题现象
批量修改以及批量导入的时候传入的是19位Long型的整数,但是查出来缺变成了9位
产生原因
sqlite的Integer存在精度丢失的问题
解决办法
用低版本的sqlite驱动
问题九:
找不到方法
问题现象
java.lang.noSuchMethed
产生原因
- 去调用某个方法的时候找不到Java对应的方法
- 方法参数不一致导致
- 没有找对对应的包
解决办法
修改代码
问题十:
数据库查询问题
问题现象
执行sql语句的时候,通过去重distinct去查询达梦数据库,报错
Sort or calculate in blob or clob(text)
产生原因
达梦数据库不支持大文本去重
解决办法
不用大文本的去重
问题十一:
多人编辑问题
问题现象
待办人打开提示:***正在编辑表单
产生原因
如果表单内设置有计算公式、自动关联、新增明细行等,无法支持多人编辑
这样可能会导致数据覆盖
解决办法
取消这些东西
问题十二:
Long型超出范围
问题现象
表单数据打开报错: For input string
产生原因
人为插入数据库导致long型超出了UUID生成的long范围
解决办法
客户自己修改
问题十三:
java.lang.IndexOutOfBoundsException
问题现象
java.lang.IndexOutOfBoundsException
产生原因
有个数组要取出0位置的值,程序发现那个位置也就是0位置那里并没有值,就会报这个错,也有人说是越界错误,也是可以理解的。数组越界了,那里当然也没有值可以给你取得的
工具一:
arthas
工具二:
fiddler
工具三:
Agent
工具四:
Git
工具五:
SVN