繁体   English   中英

客户JSF异常处理程序未在Converter中捕获异常

[英]Customer JSF Exception Handler does not catch Exception in Converter

我有一个自己的ExceptionHandler添加到我的jsf 2.2项目中。 web.xml

<factory>
    <exception-handler-factory>package.exceptionhandler.MyExceptionHandlerFactory</exception-handler-factory>
</factory>

exceptionHandlerFactory包含

public ExceptionHandler getExceptionHandler() {
    ExceptionHandler handler = new MyExceptionHandler(parent.getExceptionHandler());
    return handler;
}

并且ExceptionHandler包含

 @Override
    public void handle() throws FacesException {
        LOGGER.debug("handle exception...");
    }

我的虚拟转换器每次都会抛出异常:

@FacesConverter(value = "MyConverter")
public class MyConverter implements Converter {

@Override
public Object getAsObject(final FacesContext context, final UIComponent comp, final String value) {
    throw new RuntimeException("error");
}
//...

但是,该异常不是由我自己的异常处理程序处理的。 为什么?

我发现了问题。

这不是jsf的问题。 我在应用程序中有一个PhaseListener,它仅使某些错误消息在页面上可见。 但是此PhaseListener处于INVOKE_APPLICATION阶段,因此从未执行。

暂无
暂无

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

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