刚刚还在焦头烂额呢!
邻近下班,主任让我把以前我做的程序配置到另一台服务器上,明天要演示,让我今晚一定要部署好。虽然我对自己的写的程序很不自信,一直是这样,每次拿出来时都会出现的问题,感觉快要成为习惯了。还好,这个程序我已经优化过很多次了,在各个方面也测试了很多遍。但是我依旧不自信,这种非常依赖系统环境的应用经过移植很容易出现问题。带着这种不自信,我开始部署操作:
首先,安装tomcat。葡萄哥说服务器上没有安装,我信了并下载了一个,开始配置。才知道目标机子上已经有了,这也无所谓,tomcat嘛!Java环境有问题,版本太低,又下了一个1.8。tomcat搞定!
部署应用,我最担心的事还是来了,应用可以跑起来。但当我点击下载时,发现无法下载!切片也是正常的,生成的压缩包也都在,为什么就不能下载呢?我开始检查配置文件是否正确,arcgis相关文件地址是否准确,并查看了数据库,都没什么问题,就是点击不给提供下载!我开始着急了,这不闹着玩儿么!也许是因为自己在“优化”时,改过的代码没有立即进行很好的测试。部署后的程序很难找到问题所在,tomcat提供的log文件里面记载的东西也非常的有限。我想起老杨常跟我说的——“把关键位置的信息打印出来”,现在后悔也来不及了。我还是检查代码吧,很简单,只许看“下载”那一部分就可以了。果然我修改过代码,在这种情况下,只有各个节点应用负责人才有权限进行下载,而管理员却不能下载。老杨跟我说过这件事,让我给管理员全部的权限,可能没有改全。修改这个“if”条件语句!太着急了,也许是太自信了,调试时这部分出问题,每次跳到这我都会暗暗地对自己说一句“stupid!”。其实很简单的一句,让我搞得那么复杂:
if(!user.getRole().equals("admin")&&!m.getUserid().equals(user.getUserid())){
return null;
}
好在问题终于得到了解决,当然也发现了新的问题——删除文件不彻底!好吧,我改!这部分应该不难,我已经能够确定错误出现的位置了。