同事发来一个用JSP编写的小程序,配置好Tomcat,并使用Proxy配合Apache实现了端口转发。刚开始运行的三天里,一切正常。
今天报告一个非常奇怪的问题。用户登录界面的验证码突然不显示了,仔细检查了Apache虚拟主机和Tomcat的相关配置文件,没有发现被改动的迹象。 Tomcat日志中仅有一句:
ERROR [com.nbqt.util.CaptchaServiceSingleton] – <校验码校验异常 == java.lang.NullPointerException>
在Google里查寻了数篇关于java.lang.NullPointerException的文章,众说纷云。几经尝试,终于找到以下解决办法:
修改tomcat下的/bin/catalina.sh文件。找到-Djava.io.tmpdir=”$CATALINA_TMPDIR”,在这一行的下面加入-Djava.awt.headless=true \ 一共需要修改六处,改完重启tomcat。
错误原因是tomcat没有加载java.awt.headless

近期评论