0

使用IBM工作灯版本6.1.0.02-20160314-1430从IBM Workilght服务器收到错误[它是不是一个函数,它是“对象”。]

在参考适配器实现AES下面的链接。 https://mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/7.1/server-side-development/javascript-adapters/using-java-adapters/

它在我的本地服务器上的Eclipse中的预期工作正常。生成的war文件和服务器的相同部署。当我尝试访问获取低于错误响应时从服务器。

下面的东西是交叉检查。

  1. 从服务器收集的战争文件,交叉检查的类文件和服务器的那

  2. 重新启动目前的战争文件部署

我无法辨认出后拍摄错误是。从服务器

错误响应:

{ 
    "status": 200, 
    "invocationContext": null, 
    "errorCode": "PROCEDURE_ERROR", 
    "errorMsg": "Procedureinvocationerror.EcmaError: TypeError: Cannotcallpropertyencryptinobject[ JavaPackagecom.winjit.EncryptionDecryption ].Itisnotafunction, itis\"object\". (API_Adapter-impl.js#7)", 
    "invocationResult": { 
    "isSuccessful": false, 
    "warnings": [ 

    ], 
    "errors": [ 
     "Ecma Error: TypeError: Cannot call property encrypt in object [JavaPackage com.winjit.EncryptionDecryption]. It is not a function, it is \"object\". (API_Adapter-impl.js#7)" 
    ], 
    "responseID": "3161", 
    "info": [ 

    ] 
    } 
} 
+0

会发生这种情况,如果你的服务器运行的是一个JDK版本,并在适配器的Java代码中另一个被开发。你能证实吗? –

+0

谢谢Vivin – Rajendra

回答

0

更新你的JDK 1.8

添加两个安全策略JAR文件在/JRE/lib/security中

  1. local_policy.jar
  2. US_export_policy.jar
0

由于开发服务器(Eclipse)和服务器(Web球体)的JDK不匹配而导致此错误。服务器在JDK 1.6上运行。我降级了我的Eclipse的Java版本。步骤如下(在Mac上)。

  1. 日食 - >首选项 - >爪哇 - >编译器
  2. 选择编译器遵守杆 - > 1.6
  3. 日食 - >首选项 - >爪哇 - >安装的JRE
  4. 添加JDK 1.6的位置(/库/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home)
  5. 应用确定
  6. 重建项目(重新启动服务器,如果必要的话)
  7. 给战争文件部署到服务器是重新生成的bin文件夹

它现在对我来说工作正常

相关问题