2012-09-02 80 views
0

繼續tutorial我遇到了一個錯誤。 以前的問題似乎是fixed錯誤掛毯使用數據gridsource 2

教程說: 要使用所創建的CelebritySource的,添加以下方法給勾住ShowAll頁面類:

public GridDataSource getCelebritySource() 
{ 
return new CelebritySource(dataSource); 
} 

然後更改ShowAll.tml模板網格組件的源參數:

<t:grid t:source="celebritySource" rowsPerPage="5" 
row="celebrity" t:model="model"> 

運行該應用程序。登錄查看ShowAll頁面,一旦顯示名人表格,您應該看到以下輸出:

準備選擇。從0 索引4 屬性名是:空 排序順序遞增:用於行0 獲得值真 獲得值在行1個 獲得值用於行2 獲得值用於行3 獲得值4行

頁面有錯誤:從T型= 「模型」:

An unexpected application exception has occurred.

Exception assembling root component of page ShowAll: Could not convert 'model' into a component parameter binding: Exception generating conduit for expression 'model': Class org.apache.tapestry.pages.ShowAll does not contain a property (or public field) named 'model'.

delete一個噸後網格

頁面有錯誤:

An unexpected application exception has occurred.

Render queue error in SetupRender[ShowAll:grid]: Index: 0

任何人都有這個問題嗎?

回答

2

似乎這個例子缺少了一些代碼。嘗試添加下列到ShowAll.java頁:

@Inject 
private BeanModelSource beanModelSource; 

@Inject 
private Messages messages; 

public BeanModel<Celebrity> getModel() { 
    return beanModelSource.createDisplayModel(Celebrity.class, messages); 
} 

T5 Grid Component Ref

The model used to identify the properties to be presented and the order of presentation.

上面應該創建你默認BeanModel來完完全全的基礎上,公開方法和屬性。

+0

改進了解決方案。 但現在它顯示相同的錯誤,因爲當我從t:grid頁面刪除t:model =「model」時出現錯誤:>出現意外的應用程序異常。在SetupRender [ShowAll:grid]中渲染隊列錯誤:索引:0 – nkvnkv