因此,在调用部署在 WebSphere Application Server v8.0.0.8 上的 HTTP 适配器(来自 worklight 6.2)时出现此错误:
TypeError: Cannot call property getData in object [JavaPackage com.image.Encoder]. It is not a function, it is "object". (ImageAdapter-impl.js#3)
FWLSE0101E: Caused by: [project worklight]nullorg.mozilla.javascript.EcmaError: TypeError: Cannot call property getData in object [JavaPackage com.image.Encoder]. It is not a function, it is "object". (ImageAdapter- impl.js#3)
at org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3687)
...
据我在互联网上查找的信息,部署基于Java的WL适配器似乎并不太复杂。您只需将 server/java 包编译到 .war 类文件夹中,并将其作为企业应用程序通过更新或作为新安装部署到 WAS。 有谁有关于如何部署基于 java 的适配器以便正确处理它的确切指南吗?
附注当然,我尝试过重新启动服务器,并且适配器确实可以在本地环境中工作,尽管本地是自由服务器。
附注我在本地环境中确实遇到了同样的问题,但通过将 server/java 文件夹添加到“属性 > Java 构建路径 > 源”,有时只是添加和删除新类来修复它。最后一个可能只是重写了构建属性,实际上这个问题有很多问题,但我认为它与我的问题无关。
最佳答案
当使用的 Java 版本之间不匹配时,通常会发生此类问题。
- 如果您使用的是 Java 6 或 7,请确保您的 Eclipse 首选项也使用相同的 Java 级别(Eclipse > 首选项 > 编译器 > 编译器合规级别)
- Eclipse 确实使用了正确的版本(Eclipse > 首选项 > 安装的 JRE)。
同样,在应用程序服务器(Eclipse 外部)中,它也必须使用与编译项目相同的 Java 级别。
相关问题:
关于java - 基于 Java 的 Worklight HTTP 适配器部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29888482/