我有一个接口,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执行(更具体地说,内置于JRE6,JSR-223规范中的Rhino)。 service是绑定到脚本上下文的Java对象,其中registerHandler首先在Map中查找处理程序。这失败是因为NativeObject“处理程序” 没有hashCode()方法。
NativeObject是否缺少标准Java Object方法?
解决这个问题的方法是什么?
我正在使用JRE6(1.6R2)附带的Rhino。
答案 0 :(得分:0)
您的代码不完整,但NativeObject
看起来更像是 JavaScript 对象。