2010-09-19 57 views
0

首先讓我告誡讀者不要把我送到同構的任何鏈接,因爲它很有可能我已經閱讀過它,並且我已經搜索了在本地運行的smartgwt展示,因爲我問了這個問題。我所要求的是沒有記錄的,如果是,我無法破譯,需要在這裏做出實際的解釋。不,不要告訴我關於SmartGWT EE的信息。這種情況純粹是Smartclient與服務器端的JSP(或perl,php)進行交互,我使用它與SAS後端進行交互。SmartGWT DataSource綁定到ListGrid和DynamicForm

這個問題與如何操作SAS無關。我提到SAS來說明smartclient必須直接與SAS Web服務交互,而不是通過SmartGWT服務器。我在smartclient論壇上問了一個類似但又不同的問題,但仍然沒有答案,所以這個問題一定很難,甚至可能是同構的人也沒有答案。

我從SAS Web服務,sasxjsondsrc生產

  • JSON xjsondatasource網址。我在Jetty上用JSP來嘲笑它。
  • sasxjsondsrc = id(primaryKey),name,description。
  • ListGrid的datasrc設置爲sasxjsondsrc。
  • SearchForm/DynamicForm editForm,其datasrc設置爲sasxjsondsrc。

我需要

  • 用戶將直觀地選擇上listGrid一排,然後單擊刪除按鈕,我的代碼會觸發listGrid.removeSelectedData(),那麼這將刪除本地和僅該行以及發送到sasxjsondsrc url的參數id = id將被刪除,操作= DEL。
  • 用戶在視覺上選擇listGrid上的一行,然後單擊修改按鈕,我的代碼將editForm.editSelectedData()。當用戶按下保存編輯按鈕時,我的代碼會觸發editForm.saveData(),然後它會在本地修改該行,並向參數sasxjsondsrc發送參數id = id,name = modified-value,description = modified-description,操作= MOD。
  • 用戶將點擊添加按鈕,我的代碼會觸發editForm.saveData(),然後它會在本地附加該行,以及發送到sasxjsondsrc url參數name = new-name,description = new-description,operation =加。

這個本地服務器管理是smartclient作爲一個優勢宣傳自己。問題是

  1. 我的JSP沒有註冊smartclient發送任何參數來指示應該執行什麼操作。它只接收數據源字段=值作爲受影響記錄的參數。
  2. 在添加或編輯操作時,不會在本地附加或修改記錄。爲了克服問題(1),我試圖提供一個額外的非顯示數據源字段,稱爲操作。但是當一個動態表單綁定到該數據源時,dynamicform字段將不允許我以編程方式成功修改操作字段。
  3. 我嘗試追加操作作爲DSRequest,但我的JSP也沒有收到它。

我的JSP如何知道正在執行什麼操作(ADD/REMOVE/EDIT)?

好的,長話短說 - SmartGWT中的數據源是一件非常棘手的事情。我被建議只爲它的UI使用SmartGWT,但我應該避免使用SmartGWT數據源,因爲它處理起來太棘手。有人可以發佈或鏈接我的例子,說明如何在類似於我的配置中完成SmartGWT客戶端編程。

我是否應該恢復使用GWT 2.1M3單元/頁面架構並編寫我自己的rpc-table單元格表單鏈接?

+0

Gwyn是正確的,你應該標記他的答案是正確的。另請參閱快速入門指南: http://blog.isomorphic.com/?p=227 是的,我知道您問過不要提及文檔,但相當明顯,您甚至沒有閱讀過介紹材料,回答您的所有問題,並一遍又一遍地指向RestDataSource。另外,避免使用DataSource是完全荒謬的 - 絕對沒有人應該接受這個建議。 – 2010-10-08 17:49:50

回答

相關問題