WebSphere : JDWP error in VM_INIT: TransportException

J’ai reçu l’erreur suivant en essayant de redémarrer un serveur applicatif en Websphere .
L’erreur s’affiche dans SystemErr.log, dans SystemOut.log rien d’indicatif :

08:43:21.820 ERROR: [Agent.cpp:164] JDWP error in VM_INIT: TransportException [510/201] binding to port failed (error code: -212


En cherchant un peu cela vient de l’échec de Websphere d’obtenir le port renseigné dans  server.xml, en particulier celui de debug JVM  - c’est ce qui est indiqué par le code message JDWP – j’ai fait un grep sur la valeur debugArgs :

grep -i debugArgs ./config/cells/aix61devNode01Cell/nodes/aix61devNode01/servers/server1/server.xml
  < services xmi:type="debugservice:DebugService" xmi:id="DebugService_1319801562654" enable="true" jvmDebugPort="7777" jvmDebugArgs="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=7777" BSFDebugPort="4444" BSFLoggingLevel="0"/ >
    < jvmEntries xmi:id="JavaVirtualMachine_1183122130078" verboseModeClass="false" verboseModeGarbageCollection="false" verboseModeJNI="false" runHProf="false" hprofArguments="" debugMode="true" debugArgs="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=7777" genericJvmArguments="" >


Apparemment il cherche à allouer le port 7777 c’est le port par défaut pour le debugging JVM en Websphere , je fait un recherche sur le port voulu et effectivement il est déjà allouer par un autre serveur :
lsof -Pnl +M -i4 | grep 7777  

je modifie le fichier server.xml pour lui indiqué un autre port libre et voila que cela redémarre :

    < jvmEntries xmi:id="JavaVirtualMachine_1183122130078" verboseModeClass="false" verboseModeGarbageCollection="false" verboseModeJNI="false" runHProf="false" hprofArguments="" debugMode="true" debugArgs="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=7788" genericJvmArguments="" >
      < systemProperties xmi:id="Property_1" name="com.ibm.security.jgss.debug" value="off" required="false"/ >

La modification peut aussi se faire au niveau console :

Un peu plus bas :

Souvenez-vous qu’en activant certains options sur WebSphere cela peut activer l’utilisation de certains ports qui ne sont pas forcement libres ou autorisé par le par-feu.