0

有没有办法可以将非 setter/getter 方法放入我们定义的代理接口中?

例如..

@ProxyFor( value = requestFactory.example.gwt.server.domain.Person.class )
public interface PersonProxy extends EntityProxy
{
    String getLastName();

    String getFirstName();

    void setLastName( String nachname );

    void setFirstName( String vorname );

    public Long getId();

    public Integer getVersion();

    void setProperty(String name, Object value);

}

上面示例中的最后一个方法抛出异常“仅允许设置器和获取器”。有什么办法可以解决这个问题?提前致谢。

4

1 回答 1

2

不能。代理只能有 getter 和 setter。

但是,您可以将方法添加到 aRequestContext以进行相同的服务器端调用:

InstanceRequest<PersonProxy> setProperty(String name, String value);

用作:

context.setProperty("foo", "bar").using(personProxy);

请注意,您不能使用Object任何一种(在您询问之前:不,您不能有重载,因此您必须在服务器端使用类似命名的方法添加setPropertyStringsetPropertyDate、等)setPropertyDouble

于 2012-09-12T10:04:05.300 回答