Назад | Перейти на главную страницу

Suse 11: удаленная отладка Java не может правильно подключиться

Я знаю, что это вопрос Java, но я чувствую, что это скорее проблема сети.

У меня есть сервер Suse 11, на который я бы поставил простую java-программу, я запускаю ее с параметрами отладки. Как и на любой другой машине XP / Win7 / Ubuntu.

С этим Suse11 на оборудовании виртуальной машины я не могу подключить сокет. Иногда он подключается, но тогда я как будто никогда не получаю никаких пакетов.

Я не понимаю, почему есть еще одна виртуальная машина Suse11, к которой я могу подключиться, и все в порядке. Я не вижу никаких различий между ними (ожидайте, что они находятся в разных подсетях, хотя меня заверили в сетевом отделе, что это не имеет значения)

Может ли кто-нибудь дать мне совет или вещи, которые я могу проверить.

Спасибо Джефф


Похоже, что Websphere 7 / JDK 1.6 требует, чтобы для порта было установлено значение «0.0.0.0:7777», а не только «7777». Это позволяет открывать порт за пределами текущего компьютера.

Теперь это решило мою проблему.

Спасибо за помощь.

Джефф Портер

По умолчанию Sles Linux не предоставляет нестандартный порт.

Таким образом, установка порта отладки в WS на 7777 через веб-страницу (IBM / консоль) открывает доступ к порту только внутри коробки. Чтобы открыть его, вам нужно ввести «0.0.0.0:7777», но веб-страница не допускает этого в качестве значения.

Итак, чтобы изменить его вручную, перейдите в этот файл на коробке ...

/opt/IBM/WebSphere/AppServer/profiles/WRSProfile/config/cells/WRSNodeCell/nodes/WRSNode/servers/server1/server.xml

Затем замените 7777 на 0.0.0.0:7777 в файле. (в файле есть 3 места, где это можно изменить)

 <services xmi:type="debugservice:DebugService" 
 xmi:id="DebugService_1331818723840" enable="true" 
 jvmDebugPort="0.0.0.0:7777" 
 jvmDebugArgs="-agentlib:jdwp=transport=dt_socket,
 server=y,suspend=n,
 address=0.0.0.0:7777" 
 BSFDebugPort="4444" BSFLoggingLevel="0"/>
...
 <jvmEntries xmi:id="JavaVirtualMachine_1183122130078" 
 verboseModeClass="false" verboseModeGarbageCollection="false" 
 verboseModeJNI="false" maximumHeapSize="1024" runHProf="false" 
 hprofArguments="" debugMode="true" 
 debugArgs="-agentlib:jdwp=transport=dt_socket,
 server=y,suspend=n,
 address=0.0.0.0:7777" 
 genericJvmArguments="">

Затем остановите и запустите сервер.

/opt/IBM/WebSphere/AppServer/bin # ./stopServer.sh server1

..

/opt/IBM/WebSphere/AppServer/bin # ./startServer.sh server1

Теперь вы можете подключить к машине отладчик!