2012-02-23 28 views
0

我在一個Ext GWT 3(測試版)應用程序的工作轉換爲一個簡單的字符串屬性的Bean路徑。在分機GWT電網

我想顯示依賴bean的一個Grid一個簡單的值。

我的數據豆是這樣的:

public class MyBean { 
    private String content; 

    private MyOtherBean otherBean; 

    // getters and setters here... 
} 


public class MyOtherBean { 
    private String otherBeanContent; 

    // getter and setter here... 
} 

PropertyAccess看起來是這樣的:

interface MyBeanProperties extends PropertyAccess<MyBean> { 

    ModelKeyProvider<MyBean> key(); 

    ValueProvider<MyBean, String> content(); 

    ValueProvider<MyBean, MyOtherBean> otherBean(); 
} 

配備相應ColumnConfiguration,我的網格現在顯示與MyBeancontent,並與一列一列MyOtherBeantoString()

但我想顯示MyOtherBean.otherBeanContent而不是更改MyOtherBeantoString()

我想我需要某種價值轉換器,並將其註冊爲列?或者我在這裏採取了錯誤的做法?

回答

0

這奏效了:

columnConfig.setCell(new PropertyDisplayCell<MyOtherBean>(new PropertyEditor<MyOtherBean>() { 

     @Override 
     public MyOtherBean parse(CharSequence text) throws ParseException { 
      return otherBean.setOtherBeanContentFromText(text); 
     } 

     @Override 
     public String render(MyOtherBean otherBean) { 
      return otherBean == null ? "" : otherBean.getOtherBeanContent(); 
     } 
    }));