2014-02-06 127 views
0

有没有可能调用存储在Javascript中的HTTP会话中的Java对象的setter方法?从javascript中访问java对象的成员函数

我设法访问的getter这样的:

var result='<%=((MyObject) portletSession.getAttribute("resultObj")).getValue() %>'; 

但我需要重新设置这个结果在Javascript一些修改之后。

这是可能的,还是应该放弃我的想法?

回答

2

这是不可能的,你觉得是这样的。

重要的是要知道,在您的服务器完成运行发送回内容的Java进程的之后,在浏览器中执行Javascript。在Javascript中运行的代码与服务器上的JVM进程之间没有任何关联 - 此代码运行在两个不同的位置。

您可以在Javascript功能来读取Java会话属性时服务器产生的JavaScript来管向下发送给用户。但是,一旦用户的浏览器正在执行代码,运行在其他人计算机上的代码就不会奇迹般地改变服务器上的值。

你要考虑把从用户的浏览器(在JavaScript)异步HTTP请求到服务器。

+0

总之'会话'在服务器上,脚本在客户端上。所以不行。 –

0

不,这是不可能的。

运行的Java和浏览器中的服务器和JavaScript。这些之间没有任何类型的连接。你需要某种服务来调用远程功能

0

有没有可能调用java对象的setter方法存储在JavaScript会话中的JavaScript?

你不行。 java在服务器端和客户端的JavaScript上播放。所以大没有

,但我需要在JavaScript中做一些修改后重新设置这个结果。

再次。您需要发送一个服务器请求以便向java发送一些值。

看来你需要Asynchronous call。了解Ajax.

相关问题