从Jquery调用Bean方法

时间:2012-09-24 07:17:20

标签: java jquery jsf

是否可以从Jquery调用Bean?我的要求如下,

我有一个基于JSF 1.2的Servlet。

如果用户的会话闲置一段时间,则会使其无效。在使会话无效前1分钟显示Jquery对话框。用户在对话框中有2个选项。 “是的,我想继续”将延长会议时间。 “不,我想退出”将注销用户。

当用户点击“我不想退出”时,我想调用bean方法来更新数据库&使会话无效。

以下是代码,

'No, Log out': function(){
 $j.idleTimeout.options.onTimeout.call($j.post('//This is where am stuck',function()

我想在$ j.post中调用bean,这样我就可以在bean中做一些清理活动了。

如何做到这一点?

此致

2 个答案:

答案 0 :(得分:1)

你可以使用一个隐藏的(style="display:none")commandButton,其中一个动作指向你bean中的一个方法,然后从jquery上调用.click()

类似这样的事情

<h:commandButton id="myButton" action="#{myBean.myInvalidateMethod}" style="display:none"/>

jquery的

&("#myButton").click();//possible myForm prefix appear before the id so use #myForm\\:myButton selector

或者你可以从你的jsf页面调用servlet,类似于这个答案Calling a Servlet from a JSP page using jQuery Ajax

答案 1 :(得分:0)

您无法直接访问这些方法,您必须让您的servlet处理您的请求并为您调用该方法并以json格式返回数据,例如