it-swarm.com.de

java.net.SocketException: Fehler bei erkanntem Windows Sockets: 0: JVM_Bind (JBOSS)


Ich verwende JBoss 4.0.5 GA unter Windows 7 mit Java Version 1.5 (ich muss eine ältere Java-Version und ein JBoss verwenden, da ich mit einem Altsystem arbeite). Beim Starten des Servers erhalte ich folgende Fehlermeldung: 

Java.net.SocketException: Unrecognized Windows Sockets error: 0: JVM_Bind  

Und ich glaube, dass dies viele andere Ausnahmen verursacht: 

11:09:26,925 WARN  [ServiceController] Problem starting servicejboss.cache:service=TomcatClustering Cache
Java.lang.NullPointerException
    at org.jgroups.protocols.FD_SOCK.down(FD_SOCK.Java:235)
    at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.Java:467)
    at org.jgroups.stack.Protocol.passDown(Protocol.Java:510)
    at org.jgroups.protocols.FD.down(FD.Java:278)
    at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.Java:467)
    at org.jgroups.stack.Protocol.passDown(Protocol.Java:510)
    at org.jgroups.stack.Protocol.down(Protocol.Java:540)
    at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.Java:467)
    at org.jgroups.stack.Protocol.passDown(Protocol.Java:510)
    at org.jgroups.protocols.pbcast.NAKACK.down(NAKACK.Java:297)
    at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.Java:467)
    at org.jgroups.stack.Protocol.passDown(Protocol.Java:510)
    at org.jgroups.protocols.UNICAST.down(UNICAST.Java:262)
    at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.Java:467)
    at org.jgroups.stack.Protocol.passDown(Protocol.Java:510)
    at org.jgroups.protocols.pbcast.STABLE.down(STABLE.Java:292)
    at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.Java:467)
    at org.jgroups.stack.Protocol.passDown(Protocol.Java:510)
    at org.jgroups.protocols.pbcast.GMS.down(GMS.Java:605)
    at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.Java:467)
    at org.jgroups.stack.Protocol.passDown(Protocol.Java:510)
    at org.jgroups.protocols.FC.down(FC.Java:122)
    at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.Java:467)
    at org.jgroups.stack.Protocol.passDown(Protocol.Java:510)
    at org.jgroups.protocols.FRAG2.down(FRAG2.Java:146)
    at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.Java:467)
    at org.jgroups.stack.Protocol.passDown(Protocol.Java:510)
    at org.jgroups.protocols.pbcast.STATE_TRANSFER.down(STATE_TRANSFER.Java:217)
    at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.Java:467)
    at org.jgroups.stack.ProtocolStack.down(ProtocolStack.Java:331)
    at org.jgroups.JChannel.down(JChannel.Java:1035)
    at org.jgroups.JChannel.connect(JChannel.Java:374)
    at org.jboss.cache.TreeCache.startService(TreeCache.Java:1424)
    at org.jboss.cache.aop.PojoCache.startService(PojoCache.Java:94)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.Java:289)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.Java:245)

    at Sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
    at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
    at Java.lang.reflect.Method.invoke(Method.Java:597)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.Java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.Java:94)
    at org.jboss.mx.server.Invocation.invoke(Invocation.Java:86)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.Java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.Java:659)
    at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.Java:978)
    at $Proxy0.start(Unknown Source)
    at org.jboss.system.ServiceController.start(ServiceController.Java:417)
    at Sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
    at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
    at Java.lang.reflect.Method.invoke(Method.Java:597)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.Java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.Java:94)
    at org.jboss.mx.server.Invocation.invoke(Invocation.Java:86)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.Java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.Java:659)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.Java:210)
    at $Proxy4.start(Unknown Source)
    at org.jboss.deployment.SARDeployer.start(SARDeployer.Java:302)
    at org.jboss.deployment.MainDeployer.start(MainDeployer.Java:1025)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.Java:819)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.Java:782)
    at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:39)
    at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
    at Java.lang.reflect.Method.invoke(Method.Java:597)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.Java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.Java:94)
    at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.Java:133)
    at org.jboss.mx.server.Invocation.invoke(Invocation.Java:88)
    at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.Java:142)
    at org.jboss.mx.server.Invocation.invoke(Invocation.Java:88)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.Java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.Java:659)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.Java:210)
    at $Proxy8.deploy(Unknown Source)
    at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.Java:421)
    at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.Java:634)
    at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.Java:263)
    at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.Java:336)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.Java:289)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.Java:245)

    at Sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
    at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
    at Java.lang.reflect.Method.invoke(Method.Java:597)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.Java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.Java:94)
    at org.jboss.mx.server.Invocation.invoke(Invocation.Java:86)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.Java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.Java:659)
    at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.Java:978)
    at $Proxy0.start(Unknown Source)
    at org.jboss.system.ServiceController.start(ServiceController.Java:417)
    at Sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
    at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
    at Java.lang.reflect.Method.invoke(Method.Java:597)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.Java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.Java:94)
    at org.jboss.mx.server.Invocation.invoke(Invocation.Java:86)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.Java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.Java:659)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.Java:210)
    at $Proxy4.start(Unknown Source)
    at org.jboss.deployment.SARDeployer.start(SARDeployer.Java:302)
    at org.jboss.deployment.MainDeployer.start(MainDeployer.Java:1025)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.Java:819)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.Java:782)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.Java:766)
    at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:39)
    at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
    at Java.lang.reflect.Method.invoke(Method.Java:597)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.Java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.Java:94)
    at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.Java:133)
    at org.jboss.mx.server.Invocation.invoke(Invocation.Java:88)
    at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.Java:142)
    at org.jboss.mx.server.Invocation.invoke(Invocation.Java:88)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.Java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.Java:659)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.Java:210)
    at $Proxy5.deploy(Unknown Source)
    at org.jboss.system.server.ServerImpl.doStart(ServerImpl.Java:482)
    at org.jboss.system.server.ServerImpl.start(ServerImpl.Java:362)
    at org.jboss.Main.boot(Main.Java:200)
    at org.jboss.Main$1.run(Main.Java:490)
    at Java.lang.Thread.run(Thread.Java:619)  

Ich schätze es sehr, wenn jemand helfen könnte. Zumindest um herauszufinden, wo ich nach der Lösung suchen sollte (z. B. Ist dies ein Fehler in Zusammenhang mit der Inkompatibilität von Windows 7 und JBoss-Clustering? Ist dies auf eine falsche Portkonfiguration zurückzuführen? Usw.) 

Vielen Dank.

19

Dieses Problem tritt auf einigen Windows-Systemen auf, auf denen der IPv6 TCP Stack installiert ist. Wenn auf dem Computer sowohl IPv4 als auch IPv6 installiert sind, kann die Java Virtual Machine (JVM) Probleme beim Schließen oder Öffnen von Sockets auf Betriebssystemebene haben. 

Fügen Sie die folgende JVM-Option hinzu: -Djava.net.preferIPv4Stack=true 

Ich habe dies auf Windows 7- und Windows 2008-Systemen beobachtet, auf denen standardmäßig IPv4- und IPv6-Stacks installiert sind.

26
user1269569

Es ist sehr wahrscheinlich, dass ein anderer Prozess bereits an einen Port gebunden ist, den JBoss verwendet (8080?), Und dies verhindert, dass JBoss ordnungsgemäß startet (siehe diese Seite eine Liste der von JBoss verwendeten Ports).

Entweder den Konfliktprozess finden und herunterfahren:

  • verwenden Sie netstat -a -o -n und suchen Sie nach von JBoss verwendeten Ports (z. B. 8080) und der entsprechenden pid.
  • verwenden Sie dann tasklist /FI "PID eq <pid>", um den Prozess zu finden

Oder ändern Sie die Standard-Ports von JBoss. Es gibt mehrere Möglichkeiten, dies zu tun, aber am besten verwenden Sie den Service Binding Manager (siehe ausführliche Anweisungen unter Mehrere JBoss-Instanzen auf einer Maschine konfigurieren ).

14
Pascal Thivent

Ich bin auf das gleiche Problem unter Win7 gestoßen, als ich versuchte, das Beispiel hier zu implementieren: http://download.Oracle.com/javase/tutorial/networking/sockets/clientServer.html

Der Standardport im Beispielcode ist 4444. Mit diesem Port habe ich "Unbekannter Windows-Sockets-Fehler: 0: JVM_Bind"

Ich änderte den Port auf 44444 und versuchte es erneut. Ich habe ein Popup vom Windows-Firewall-Dienst erhalten, in dem ich gefragt wurde, ob diese Anwendung die Berechtigung hat, auf das Netzwerk zuzugreifen. OK auswählen Ich erhalte die Fehlermeldung nicht mehr, wenn ich meinen Server starte.

Nach einigem Experimentieren fand ich heraus, dass ich bei einem Port von 5000 oder weniger den JVM_Bind-Fehler erhalten würde. Jeder Port von 5001 oder höher würde ohne Probleme binden.

3
efelton

Ich hatte ein ähnliches Problem. Ich habe process-xp und kill javaw.exe verwendet und dann die Anwendung neu gestartet. Für mich geht das.

Ich hatte dieses Problem mit meinem Tomcat und es entstand ein Konflikt mit Skype. In meinem Skype-> Optionen-> Erweitert-> Verbindung habe ich das Kontrollkästchen "Port 80 und 443 als Alternativen für eingehende Verbindungen verwenden" deaktiviert. Dies löste das Problem vollständig.

2
Artem Khojoyan

dies löste mein Problem :) Fügen Sie die folgende JVM-Option hinzu: -Djava.net.preferIPv4Stack = true

2
niknik123

Es ist ein Problem mit Java 32/64 Bit. Versuchen Sie, Ihr Glas mit 32-Bit-JVM auszuführen

2
Kobi

Ich hatte das gleiche Problem mit Tomcat unter Windows 10. Das wurde der Datei catalina.bat oben hinzugefügt:

SET Java_OPTS=-Djava.net.preferIPv4Stack=true
1
mmeiners

Ich weiß, dass dies ein altes Problem ist, aber ich habe kürzlich eine Ursache des Problems sowie die Lösung herausgefunden. Mein Server-Socket-Programm hat gut funktioniert, bis ich den Code in eine Schleife geschrieben habe. Dann bekam ich bei jedem Versuch, accept() nach dem ersten Versuch den Fehler Unrecognized Windows Sockets error: 0: JVM_Bind. Ich hatte folgenden Code:

ServerSocket ssock = null;
Socket sock = null;

while (loopCount < loopLimit) {
    ssock = new ServerSocket(port);
    ssock.setSOLimit(millis);
    sock = ssock.accept();
    // some code here...
    loopCount++;
}

Erst wenn ich ssock = new ServerSocket(port) und ssock.setSOLimit(millis); über die Schleife stelle, konnte ich den Fehler beheben.

1
JCoop

Öffnen Sie den Befehl Als Administrator auffordern. Dann mache einen netsh Winsock Reset

0
Pijush