本地启动开发环境,登录后点击所有模块都提示没有许可,实际上有许可的问题排查及解决方案原创
金蝶云社区-范老师加油
范老师加油
1人赞赏了该文章 428次浏览 未经作者许可,禁止转载编辑于2024年03月30日 19:36:43

有开发人员反馈,在本地启动环境,联的远程的开发环境的MC,明明登录人员在开发环境有许可的,却在启动本地环境后,登录上去报没有许可的错误。

image.png

且进入许可分配页面也报错

image.png

点开报错报

kdcosmic-xxx-8881:null

Key: 
TraceId:6600404a02d94063
Instance:kdcosmic-zmylsy-8881-8437904177
发生时间:Tue Mar 26 15:27:10 CST 2024
===================================================
调用堆栈:
java.lang.NullPointerException
at kd.bos.permission.util.SchemeUtil.getPublicKeyFromMC(SchemeUtil.java:520)
at kd.bos.permission.util.SchemeUtil.getPublicKey(SchemeUtil.java:502)
at kd.bos.permission.util.SchemeUtil.signatureValidate(SchemeUtil.java:814)
at kd.bos.permission.util.SchemeUtil.generateSignature(SchemeUtil.java:726)
at kd.bos.permission.util.SchemeUtil.generateSignature(SchemeUtil.java:437)
at kd.bos.permission.service.AbstractPermissionServiceImpl.generateSignature(AbstractPermissionServiceImpl.java:7286)
at kd.bos.servicehelper.permission.PermissionServiceHelper.generateSignature(PermissionServiceHelper.java:3089)
at kd.bos.license.engine.LicenseUserRelEngine.generateSignature(LicenseUserRelEngine.java:1057)
at kd.bos.license.engine.LicenseUserRelEngine.signature(LicenseUserRelEngine.java:726)
at kd.bos.license.engine.LicenseUserRelEngine.verifySignAndTotal(LicenseUserRelEngine.java:700)
at kd.bos.license.engine.LicenseUserRelEngine.getLicRelBitMapFromDbByGroupIds(LicenseUserRelEngine.java:655)
at kd.bos.license.engine.LicenseUserRelEngine.rebuildCurrAccountLicRelBit(LicenseUserRelEngine.java:561)
at kd.bos.license.engine.LicenseUserRelEngine.getLicRelBitFromCurrAccount(LicenseUserRelEngine.java:528)
at kd.bos.license.engine.LicenseUserRelEngine.getLicRelBitFromAllAccount(LicenseUserRelEngine.java:199)
at kd.bos.license.engine.LicenseUserRelEngine.getLicAllocateNumberByGroupIds(LicenseUserRelEngine.java:139)
at kd.bos.license.formplugin.dataprovider.LicenseGroupConsumeProvider.getData(LicenseGroupConsumeProvider.java:179)

 


根据这个错误定位到了具体错误的代码处,并从中知道,我们获取的许可都是需要通过mc去获取的,

同时也定位到获取的url是错误的,排查到mc里面配置的服务地址与启动类的地址是不符合的

这个是在MC配置的地址,后缀带/mc

image.png

而启动参数配置的mc参数是不带mc的

image.png


所以在发生此类问题的时候要排查下是否是参数配错导致的。

赞 1