Диагностирование и отладка приложения ITSO Electronics
5.3.2 Включение отладки Java в агенте, Web-сервисе или библиотеке скриптов
Чтобы включить отладку Java, перейдите к закладке Security окна свойств Agent, Web Services или Script Library и выберите Compile Java code with debugging information (Компилировать код Java с предоставлением информации об отладке) ( рис. 5.7).
При компилировании кода Java, который будет отлаживаться вне Lotus Domino Designer, компилируйте его с параметром –g. После модификации агента или Web-сервиса экспортируйте исходный код в доступный для отладчика файл.
Для получения дополнительной информации о JPDA см.: http://java.sun.com/products/jpda
5.3.3 Подключение отладчика к JVM
При выполнении приведенных ниже инструкций необходимо использовать Rational Application Developer, основанный на технологии Eclipse. При использовании другого отладчика действия могут отличаться.
- Запустите клиент Lotus Notes и откройте приложение ITSO Electronics, содержащее агент или Web-сервис, который необходимо отладить с помощью включенного отладчика Java.
- Запустите отладчик.
- Создайте проект Java и переключитесь на перспективу Java (Java perspective), так же как на рис. 5.8. Выберите File => New => Project (Файл Создать Проект). Выберите Java в окне Project, введите название проекта и щелкните по кнопке Finish (Завершить). Переключитесь к перспективе Java, либо откройте проект, если он уже существует.
- Чтобы вставить исходные файлы Java, сделайте щелчок правой кнопкой мыши по папке проекта, находящейся в левой панели, и выберите из контекстного меню Import (Импортировать) (см. рис. 5.9).
- Выберите тип файлов, который необходимо импортировать, а затем с помощью функции Browse (Обзор) укажите путь к исходным файлам Java. Выберите папку, в которую будут сохранены импортируемые файлы ( рис. 5.10).
- Щелкните по кнопке Finish для импорта файлов. Если исходный код Java не импортирован, то вы сможете увидеть поток выполняемых задач и получить доступ к переменным, однако не сможете увидеть исходный код и установить контрольные точки, поскольку отладчику доступен только импортированный исходный код ( рис. 5.11).
- В Lotus Notes запустите агент или Web-сервис, который необходимо отладить.
- В Rational Application Developer выберите Run => Debug (Выполнить Отладка) и введите название конфигурации отладчика ( рис. 5.12). Перейдите к закладке Connect (Подключения). Выберите проект, введите имя хоста или адрес компьютера Lotus Notes и введите номер порта отладки Java в клиенте Lotus Notes. В качестве адреса хоста необходимо использовать 127.0.0.1, если клиенты Lotus Notes и Eclipse находятся на одном компьютере. Щелкните по кнопке Apply (необходимо только для первого раза или если изменена конфигурация), а затем по кнопке Debug, чтобы присоединить отладчик.
После присоединения отладчика вы увидите поток выполняемых задач JVM. Поток агента выглядит следующим образом:
Thread(AgentThread: JavaAgent)(Running)
Вы можете приостановить поток выполняемых задач, чтобы получить контроль над ним. В этот момент становятся доступными обычные средства отладчика (установка точек прерывания, пошаговая трассировка, продолжение, просмотр значений переменных и т. д.).
Агент Java должен работать достаточно долго, чтобы можно было присоединить отладчик к JVM. Вы можете отложить выполнение в начале процедуры, например вставив цикл с предписаниями ожидания.
Если Lotus Notes и отладчик находятся на разных компьютерах и вы получили сообщение "Failed to connect to remote VM" ("Не удалось подключиться к удаленной VM"), то это, вероятнее всего, свидетельствует о том, что выбранный порт используется другим процессом. Попробуйте определить другой номер порта и перезапустить Lotus Notes.
Для получения более подробной информации об удаленной отладке Java обратитесь к Lotus Domino Designer 7 Help по адресу: http://www.lotus.com/ldd/doc/domino_notes/7.0/help7_designer.nsf
5.3.4 Рассуждения о безопасности
Отладка Java по сети небезопасна. Вам следует перезапустить Lotus Notes или предварительный просмотр в Web без включенной отладки Java, когда вы не отлаживаете Java-код. Чтобы отключить отладку Java, перейдите к "Диагностирование и отладка приложения ITSO Electronics" , ";Включение отладки Java в клиенте Lotus Notes".