我在一个项目中使用树脂。到目前为止一切顺利,除了一个小问题?
我创建了一个将任何 Object 作为唯一参数的通用方法,但是当我调用该方法时,它会查找方法名称,但参数类型不同,当然还有传递的对象类型。
我不确定 Resin 或任何其他应用程序服务器是否真的可以做到这一点,还是我在这里弄错了?
我正在用 Objective-j/Cappuccino 开发前端,我正在通过 CP2JavaWS 映射远程 Java 方法。
基本上在 Objective-J 中,我声明如下:
-(CPString) updateQuote:(id)modifiedQuote
{}
我不需要实现它,只需声明它。
然后在我的 WebApp 中,我声明并实现如下方法:
public String updateQuote(Object modifiedQuote)
{
// implementation
}
然后在前端我调用这样的方法:
[DBManagerRemoteService updateQuote:aObject delegateRespHandler:@selector(success:) delegateFailHandler:@selector(failed:)];
问题是 aObject 是 CYQuote 类的一个实例,所以当我调用远程方法时,它似乎不是在寻找updateObject(java.lang.Object)
,而是在寻找updateObject(com.myApp.services.CYQuote)
没有声明或实现的。当然我可以为每个类实现一个方法,但我的目标是创建一个通用的更新方法。