我们正在开发MobileFirst Hybrid银行应用程序。我们实现了加密机制。来自移动客户端的所有请求都被加密并发送到服务器,并且在工作灯适配器处使用RSA对请求进行解除。对于这个解密过程,我使用了一个Java类来完成解密过程。从我的HTTP Adapter方法我直接调用我的Java类,将我的请求作为参数传递,如下所示
function decryptRequest(param){
var result = com.myapp.Decrypt.decrypt(param);
WL.Logger.error("result "+result);
return {
result:result
};
}
上面的东西在我的独立工作灯服务器上工作正常(在我的桌面工作灯服务器上)。问题是当我把Java类放在我的Worklight Liberty配置文件服务器(这是我的UAT盒子)上时,我收到了一个错误
[错误] FWLSE0099E:调用过程[项目MYApp]时发生错误BusinessAdapter / parseReqestFWLSE0100E:参数:[project MYApp] TypeError:无法在对象[JavaPackage com.myapp.Decrypt]中调用属性decrypt。它不是一个功能,它是“对象”。
我在server / java / com / myapp / Decrypt下有我的Java类(在worklight studio上)。当我接受MYApp.war并检查war文件时,在“MYApp.war \ WEB-INF \ classes \ com \ myapp \ Decrypt.class”下有我的java类“Decrypt”。我更新了我的worklight Liberty服务器(我的UAT服务器)上的“MYApp.war”文件,但即使这样我也收到了上述错误。任何人都可以告诉我,我错过了任何事情。我应该做些什么来使我的HTTP适配器调用Java Decrypt类方法。
非常感谢任何帮助。请帮助解决这个问题,因为它现在已成为我的UAT阶段1测试的显示器。
提前致谢
答案 0 :(得分:0)
这通常发生在Eclipse 中设置的Java版本与用于构建.war文件之间的Java版本不匹配时,安装的Java版本在您部署.war文件的远程服务器中使用。
您需要仔细检查以上内容。