繁体   English   中英

如果方法调用花费的时间比预期的长,则显示消息

[英]show message if method call takes longer time than expected

简而言之,问题:如果在托管bean的JSF页面上按下commandButton所执行的方法花费的时间超过20秒,我对等待方法执行完成并向用户显示消息以供稍后尝试不感兴趣。 在单击按钮的方法中,我正在调用其他系统提供的API方法,其单行方法带有一些输入参数。

详细问题:我有一个场景,我有一个JSF 2页面,该页面的上部包含一些输入字段,用户在其中输入一些搜索条件,而另一下部包含一个结果表。 当用户单击搜索按钮时,表中会填充来自另一个系统的搜索结果。 在单击搜索按钮时,我捕获了HashMap<String,String>中的所有输入字段,并将其作为输入参数传递给方法,该方法进一步调用由外部应用程序公开的服务。 有时,执行方法调用的该语句需要很长时间才能返回结果。 我想向用户显示一些消息,以防此方法调用花费20秒钟以上,而无需用户等待time方法返回一些结果。 我想我必须为此使用一些并发机制。 是否有实施这种要求的模式?

在搜索按钮上放置onclick =“ busyPopup.show()” oncomplete =“ busyPopup.hide()”以显示某种对话框或弹出窗口。 只需在该弹出窗口/对话框中放入一个旋转的图像或沙漏。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM