有时在开发过程中,某些内容被破坏,导致spring上下文无法加载。问题是,有时错误只出现在一些bean中,但webapp的其余部分正在部分加载,然后会出现一些奇怪的行为。
有没有一种已知的方法可以让Spring在发生错误时停止服务器进程?比如一些注射失败的豆子,或者一些NPE发生在一些施工后的事情。
在web中类似stopOnError=true的内容。xml。
所以最终我找到的解决方案是:创建一个实现ServletContextListener的类,称之为ApplicationLoaderListener。
在web.xml设置此类:
<listener>
<listener-class>com.my.package.ApplicationLoaderListener</listener-class>
</listener>
向其中添加私人成员:
private final ServletContextListener loader = new ContextLoaderListener();
该类必须实现两个接口方法,相关的接口方法是上下文化的:
@Override
public void contextInitialized(ServletContextEvent sce) {
try {
loader.contextInitialized(sce);
} catch (BeanCreationException e) {
handle(e);
}
}
以及handle()的实现:
private void handle(BeanCreationException e) {
log.error("=============== FATAL =============== - failed to create bean: ", e);
System.exit(1);
}
为了使代码完整,第二种方法是:
@Override
public void contextDestroyed(ServletContextEvent sce) {
loader.contextDestroyed(sce);
}
问题内容: 我正在尝试使用MEAN堆栈创建一个简单的单页应用程序。到目前为止,我在本地主机上工作,并且一切正常。 可悲的是,将代码上传到服务器后,每当我的应用程序尝试从部分文件夹(HTML模板)下载任何内容时,我都会收到状态码500(内部服务器错误)。 这不是CORS问题(相同的域),但只是要确保我也安装了CORS插件。 路线示例: 我也有路径设置: 我搜索了许多页面,但找不到解决方案。感谢您的任
当我运行得到的命令时,我面临新安装的Angular错误 我使用节点12.6.1与源代码树,并验证bow已安装
我有这个错误。有人可以帮帮我吗,我认为这是关于触摸听众的事情......当我松开手指时发生错误。 当我尝试运行此代码时,就会发生这种情况: 来自触摸听众: 这两种方法:
我有两种服务a.service和b.service。a、 显示服务 b、 服务 现在,当我开始b.service,我确信a.service将被启动。在运行时,突然有人扰乱 /home/admin/run.sh和systemd无法启动a.service(也是systemctl状态a.service显示为状态失败)。现在有一个选项,b.service可以知道a.service失败,它应该停止/退出吗?
我在何时使用ConfigurableApplicationContext停止spring应用程序上下文时遇到问题。关闭() 超文本传输协议端口已停止,但Spring执行器管理端口未关闭。 因此,当我尝试重新启动应用程序时,spring给出了以下异常:
现象: 运行 php start.php stop 提示 stop fail 原因:几种可能性 第一种可能性: 前提是以debug方式启动的workerman,开发者在终端按了ctrl z给workerman发送了SIGSTOP信号,导致workerman进入后台并挂起(暂停),所以无法响应stop命令(SIGINT信号)。 解决: 在启动workerman的终端输入fg(发送SIGCONT信号)