我有一个使用springhadoop的spring集成项目。我有一个hbase模板,如下所示,
<beans:bean id="fsh" class="org.springframework.data.hadoop.fs.FsShell">
</beans:bean>
<beans:bean id="hbaseTemplate"
class="org.springframework.data.hadoop.hbase.HbaseTemplate">
<beans:property name="configuration" ref="hdpConfiguration" />
</beans:bean>
现在,当我在最后关闭应用程序和上下文时,它抛出了一个奇怪的错误,
o、 a.h.hbase.client.hconnectionmanager:在列表中找不到连接,无法删除它(connection key=hconnectionkey{properties={hbase.zookeeper.quorum=.com,.com,hbase.rpc.timeout=60000,hbase.client.prefetch.limit=10,hbase.zookeeper.property.clientport=2181,zookeeper.znode.parent=/hbase secure,hbase.client.retries.number=35,hbase.client.pause=100},username='xyz@pqr.com'}). 可能是钥匙被修改了?
据我所知,这是一个无伤大雅的错误,甚至在hadoop1.x中也会抛出
我已经迁移到hadoop2.x和spring-hadoop-2.0.4,但是现在,spring抛出了一个以前没有抛出的异常,
java.lang.exception:org.apache.hadoop.hbase.client.hconnectionmanager.deleteconnection(hconnectionmanager)处为空。java:488)在org.apache.hadoop.hbase.client.hconnectionmanager.deleteconnection(hconnectionmanager。java:424)位于org.springframework.data.hadoop.hbase.hbaseconfigurationfactorybean.destroy(hbaseconfigurationfactorybean)。java:80)在org.springframework.beans.factory.support.disposablebeanadapter.destroy(disposablebeanadapter。java:258)在org.springframework.beans.factory.support.defaultsingletonbeanregistry.destroybean(defaultsingletonbeanregistry。java:578)在org.springframework.beans.factory.support.defaultsingletonbeanregistry.destroysingleton(defaultsingletonbeanregistry)。java:554)位于org.springframework.beans.factory.support.defaultlistablebeanfactory.destroysingleton(defaultlistablebeanfactory)。java:907)在org.springframework.beans.factory.support.defaultsingletonbeanregistry.destroysingletons(defaultsingletonbeanregistry)。java:523)位于org.springframework.beans.factory.support.defaultlistablebeanfactory.destroysingletons(defaultlistablebeanfactory)。java:914)在org.springframework.context.support.abstractapplicationcontext.destroybeans(abstractapplicationcontext。java:908)位于org.springframework.context.support.abstractapplicationcontext.doclose(abstractapplicationcontext。java:884)位于org.springframework.context.support.abstractapplicationcontext$1.run(abstractapplicationcontext。java:804) 2015-01-22 14:58:20.168信息---[thread-11]o.s.s.concurrent.threadpooltaskexecutor:关闭executorservice 2015-01-22 14:58:20.170信息---[thread-11]o.s.s.c.threadpooltaskscheduler:关闭executorservice'taskscheduler'2015-01-22 14:58:20.175信息---[thread-2]j.localcontainerentitymanagerfactorybean:关闭jpa持久性单元“default”的entitymanagerfactory
问题,我怎样才能捕捉这个错误,使它不显示给用户。。。
谢谢你的真知灼见。
1条答案
按热度按时间to94eoyn1#
我能够解决这个错误,只需将delete connection设置为false(默认值为true)