有沒有可能調用存儲在Javascript中的HTTP會話中的Java對象的setter方法?從javascript中訪問java對象的成員函數
我設法訪問的getter這樣的:
var result='<%=((MyObject) portletSession.getAttribute("resultObj")).getValue() %>';
但我需要重新設置這個結果在Javascript一些修改之後。
這是可能的,還是應該放棄我的想法?
有沒有可能調用存儲在Javascript中的HTTP會話中的Java對象的setter方法?從javascript中訪問java對象的成員函數
我設法訪問的getter這樣的:
var result='<%=((MyObject) portletSession.getAttribute("resultObj")).getValue() %>';
但我需要重新設置這個結果在Javascript一些修改之後。
這是可能的,還是應該放棄我的想法?
這是不可能的,你覺得是這樣的。
重要的是要知道,在您的服務器完成運行發送回內容的Java進程的之後,在瀏覽器中執行Javascript。在Javascript中運行的代碼與服務器上的JVM進程之間沒有任何關聯 - 此代碼運行在兩個不同的位置。
您可以在Javascript功能來讀取Java會話屬性時服務器產生的JavaScript來管向下發送給用戶。但是,一旦用戶的瀏覽器正在執行代碼,運行在其他人計算機上的代碼就不會奇蹟般地改變服務器上的值。
你要考慮把從用戶的瀏覽器(在JavaScript)異步HTTP請求到服務器。
不,這是不可能的。
運行的Java和瀏覽器中的服務器和JavaScript。這些之間沒有任何類型的連接。你需要某種服務來調用遠程功能
有沒有可能調用java對象的setter方法存儲在JavaScript會話中的JavaScript?
你不行。 java在服務器端和客戶端的JavaScript上播放。所以大沒有。
,但我需要在JavaScript中做一些修改後重新設置這個結果。
再次否。您需要發送一個服務器請求以便向java發送一些值。
看來你需要Asynchronous call。瞭解Ajax.
總之'會話'在服務器上,腳本在客戶端上。所以不行。 –