Ibm mobilefirst Ecma错误:TypeError:无法调用属性

Ibm mobilefirst Ecma错误:TypeError:无法调用属性,ibm-mobilefirst,Ibm Mobilefirst,我在worklight项目的适配器中编写了一些java代码。当我试图调用java方法时,我得到一个错误 “responseID:“6”,“errors:{Ecma Error:TypeError:无法调用对象中的属性downloadFile JavaPackage java.classes.FileIOPlugin]。它不是函数,而是 \“对象\” 我已经完全按照下面链接中所述的程序进行了操作。 这是我的项目结构。这个结构有什么问题吗?或者我应该添加更多的内容吗 这就是我试图在adapter

我在worklight项目的适配器中编写了一些java代码。当我试图调用java方法时,我得到一个错误

“responseID:“6”,“errors:{Ecma Error:TypeError:无法调用对象中的属性downloadFile JavaPackage java.classes.FileIOPlugin]。它不是函数,而是 \“对象\”

我已经完全按照下面链接中所述的程序进行了操作。

这是我的项目结构。这个结构有什么问题吗?或者我应该添加更多的内容吗

这就是我试图在adapter-impl.js中调用java非静态方法的方式

function downloadFile() {
    var fileInstance = new com.worklight.JavaCode.FileIOPlugin();
    return
    {   result: fileInstance.downloadFile();    };

}

确保程序包以com开头,例如,将其重命名为“com.classes”。

在实例化对象时尝试添加括号:

var fileInstance = new com.worklight.JavaCode.FileIOPlugin()

检查.project文件,确保其中包含正确的buildCommand标记

<buildCommand>
        <name>org.eclipse.jdt.core.javabuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
    <buildCommand>
        <name>org.eclipse.wst.jsdt.core.javascriptValidator</name>
        <arguments>
        </arguments>
    </buildCommand>
    <buildCommand>
        <name>org.eclipse.wst.common.project.facet.core.builder</name>
        <arguments>
        </arguments>
    </buildCommand>
    <buildCommand>
        <name>com.worklight.studio.plugin.WorklightProjectBuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
    <buildCommand>
        <name>org.eclipse.wst.validation.validationbuilder</name>
        <arguments>
        </arguments>
    </buildCommand>

org.eclipse.jdt.core.javabuilder

我们已经确定了另一种可能的解决方案

  • 将Java编译器级别更改为1.6,并将默认JRE更改为1.6:

您好,谢谢您的回复。但我也试过了。“我也犯了同样的错误。我有一个类似的问题,”克里斯汀·门肯在《解决我的问题》杂志上的回复说,“你发现了!此外,我还必须从服务器上删除以前的“格式错误”应用程序,并重建WAR