Как получить данные объекта с помощью функции удаленной отладки?

StackOverflow https://stackoverflow.com/questions/1264412

Вопрос

Интересно, как я могу использовать метод удаленной отладки, аналогичный Eclipse, для получения данных из удаленного объекта (который находится на сервере)?У меня уже есть клиентский код, и я просто хочу расширить его для привязки (если возможно) к какому-то порту и получения данных с сервера.

Честно говоря, я не хочу использовать что-то конкретное на стороне сервера (т.е.создайте дополнительный код на сервере), поскольку сервер уже позволяет удаленную отладку, и я могу видеть данные в представлении отладчика Eclipse.

Если бы вы указали мне пример кода - это было бы еще лучше.Заранее очень признателен.

Это было полезно?

Решение

Прочитав ответ @Romam на мой комментарий, я думаю, что лучшим решением было бы добавить простой интерфейс удаленного мониторинга на стороне сервера, который отвечал бы на запрос клиента, собирал соответствующие данные объекта и возвращал их клиенту.Если мониторинг на стороне сервера был совместим с JMX, вам, возможно, даже не понадобится реализовывать какой-либо клиентский код.

Существует ряд проблем с использованием JDPA для этого, в том числе:

  • Безопасность:если пользователь может использовать ваш собственный клиент для удаленного доступа к вашему серверу, он, вероятно, также может использовать обычный удаленный отладчик.Это позволяет им видеть любое состояние, которое они хотят, а также, возможно, удаленно изменять его.
  • Сложность:управлять протоколом JDPA со стороны клиента, скорее всего, непросто.
  • Хрупкость:если я не ошибаюсь, вашему клиенту необходимо будет жестко запрограммировать (например,в строках) знание имен классов, имен членов и типов членов для серверной базы кода.Если вы измените детали реализации серверных объектов, ваш код JDPA вполне может сломаться.

Другие советы

Подозреваю, что здесь вы найдете то, что вам нужно:

http://www.j2ee.me/j2se/1.3/docs/guide/jpda/architecture.html

И что вам необходимо реализовать то, что называется «интерфейсом», который «реализует высокоуровневый интерфейс отладки Java».

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top