电子保单README.MD

FAQ:
1.com.sun.mail.smtp.SMTPSendFailedException: 550 Connection frequency limited
(1)、发信ip受限,更换ip(本地报这个错,确认其他环境会不会因为ip固定,受到邮箱服务的限制)
(2)、退信过多,造成腾讯邮箱服务认为是恶意的请求,因此对IP进行限制
(3)、腾讯官方原因:该服务器IP的发信频率超过腾讯邮箱限制。
               腾讯邮箱对来自相同IP的外部发信服务器有一定的频率限制:
                    1、超过每分钟发信量限制,此IP地址被禁止发信若干分钟。
                    2、超过每小时发信量限制,此IP地址被禁止发信若干小时。
                    3、超过每日发信量限制,此IP地址本日内禁止再发信。
                    4、以上频率限制数值属于腾讯邮箱保密数据,恕不公开。
官方建议:如果您是该服务器IP的管理员,请暂停该服务器IP的发信,稍后降低频率重新尝试发信。 如果您是个人邮箱用户,请向您的电子邮件提供商报告此情况。
2.java.io.IOException: Server returned HTTP response code: 405 for URL:
(1)、请求的URL链接资源无效或资源损坏
(2)、发到cosCloud的文件损坏,造成资源无效。-替换文件即可
3.java.lang.NoSuchMethodError: com.isoftstone.iics.bizsupport.epps.common.utils.CastorUtil.readXML2Bean
(1)、原因未知
(2)、A节点损坏,B节点正常.-将B节点的类拷贝到A节点
4.The host did not accept the connection within timeout of 6000 ms
(1)、tomcat端口被修改,造成访问服务超时
(2)、修改tomcat中的conf/server.xml文件,修改HTTP协议端口
5、Server Response Code is 401 for URL:
(1)、401 HTTP_UNAUTHORIZED 权限验证失败
(2)、在单独发送邮件时,鉴权多次失败 2016.12.26-猜测可能是腾讯云不稳定或者在做更新
6、501 Bad address syntax
(1)、 收件人地址格式不正确!
7、java.lang.String cast to java.io.File
(1)、字符串无法转换成文件
(2)、邮件附件填写错误,写成了字符串!
8、501 mail from address must be same as authorization user
(1)、邮件的来源必须和验证的用户名称一致!
9、java.lang.OutOfMemoryError: unable to create new native thread
原因:大量线程分配时抛出错误            反复申请大量线程并让它们处于运行状态
具体计算公式如下:
(MaxProcessMemory - JVMMemory - ReservedOsMemory) / (ThreadStackSize) = Number of threads
MaxProcessMemory 指的是一个进程的最大内存
JVMMemory         JVM内存
ReservedOsMemory  保留的操作系统内存
ThreadStackSize      线程栈的大小
(1)、物理内存不够用
(2)、操作系统限制了单个进程的使用的最大内存
1, 如果程序中有bug,导致创建大量不需要的线程或者线程没有及时回收,那么必须解决这个bug,修改参数是不能解决问题的。
2, 如果程序确实需要大量的线程,现有的设置不能达到要求,那么可以通过修改MaxProcessMemory,JVMMemory,ThreadStackSize这三个因素,来增加能创建的线程数:
a, MaxProcessMemory 使用64位操作系统
b, JVMMemory   减少JVMMemory的分配
c, ThreadStackSize  减小单个线程的栈大小
10、org.springframework.mail.MailAuthenticationException: Authentication failed; nested exception is javax.mail.AuthenticationFailedException: failed to connect
(1)、验证失败
(2)、解决:被腾讯方拦截(2016.12.29)
11、javax.mail.MessagingException: IOException while sending message;
 java.net.SocketException: Broken pipe
原因通常是当管道读端没有在读,而管道的写端继续有线程在写,就会造成管道中断。(由于管道是单向通信的) SIGSEGV(Segment fault)意味着指针所对应的地址是无效地址,没有物理内存对应该地址。 以下是UNIX的信号解释: 11 / SIGSEGV: Unerlaubter Zugriff auf Hauptspeicher (Adressfehler). 12 / SIGUSER2: User-defined Signal 2 (POSIX). 把_JAVA_SR_SIGNUM改成12只是将信号至成user-defined,让它不报出来而已,不能解决问题。 建议采取的方式: 
            1. 资源没有完全释放,用完后要至NULL 值(JAVA的GC没那么完善) 
            2. 数据库连接顺序关闭!(RS,PS,CONN) 
            3. 优化JAVA虚拟机 加入相应的内存参数! 
            4. 不要在数据库中获取大段文本(即一个栏位的值不要太大) 
            5. JAVA 不推荐 用String 获取大量信息。(容易造成内存泄露,建议用StringBuffer) 
            6. 页面重复提交 
            7. 尽量将METHOD移到JAVA中,在JSP中所有的方法都看做全局变量,编译执行本身就有很多问题。 
            8. 如果是查询功能,尽可能的使用非XA(事务)。 
            9. 尽量用较新较稳定版本的JDK,低版本的JVM本身也有很多BUG,比如1。5的垃圾回收比起1。2,1。3一定是非常明显的进步。 
            10. LINUX系统本身没有这么稳定,有些问题无法避免的~~:)
12、jasperreport模板正常,但是在生成电子保单后无法显示汉字
(1)编码不一致,保持服务端和客户端的编码一致
13、-177 ERROR_CMD_COS_FILE_EXIST 文件已存在cos上传返回错误码

猜你喜欢

转载自www.cnblogs.com/nihaofenghao/p/8929862.html