【问题标题】:How to get the hash code of a Javascript implemented interface如何获取 Javascript 实现的接口的哈希码
【发布时间】:2011-10-24 16:51:05
【问题描述】:

我有一个接口,EventHandler (OSGi EventAdmin),只有一个方法 handleEvent(Event)。

我有以下 Javascript 代码:

importPackage(org.osgi.service.event)

obj =
{
    handleEvent: function(event)
    {
        // some code
    }
};

handler = new EventHandler(obj);

service.registerHandler(handler, topic);

代码由 Rhino 执行(更具体地说,Rhino 内置在 JRE6、JSR-223 规范中)。 service 是绑定到脚本上下文的 Java 对象,其中 registerHandler 首先在 Map 中查找处理程序。这失败了,因为 NativeObject“处理程序” 没有 hashCode() 方法。

NativeObject 缺少标准 Java 对象方法是否有原因?

有什么方法可以解决这个问题?

我正在使用 JRE6 (1.6R2) 附带的 Rhino。

【问题讨论】:

    标签: java javascript rhino


    【解决方案1】:

    您的代码不完整,但 NativeObject 在我看来更像是一个 JavaScript 对象。

    【讨论】:

    • 我更新了代码,只缺少导入语句。据我了解,'code'NativeObject 是 Java 对象的 Javascript 表示。 EventHandler 是一个接口,所以创建的对象是一个特殊的对象。有没有办法创建一个 Java 对象?
    猜你喜欢
    • 2010-11-07
    • 2012-02-11
    • 2011-11-16
    • 2016-05-17
    • 1970-01-01
    • 1970-01-01
    • 2020-12-30
    • 1970-01-01
    • 2012-06-03
    相关资源
    最近更新 更多