正如我在本主题中所写,我需要在用户关闭或更改页面时调用一些操作。我以为我可以@PreDestroy
在我的视图范围内使用 bean,但它永远不会被调用(即使会话过期)。这是一个错误吗?我使用 Glassfish 3.1.2。
用户离开页面时如何调用bean方法的任何其他建议?javascript是个window.onunload
好主意吗?
正如我在本主题中所写,我需要在用户关闭或更改页面时调用一些操作。我以为我可以@PreDestroy
在我的视图范围内使用 bean,但它永远不会被调用(即使会话过期)。这是一个错误吗?我使用 Glassfish 3.1.2。
用户离开页面时如何调用bean方法的任何其他建议?javascript是个window.onunload
好主意吗?
即使 bean 是视图范围的,容器也有责任决定何时收集和销毁未使用的资源。
用于定义范围的注释指示托管 bean 必须存活多长时间,但您无法保证它们何时会被销毁。
正如您所建议的,JavaScript 可以解决您的问题。另请参阅此答案:如何在用户离开页面时检测表单中未保存的数据?