东方通中间件使用龙芯适配程序
问题描述:
东方通无法加载程序jar包中的js
排查过程:
根据以往经验确保东方通处于最新版本,确认版本为最新的
![](https://i-blog.csdnimg.cn/blog_migrate/e7bced7235bc284d12ab4076c15eb2f8.png)
检查容器配置,确认无误
![](https://i-blog.csdnimg.cn/blog_migrate/dbc8fbece6115743414a26c438ddb5cc.png)
在东方通tongweb/bin/external.vmoption 里把-DWebModuleOnly参数值改成true,修改参数成功重启东方通,依然没有解决问题(-DWebModuleOnly=false设为true则屏蔽TongWeb自带validation 、JPA、CDI、EJB、mail,相比false少加载一些资源)
![](https://i-blog.csdnimg.cn/blog_migrate/6062bc5866aa640c26c644ee8fb5c8d5.png)
检查东方通的server.log日志,没有看到错误
东方通给出了建议:如果这个一直有问题,建议在tomcat8上跑一下,调试好,然后移植tongweb7,tomcat8=tongweb7,因为jdk的一些新特性,对一些代码的规范性可能比较严格了
操作如下:
1)我们开发环境使用tomcat8.5版本,验证功能无问题
2)龙芯的环境使用tomcat8.5部署相同的程序,进行问题验证,验证无问题
经东方通排查问题出问题如下:
tongweb中加了*.jar过滤,去掉过滤就可以(/opt/TongWeb7.0/conf/tongweb.properties)(但是这中方法是不可取得,会影响的其他的内容,但是之前一直没有出现)
![](https://i-blog.csdnimg.cn/blog_migrate/fe3ae62a70a508720307c31cbb6a46c8.png)
这个配置本身东方通是没有的,是在后面部署程序的时候错误(具体错误如下图:),然后问了东方通的工作人员加上去的,之前一直没有遇到其他错误,但是对于我们新的程序中jar包中的js却有影响
![](https://i-blog.csdnimg.cn/blog_migrate/bb2b5e4232b92cc7bcb9af368f149a53.png)
新的产品jar包结构如下:
![](https://i-blog.csdnimg.cn/blog_migrate/f128e48abe86533dcd9f6186552592fa.png)
浏览器访问效果
![](https://i-blog.csdnimg.cn/blog_migrate/14cb358e581b99ec89034be5455f60c7.png)
解决方案:
tongweb中加了*.jar过滤,去掉过滤就可以(/opt/TongWeb7.0/conf/tongweb.properties),如果扫描jar包报错,最好是找到是扫描到哪个jar导致的,找到后添加jar过滤,如果添加*.jar过滤就会导致jar中的静态资源中不到
![](https://i-blog.csdnimg.cn/blog_migrate/8f6fdbd58a681c8b5b065d34d0309ff1.png)