我使用DWR和转换器已经有一段时间了,我真的想把我的Java类映射到JavaScript类。使用DWR转换器,我可以选择在给定Java类的情况下指出JS构造函数的名称。到目前为止一切顺利..。当我的JS构造函数位于类似JS包的名称中(就像YUI的包系统一样,例如my.beautiful.package.MyClass
)时,问题就出现了。DWR当前的实现不允许我使用这种构造,当我尝试使用它时,会给我一个SyntaxError
。有没有一种优雅的方法绕过这个限制?
发布于 2008-10-26 10:45:48
据我所知,这是不可能的。在我目前的工作项目中,我尝试使用Javascript类中的方法来增强客户端返回的每个对象,这会得到您感兴趣的结果。
DwrService.getThings({
callback:function(things){
for(thing in things){
YAHOO.augmentProto(thing, my.beautiful.package.MyClass);
}
// do your stuff here
}
});
我必须在周一(现在是周日)在工作中检查augmentProto是否可以正确使用,但我认为它是正确的。甚至可能有一个更好的到DWR的钩子,它将允许您在运行时自动完成此操作。
https://stackoverflow.com/questions/230573
复制相似问题