Error handling dropwizard应用程序中的自定义ErrorHandler
我正在尝试在dropwizard 1.0.2中设置自定义错误处理程序 在run方法的应用程序类中,我有以下几行:Error handling dropwizard应用程序中的自定义ErrorHandler,error-handling,jetty,dropwizard,managed-bean,Error Handling,Jetty,Dropwizard,Managed Bean,我正在尝试在dropwizard 1.0.2中设置自定义错误处理程序 在run方法的应用程序类中,我有以下几行: environment.getApplicationContext().setErrorHandler(new CustomErrorHandler()); environment.getAdminContext().setErrorHandler(new CustomErrorHandler()); 但是,不会调用CustomErrorHandler中的代码,而是在遇到无
environment.getApplicationContext().setErrorHandler(new CustomErrorHandler());
environment.getAdminContext().setErrorHandler(new CustomErrorHandler());
但是,不会调用CustomErrorHandler
中的代码,而是在遇到无法提供服务的URL时使用默认的ErrorHandler类
在调试该问题时,我意识到ContainerLifeCycle
对象包含以下bean:{org.eclipse.jetty.server.handler。ErrorHandler@375084c9,AUTO}
并且不包含CustomErrorHandler
的bean。我的猜测是,当应用程序启动后设置默认错误处理程序时,我的错误处理程序会被覆盖
任何关于如何设置自定义错误处理程序的指针都将受到高度赞赏 我做到这一点的唯一方法是在服务器生命周期侦听器中,例如
environment.lifecycle().addServerLifecycleListener(new ServerLifecycleListener() {
@Override
public void serverStarted(Server server) {
server.setErrorHandler(new MyCustomErrorHandler());
}
});