Spring context initialized two times causes Dubbo port to be occupied

Source: Internet
Author: User

Background: A newly developed small project deployed to the test environment, always deployment failure, the visual error is that the error log has Dubbo port is occupied. The project is SPRINGMVC framework +tomcat.

The error log is:

[0518 19:36:41 354 ERROR] [Main] Web.context.contextloader-context initialization failed

Com.alibaba.dubbo.rpc.RpcException:Fail to start server (url:dubbo://192.168.1.121:18191/ Com.tongbanjie.security.facade.api.AuthCodeValidationFacade?

Anyhost=true&application=security&channel.readonly.sent=true&codec=dubbo&default.retries=0 &default.timeout=30000&dubbo=2.5.3&heartbeat=60000&interface

=com.tongbanjie.security.facade.api.authcodevalidationfacade&methods=verifyauthcode&pid=16819& revision=1.0-snapshot&side=provider&timestamp=1463571401

299&version=2.0) Failed to bind Nettyserver on/192.168.1.121:18191, cause:failed to bind to:/0.0.0.0:18191

At Com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol.createServer (dubboprotocol.java:289)

At Com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol.openServer (dubboprotocol.java:266)

At Com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol.export (dubboprotocol.java:253)

At Com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper.export (protocolfilterwrapper.java:55)

At Com.alibaba.dubbo.rpc.protocol.ProtocolListenerWrapper.export (protocollistenerwrapper.java:56)

At Com.alibaba.dubbo.rpc.protocol$adpative.export (Protocol$adpative.java)

At Com.alibaba.dubbo.registry.integration.RegistryProtocol.doLocalExport (registryprotocol.java:153)

At Com.alibaba.dubbo.registry.integration.RegistryProtocol.export (registryprotocol.java:107)

At Com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper.export (protocolfilterwrapper.java:53)

At Com.alibaba.dubbo.rpc.protocol.ProtocolListenerWrapper.export (protocollistenerwrapper.java:54)

At Com.alibaba.dubbo.rpc.protocol$adpative.export (Protocol$adpative.java)

At Com.alibaba.dubbo.config.ServiceConfig.doExportUrlsFor1Protocol (serviceconfig.java:485)

At Com.alibaba.dubbo.config.ServiceConfig.doExportUrls (serviceconfig.java:281)

At Com.alibaba.dubbo.config.ServiceConfig.doExport (serviceconfig.java:242)

At Com.alibaba.dubbo.config.ServiceConfig.export (serviceconfig.java:143)

At Com.alibaba.dubbo.config.spring.ServiceBean.onApplicationEvent (servicebean.java:109)

At Org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent ( SIMPLEAPPLICATIONEVENTMULTICASTER.JAVA:96)

At Org.springframework.context.support.AbstractApplicationContext.publishEvent (Abstractapplicationcontext.java : 334)

At Org.springframework.context.support.AbstractApplicationContext.finishRefresh (Abstractapplicationcontext.java : 948)

At Org.springframework.context.support.AbstractApplicationContext.refresh (abstractapplicationcontext.java:482)

At Org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext (Contextloader.java : 410)

At Org.springframework.web.context.ContextLoader.initWebApplicationContext (contextloader.java:306)

At Org.springframework.web.context.ContextLoaderListener.contextInitialized (contextloaderlistener.java:112)

At Org.apache.catalina.core.StandardContext.listenerStart (standardcontext.java:4210)

At Org.apache.catalina.core.StandardContext.start (standardcontext.java:4709)

At Org.apache.catalina.core.ContainerBase.addChildInternal (containerbase.java:799)

At Org.apache.catalina.core.ContainerBase.addChild (containerbase.java:779)

At Org.apache.catalina.core.StandardHost.addChild (standardhost.java:583)

At Org.apache.catalina.startup.HostConfig.deployDirectory (hostconfig.java:1079)

At Org.apache.catalina.startup.HostConfig.deployDirectories (hostconfig.java:1002)

At Org.apache.catalina.startup.HostConfig.deployApps (hostconfig.java:506)

At Org.apache.catalina.startup.HostConfig.start (hostconfig.java:1317)

At Org.apache.catalina.startup.HostConfig.lifecycleEvent (hostconfig.java:324)

At Org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent (lifecyclesupport.java:142)

At Org.apache.catalina.core.ContainerBase.start (containerbase.java:1065)

At Org.apache.catalina.core.StandardHost.start (standardhost.java:822)

At Org.apache.catalina.core.ContainerBase.start (containerbase.java:1057)

At Org.apache.catalina.core.StandardEngine.start (standardengine.java:463)

At Org.apache.catalina.core.StandardService.start (standardservice.java:525)

At Org.apache.catalina.core.StandardServer.start (standardserver.java:754)

At Org.apache.catalina.startup.Catalina.start (catalina.java:595)

At Sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)

At Sun.reflect.NativeMethodAccessorImpl.invoke (nativemethodaccessorimpl.java:57)

At Sun.reflect.DelegatingMethodAccessorImpl.invoke (delegatingmethodaccessorimpl.java:43)

At Java.lang.reflect.Method.invoke (method.java:601)

At Org.apache.catalina.startup.Bootstrap.start (bootstrap.java:289)

At Sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)

At Sun.reflect.NativeMethodAccessorImpl.invoke (nativemethodaccessorimpl.java:57)

At Sun.reflect.DelegatingMethodAccessorImpl.invoke (delegatingmethodaccessorimpl.java:43)

At Java.lang.reflect.Method.invoke (method.java:601)

At Org.apache.commons.daemon.support.DaemonLoader.start (daemonloader.java:243)

caused by:com.alibaba.dubbo.remoting.RemotingException:Failed to bind Nettyserver on/192.168.1.121:18191, Cause: Failed to bind to:/0.0.0.0:18191

At Com.alibaba.dubbo.remoting.transport.abstractserver.<init> (abstractserver.java:72)

At Com.alibaba.dubbo.remoting.transport.netty.nettyserver.<init> (nettyserver.java:63)

At Com.alibaba.dubbo.remoting.transport.netty.NettyTransporter.bind (nettytransporter.java:33)

At Com.alibaba.dubbo.remoting.transporter$adpative.bind (Transporter$adpative.java)

At Com.alibaba.dubbo.remoting.Transporters.bind (transporters.java:48)

At Com.alibaba.dubbo.remoting.exchange.support.header.HeaderExchanger.bind (headerexchanger.java:41)

At Com.alibaba.dubbo.remoting.exchange.Exchangers.bind (exchangers.java:63)

At Com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol.createServer (dubboprotocol.java:287)

... More

caused by:org.jboss.netty.channel.ChannelException:Failed to bind to:/0.0.0.0:18191

At Org.jboss.netty.bootstrap.ServerBootstrap.bind (serverbootstrap.java:303)

At Com.alibaba.dubbo.remoting.transport.netty.NettyServer.doOpen (nettyserver.java:94)

At Com.alibaba.dubbo.remoting.transport.abstractserver.<init> (abstractserver.java:67)

... More

Caused by:java.net.BindException: Address already in use

At Sun.nio.ch.Net.bind0 (Native Method)

At Sun.nio.ch.Net.bind (net.java:344)

At Sun.nio.ch.Net.bind (net.java:336)

At Sun.nio.ch.ServerSocketChannelImpl.bind (serversocketchannelimpl.java:199)

At Sun.nio.ch.ServerSocketAdaptor.bind (serversocketadaptor.java:74)

At Org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.bind (nioserversocketpipelinesink.java:148)

At Org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.handleServerSocket ( NIOSERVERSOCKETPIPELINESINK.JAVA:100)

At Org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.eventSunk (nioserversocketpipelinesink.java:74 )

At Org.jboss.netty.channel.Channels.bind (channels.java:468)

At Org.jboss.netty.channel.AbstractChannel.bind (abstractchannel.java:192)

At Org.jboss.netty.bootstrap.serverbootstrap$binder.channelopen (serverbootstrap.java:348)

At Org.jboss.netty.channel.Channels.fireChannelOpen (channels.java:176)

At Org.jboss.netty.channel.socket.nio.nioserversocketchannel.<init> (nioserversocketchannel.java:85)

At Org.jboss.netty.channel.socket.nio.NioServerSocketChannelFactory.newChannel ( nioserversocketchannelfactory.java:142)

At Org.jboss.netty.channel.socket.nio.NioServerSocketChannelFactory.newChannel ( NIOSERVERSOCKETCHANNELFACTORY.JAVA:90)

At Org.jboss.netty.bootstrap.ServerBootstrap.bind (serverbootstrap.java:282)

... More

The first thought is to see what takes up 18191 ports:

[Root@centos02 app]# Netstat-tunlp|grep 18191
TCP 0 0::: 18191:::* LISTEN 23049/jsvc.exec

[Root@centos02 app]# Ps-ef|grep 23049
Tomcat 23049 23048 0 May18? 00:04:14 Jsvc.exec-java-home/usr/java/jdk1.7.0_04-user Tomcat ...

Taking 18191 is the Tomcat instance that deploys the app.

Kill-9 Kill instance, restart, same error.

Colleague changed Port 28191, or reported a similar error, just became 28191 port is occupied.

The error log is the only port that is using a fault message, so look at the other logs.

Tomcat Log, Catalina.log:

May 18, 2016 7:36:36 pm Org.apache.catalina.loader.WebappClassLoader validatejarfile

Info: Validatejarfile (/data/www/root/security/security/web-inf/lib/servlet-api-2.5.jar)-jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offendi

Ng Class:javax/servlet/servlet.class

May 18, 2016 7:36:41 pm Org.apache.catalina.core.StandardContext start

Severity: Error Listenerstart

May 18, 2016 7:36:41 pm Org.apache.catalina.core.StandardContext start

Severity: Context [/security] startup failed due to previous errors

May 18, 2016 7:36:41 pm Org.apache.catalina.loader.WebappClassLoader clearreferencesjdbc

Critical: the Web Applicatio

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.