大家好,虽然这是我的第一个问题,但我习惯于阅读 stackoverflow 中的解决方案,并且很高兴得到适当的答案。
我的问题是:有没有办法使用一些处理程序来处理构造函数抛出的异常(而不是在每个构造函数中编写 try 和 catch)并将页面重定向到 error.xhtml。我正在使用 JSF2。以及我如何识别构造函数引发的异常。等待你的回复。
大家好,虽然这是我的第一个问题,但我习惯于阅读 stackoverflow 中的解决方案,并且很高兴得到适当的答案。
我的问题是:有没有办法使用一些处理程序来处理构造函数抛出的异常(而不是在每个构造函数中编写 try 和 catch)并将页面重定向到 error.xhtml。我正在使用 JSF2。以及我如何识别构造函数引发的异常。等待你的回复。
首先,尽量避免在托管 bean 的构造函数中做任何事情,这是不必要且丑陋的。使用注释对公共的、无参数的方法进行@PostConstruct
注释,并且该方法保证在托管 bean 被实例化后立即运行。
为了解决您的主要问题,JSF 提供了一个ExceptionHandler
您可以覆盖的类,以便自定义异常处理。它以半声明的方式实现,并在全局范围内应用,即适用于整个 JSF 应用程序上下文。本教程提供了有关实现处理程序的良好指南。从该教程中,请注意,该ExceptionQueuedEvent
对象提供了有关引发异常的所有可用信息,包括引发异常的 JSF 阶段,甚至是生成异常的组件