所以基本上這個項目建立了來自各種測試類型的測試結果的入口。提取和顯示結果很好;但是,結果表格沒有以正確的順序顯示。它們顯示的順序是隨機的,但它明確指定了調用RPC調用的順序,我甚至在我的面板中實施了索引系統以進一步提供幫助。真的很奇怪的GWT RPC行爲+顯示
基本上,應用程序由一個verticalpanel內包含的三個水平面板組成。
進一步說明:新,中,舊指被測試軟件產品的三個版本。 TestTable只是一個自定義FlexTable,每個xxxPanel都是HorizontalPanels。索引都在onModuleLoad()方法之外初始化爲零。每個面板都有自己的服務,負責調度RPC調用以填充相應的面板。
public void onSuccess(List<TestResult> result) {
TestTable testTable1 = new TestTable(result);
if(result.get(0).getVrmf().equals(newestVersion)){
newPanels.insert(testTable1, newIndex + 1); //insert adds element BEFORE specified index, so +1
newPanels.addStyleName("horizontalPanelStyle");
newIndex++;
}
if(result.get(0).getVrmf().equals(middleVersion)){
midPanels.insert(testTable1, midIndex + 1); //insert adds element BEFORE specified index, so +1
midPanels.addStyleName("horizontalPanelStyle");
midIndex++;
}
if(result.get(0).getVrmf().equals(oldVersion)){
oldPanels.insert(testTable1, oldIndex + 1); //insert adds element BEFORE specified index, so +1
oldPanels.addStyleName("horizontalPanelStyle");
oldIndex++;
}
}
};
,這裏是我的電話是如何分派:
if(testPortalSvcNew != null){
testPortalSvcNew.getTestResults(5, newestVersion, TestType.SMOKE, callback); testPortalSvcNew.getTestResults(5, newestVersion, TestType.BVTUNIX, callback); testPortalSvcNew.getTestResults(5, newestVersion, TestType.BVTWINDOWS, callback); }
每次刷新生成測試類型的潛在不同水平的顯示順序。版本被正確分組並且被垂直分開,但是它們的水平排序是棘手的。我很難過!
剛剛跟一個熟悉GWT的同事說話,他確認了我的恐懼。我只需將該服務傳遞給一個TestTypes數組,並以這種方式處理它。謝謝! 我會+1你,如果我有聲望: -/ 我是新來的所有這些:-) – xtremerunnerars 2010-07-01 20:41:27