Problema
Falha ao iniciar o DF-e Client – Address already in use: JVM_Bind – Como resolver ?
Causa
O DF-e Client faz a troca de mensagens através da porta HTTP 16011 e quando essa porta está em uso por outro serviço dos Windows irá ocorrer a falha: Address already in use: JVM_Bind.
Alguns serviços que podem fazer uso dessa porta são:
- Windows Remote Management (WS-Management)
- Descoberta SSDP
- Spooler de Impressão
- Publicação de Recursos de Descoberta de Função
- Host de Provedor da Descoberta de Função
Solução/Procedimento
Se ao verificar o log do DF-e Client for encontrado erro abaixo pode-se realizar dois procedimentos, veja:
0210 20:38:55,813 [WrapperSimpleAppMain] ERROR Service - AgentServer#1.ServiceManager, cannot start service:org.objectweb.joram.mom.proxies.tcp.TcpProxyService java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at fr.dyade.aaa.agent.ServiceManager.start(ServiceManager.java:128) at fr.dyade.aaa.agent.ServiceManager.start(ServiceManager.java:157) at fr.dyade.aaa.agent.AgentServer.start(AgentServer.java:1340) at br.com.oobj.me.util.InicializacaoFila.inicializarFila(InicializacaoFila.java:56) at br.com.oobj.me.util.InicializacaoFila.garantirInicializacaoFila(InicializacaoFila.java:22) at br.com.oobj.me.gui.MotorPerifericoMain.<init>(MotorPerifericoMain.java:157) at br.com.oobj.me.gui.MotorPerifericoMain.getInstance(MotorPerifericoMain.java:459) at br.com.oobj.me.gui.MotorPerifericoMain.main(MotorPerifericoMain.java:396) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:287) at java.lang.Thread.run(Thread.java:745) Caused by: java.net.BindException: Address already in use: JVM_Bind at java.net.DualStackPlainSocketImpl.bind0(Native Method) at java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:106) at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387) at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190) at java.net.ServerSocket.bind(ServerSocket.java:375) at java.net.ServerSocket.<init>(ServerSocket.java:237) at java.net.ServerSocket.<init>(ServerSocket.java:181) at org.objectweb.joram.mom.proxies.tcp.TcpProxyService.init(TcpProxyService.java:136) ... 18 more
Soluções alternativas
1 – Alterar a porta de comunicação utilizada pelo DF-e Client
1.1 – Abra o notepad do windows e copie o as 4 linhas abaixo.
factory.host=localhost factory.port=16022 factory.user=root factory.pass=root
1.2 – Salve os dados com a seguinte nomenclatura: joram.properties no seguinte diretório:
- C:\Oobj\Aplicativos\Oobj\motor-periferico-std\resources
1.3 – Reinicie o serviço do DF-e Client
2 – Parar os serviços HTTP do Windows
Se por algum motivo a primeira opção não puder ser executada pode-se parar os serviços HTTP do windows temporariamente até que o DF-e Client possa ser reiniciado.
2.1 – Abra o CMD do Windows como administrador
2.2 – Execute o comando “NET STOP HTTP“
Veja que o Windows listou vários programas como sendo serviços HTTP, confirme com a letra S para Windows PT-BR e Y para Windows EN
2.3 – Reinicie o DF-e Client
2.4 – Inicie os serviços que foram parados, no exemplo acima os seguintes serviços foram parados.
Dependendo da versão do Windows esses serviços podem ser diferentes, visto isso se atente aos serviços que foram parados quando você executou o comando e os inicie novamente.
- Windows Remote Management (WS-Management)
- Descoberta SSDP
- Spooler de Impressão
- Publicação de Recursos de Descoberta de Função
- Host de Provedor da Descoberta de Função
Feito isso já pode voltar a emitir normalmente.