tomcat启动报错,无法创建 bean listenerStatusChangeDealHandler, no queue 'STOCK.NOTIFY_CHANGE.INTER.CACHE.QUEUE' in vhost

从启动日志来看,有时候仅会看到内存泄漏,而没有与queue相关的日志,很容易走错方向。

按照 http://blog.csdn.net/wangjunjun2008/article/details/23375501 的方法可以看到详细日志,从而确定报错原因

tomcat启动报错,无法创建 bean listenerStatusChangeDealHandler, no queue 'STOCK.NOTIFY_CHANGE.INTER.CACHE.QUEUE' in vhost
Jun 5, 2014 1:39:42 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.context.ApplicationContextException: Failed to start bean 'listenerStatusChangeDealHandler';nested exception is org.springframework.amqp.AmqpIllegalStateException: Fatal exception on listener startupat org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:169)...
Caused by: org.springframework.amqp.AmqpIllegalStateException: Fatal exception on listener startupat org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.doStart(SimpleMessageListenerContainer.java:339)at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.start(AbstractMessageListenerContainer.java:363)at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:166)... 33 more
Caused by: org.springframework.amqp.rabbit.listener.FatalListenerStartupException: Cannot prepare queue for listener.
Either the queue doesn't exist or the broker will not allow us to use it.at org.springframework.amqp.rabbit.listener.BlockingQueueConsumer.start(BlockingQueueConsumer.java:228)at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:524)at java.lang.Thread.run(Thread.java:662)
Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; reason: {#method<channel.close>(reply-code=404, reply-text=NOT_FOUND - no queue 'STOCK.NOTIFY_CHANGE.INTER.CACHE.QUEUE' in vhost '/', class-id=50, method-id=10), null, ""}at com.rabbitmq.utility.ValueOrException.getValue(ValueOrException.java:67)at com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:33)at com.rabbitmq.client.impl.AMQChannel$BlockingRpcContinuation.getReply(AMQChannel.java:343)at com.rabbitmq.client.impl.AMQChannel.privateRpc(AMQChannel.java:216)at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:118)... 11 more
Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; reason: {#method<channel.close>(reply-code=404, reply-text=NOT_FOUND - no queue 'STOCK.NOTIFY_CHANGE.INTER.CACHE.QUEUE' in vhost '/', class-id=50, method-id=10), null, ""}at com.rabbitmq.client.impl.ChannelN.asyncShutdown(ChannelN.java:454)at com.rabbitmq.client.impl.ChannelN.processAsync(ChannelN.java:294)at com.rabbitmq.client.impl.AMQChannel.handleCompleteInboundCommand(AMQChannel.java:144)at com.rabbitmq.client.impl.AMQChannel.handleFrame(AMQChannel.java:91)at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:526)
Jun 5, 2014 1:39:42 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Jun 5, 2014 1:39:42 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/TravelHubPkgStock] startup failed due to previous errors
Jun 5, 2014 1:39:42 PM org.apache.catalina.core.ApplicationContext log
INFO: Closing Spring root WebApplicationContext
Jun 5, 2014 1:39:42 PM org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
SEVERE: The web application [/TravelHubPkgStock] registered the JDBC driver [oracle.jdbc.driver.OracleDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
Jun 5, 2014 1:39:42 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/TravelHubPkgStock] appears to have started a thread named [Thread-2] but has failed to stop it. This is very likely to create a memory leak.
Jun 5, 2014 1:39:42 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/TravelHubPkgStock] appears to have started a thread named [Thread-3] but has failed to stop it. This is very likely to create a memory leak.
Jun 5, 2014 1:39:47 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
Jun 5, 2014 1:39:48 PM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:9090
Jun 5, 2014 1:39:48 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/121  config=null
Jun 5, 2014 1:39:48 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 324602 ms

经过排查和测试,发现项目中使用rabbitmq服务,而rabbitmq于昨天被重装了,从而里面的队列全部没有了,导致项目启动时初始化bean时候报错。

有趣的是,之前rabbitmq停止服务时,该项目启动正常,而rabbitmq服务提供服务,且某一指定队列不存在时,项目却无法正常启动,

由此可见,代码的健壮性有待改进哪。

tomcat启动报错,找不到对应的 queue,从而引发内存泄漏相关推荐

  1. java项目导入包报错_转!java web项目 build path 导入jar包,tomcat启动报错 找不到该类...

    在eclipse集成tomcat开发java web项目时,引入的外部jar包,编译通过,但启动tomcat运行web时提示找不到jar包内的类,需要作如下配置,将jar包在部署到集成的tomcat环 ...

  2. tomcat启动报错,找不到相应的 queue,从而引发内存泄漏

    tomcat启动报错,无法创建 bean listenerStatusChangeDealHandler, no queue 'STOCK.NOTIFY_CHANGE.INTER.CACHE.QUEU ...

  3. Linux下Tomcat启动报错:port already in use

    Linux下Tomcat启动报错:port already in use,导致该问题的原因很多,我在这里记录一下我遇到的情况的解决办法. 检查了${TOMCAT_HOME}/conf/server.x ...

  4. Tomcat 启动报错The APR based Apache Tomcat Native l...

    2019独角兽企业重金招聘Python工程师标准>>> 转:Tomcat 启动报错The APR based Apache Tomcat Native l... 启动tomcat时  ...

  5. Tomcat启动报错:Neither the JAVA_HOME nor the JRE_HOME environment variable is defined

    Tomcat启动报错:Neither the JAVA_HOME nor the JRE_HOME environment variable is defined 今天在linxu环境Tomcat下部 ...

  6. (转)Eclipse4.2 Tomcat启动报错 A child container failed during start

    Eclipse4.2 Tomcat启动报错 A child container failed during start 2013-5-21 15:02:24 org.apache.catalina.c ...

  7. 记录个tomcat启动报错问题,Unable to process Jar entry

    记录个问题,Unable to process Jar entry [javassist/util/proxy/SerializedProxy.class] tomcat启动报错问题,但不影响使用,但 ...

  8. Tomcat启动报错:因为在清除过期缓存条目后可用空间仍不足 - 请考虑增加缓存的最大空间

    Tomcat启动报错:因为在清除过期缓存条目后可用空间仍不足 - 请考虑增加缓存的最大空间 一.问题现象 二.解决方案 一.问题现象 项目上使用Tomcat作为web服务器发布web应用,在一次升级w ...

  9. tomcat启动报错,原来是DB2的一个jar包搞的鬼

    tomcat启动报错,原来是DB2的一个jar包搞的鬼 现在是2019年05月14日不知道这个笔记是什么是时候记录的,好像之前有过这回事,在启动一个web项目时,遇到一个问题,网上查了一下资料解决了, ...

最新文章

  1. 结构和类中字段的初始化以及用new来操作他们的构造函数
  2. GitHub--创建新的分支
  3. StringBuilder与StringBuffer比较
  4. MS SQL JSON类型type
  5. org.json.JSONException: Value of type java.lang.String cannot be converted to JSONArra
  6. Java多线程学习六:使用线程池比手动创建线程好在那里以及常用线程池参数的意义
  7. GAN——欧几里得空间
  8. docker from指令的含义_volume_from指令-docker撰写
  9. android 按下缩小效果松开恢复_22省份三季报:粤苏总量差距缩小,19省份实现正增长...
  10. IMX6ULL uboot启动分析(五)
  11. protel 99se 简单的手动画pcb
  12. 牛头刨床设计matlab生成图片,牛头刨床matlab程序---机械原理课程设计
  13. 金盾视频加密器V2014视频加密原理分析
  14. Prometheus监控kubernetes
  15. 面试总结-拉开2014校招的序幕
  16. Bulldog靶机渗透
  17. JAVAWEB开发之——Linux命令实战、虚拟机和centos的安装以及联网、常用命令、vi编辑以及软件的安装、sftp的使用
  18. Linux kernel: USB driver编写入门(二)
  19. 嵌入式系统原理及应用课后习题答案
  20. 一套较完整的技术框架

热门文章

  1. 简单的内网穿透接入互联网无需公网IP
  2. 趣味三角——第3章——6个三角函数的成熟过程
  3. Formal Verification (一) 形式验证的分类、发展、适用场景
  4. 如何注册wish买家账号?
  5. kettle读取hbase数据
  6. C语言中整形的大小和范围
  7. uint16数据的读取以及转换为uint8数据显示
  8. 阿里云ACP级认证考试心得+过关经验
  9. -bash:/etc/profile: line 21: syntax error near unexpected token `$‘do\r‘‘
  10. html制作唐诗三百首,《唐诗三百首》