我將GWT應用程序集成到具有不同bundle的OSGi環境中。說實話,我並不是圖形用戶界面和GWT開發方面的專家,所以,也許我正在嘗試做任何不可能的事情。在OSGi環境中,我正在使用事件通信過程。通過這種方式,GWT項目將一個事件發送到基於Hibernate的數據庫通信器包。然後,另一個事件,其屬性包含一個如下涉及對象的列表數據庫連接器的響應:管理GWT-OSGi中的不同對象
List<KpiDesc> lKPIs = (List<KpiDesc>)event.getProperty("KPIlist");
此列表中包含的對象,其類型爲com.cartif.hibernatemappings.KpiDesc。但是,這個包是數據庫連接器的內部組件,如果我嘗試在GWT的客戶端使用它,則會出現錯誤。試圖解決它,我已經在GWT項目的共享包中複製了相同的對象,以避免編譯錯誤,我想將一個對象投射到另一個對象。對於這樣prupose的代碼是下一個:
List<com.cartif.gui.optimization.shared.KpiDesc> lKPIs2 = new ArrayList<com.cartif.gui.optimization.shared.KpiDesc>();
for(int i = 0; i < lKPIs.size(); i++){
lKPIs2.add(new KpiDesc(lKPIs.get(i).getKpiId(), lKPIs.get(i).getName(), lKPIs.get(i).getDescription(),lKPIs.get(i).getDefinition(), lKPIs.get(i).getBuildingName()));
}
然而,在創建新對象(調用構造函數),在eventmanager進行代碼代表和沒有響應。你知道我怎麼能管理不同的物體?
非常感謝
如何從服務器返回對象到客戶端?你可以發佈它 –
嗯,我創建了一個HashMap,其中的鍵是我在內部使用的參數和上述列表。這是來自客戶端的異步調用中的返回類型。我的意思是,onSuccess方法返回對象與此類似。 –