2014-01-22 38 views
1

我有一個請求工廠代理對象和我可以使用的「舊」setter方法,沒有問題。現在我爲該字段添加了一個新字段和一個setter(在後端對象上)。我也在我的代理對象中定義了這個方法。GWT RequestFactory - 在代理對象上使用新的setter導致IllegalArgumentException

但是,如果我調用前端的新字段的setter,我會得到一個IllegalArgumentException。我使用GWT + Maven。我是否需要清除某種緩存或某些舊對象,以便編譯器知道新字段?我嘗試maven乾淨,日食清潔,但nochting幫助。

我的代理接口看起來是這樣的:

@ProxyFor(value = User2.class, locator = EntityLocator.class) 
public interface User2Proxy extends EntityProxy{ 

    void setPassword(String password); 

} 

後端物體看起來像這樣:

公共類用戶2實現Serializable {

private String password; 

public String getPassword() { 
    return password; 
} 

public void setPassword(String password) { 
    this.password = password; 
} 

}

我創建這樣的代理對象:

User2Proxy user = userRequest.create(User2Proxy.class); 

user.setPassword("abc") 

所以輸入不能是錯誤的,如「ABC」

+0

我們需要看代碼和堆棧跟蹤!很可能,你傳遞了一個非法值。 – chrylis

回答

2

字符串我發現這個問題:我在代理對象不僅需要setter方法的方法,而且,吸氣。如果提供了這種方法,它就可以工作!