GlassFish 3.1 не запускается из Eclipse

Я использую Linux и установил GlassFish 3.1 вне Eclipse. Он отлично запускается с asadmin start-domain.

В Eclipse Helios я установил последнюю версию инструментов GlassFish, адаптер сервера и т. д. Я добавил экземпляр «Сервер» для моего внешнего GlassFish, но когда я пытаюсь его запустить, консоль Eclipse сообщает: «Ожидание домена1 для start...." - печатается все больше и больше точек, пока я жду несколько минут. В конце концов появляется диалоговое окно с сообщением «Не удалось запустить сервер GlassFish 3.1 на локальном хосте».

Ни в коем случае http://localhost:8080 не отвечает.

Других сообщений об ошибках, которые я могу найти, нет. Журнал сервера (glassfish/domains/domain1/server.log) печатает длинную команду запуска, а затем:

Feb 28, 2011 10:48:45 PM com.sun.enterprise.admin.launcher.GFLauncherLogger info                                                                                                                                  
INFO: Successfully launched in 3 msec.

Установка GlassFish полностью стандартная, без загруженных приложений. Он отлично работает при запуске из командной строки вне Eclipse.

Я пытался переустановить GlassFish в разных местах, я переустанавливал Eclipse без каких-либо плагинов, кроме материала GlassFish.

Странно то, что сервер «Internal GlassFish 3.1», который распространяется с плагином Eclipse и живет внутри eclipse/plugins, работает просто отлично и запускается очень быстро. Но мне бы очень хотелось иметь внешний GlassFish, который я мог бы легко запускать независимо от Eclipse, когда захочу.

Помощь очень ценится!


person Coder Doe    schedule 28.02.2011    source источник
comment
В зависимости от пути установки Glassfish вам следует рассмотреть возможность запуска Eclipse от имени администратора.   -  person padmalcom    schedule 25.07.2013


Ответы (8)


Гум. Хорошей новостью является то, что внутренний сервер работает. Что касается внешнего, первое, что нужно проверить, — это возможность запуска сервера вне Eclipse. Проверьте также каталог домена, известный Eclipse (подсказка: вкладка свойств сервера), и укажите, является ли местоположение тем, которое вы хотите использовать. Может быть, домен был запущен с другим сервером Glassfish? В этом случае сначала убедитесь, что каталог osgi-cache/ в этом домене удален.

person Ludo    schedule 28.02.2011
comment
Хорошие идеи, но ни одна из них не помогла, к сожалению. Сервер прекрасно работает автономно, просто не запускается из Eclipse. Пробовал на другой машине (а именно на работе), и там работало нормально. В любом случае, это меня больше не беспокоит, так как я могу жить с внутренним. Но я не люблю жить с такими загадками :-) - person Coder Doe; 01.03.2011
comment
Позор мне за то, что я не отреагировал должным образом на ваше предложение удалить osgi-cache, потому что это решило проблему! Если быть точным, я удалил все содержимое Glassfish/domains/domain1/osgi-cache/. Спасибо! - person Coder Doe; 02.03.2011
comment
@Ludo Как насчет этого вопроса? отсутствующее исключение ресурса не может найти "> stackoverflow.com/questions/67540377/ - person Esteban; 16.05.2021

Вы можете иметь подробные журналы о том, что происходит:

перейдите в «Окно -> Настройки -> Настройки Glassfish».

Там вы можете проверить «Запустить Glassfish Enterprise Server в подробном режиме».

У меня тоже были проблемы с запуском Glassfish 3.1 изнутри eclipse. Я попытался удалить подкаталог «osgi-cache/», расположенный в каталоге домена, и тогда я смог успешно запустить стеклянную рыбу.

Надеюсь, поможет.

person guybedo    schedule 01.03.2011
comment
Удаление каталога osgi-cache действительно помогло, спасибо! :-) - person Coder Doe; 02.03.2011

Ошибка CLI130 Glassfish и ошибка использования порта 4848

Glassfish написан на Java, и если конфигурация TCP/IP системы не настроена определенным образом, Glassfish задохнется, когда сделает getLocaHost() вызов. Быстрое решение:

  1. Get the system's hostname and related IP
    • hostname
    • ifconfig -a
  2. Добавьте строку в /etc/hosts после строки localhost:

    имя хоста ip-адрес-имя-хоста

Еще немного предыстории.....

Если локальное имя хоста (значение, возвращаемое командой «hostname») не преобразуется в IP-адрес (например, «nslookup my-hostname»), Glassfish завершится ошибкой. Следующее приложение Java покажет это:

import java.net.*;
class Testnet {
    public static void main() throws Exception {
        InetAddress host = InetAddress.getLocalHost();
        System.out.println ("host=" + host.getHostName());
        System.out.println ("addr=" + host.getHostAddress());
    }
}

Основной причиной может быть любая из нескольких проблем:

  • Локальное имя хоста (значение, возвращаемое командой «hostname») не разрешается в IP-адрес или допустимый IP-адрес.
  • Неправильно настроен /etc/nsswitch.conf или /etc/hosts
  • В Интернете были предположения, что IPV6 только для адресации портит Java в Linux. Чтобы убедиться, что это вас не коснется, его можно установить в большинстве разновидностей Linux с помощью следующей команды (однако приведенное выше приложение Testnet работало для нас с bindv6only, установленным как на 1, так и на 0):

    sysctl -w net.ipv6.bindv6only=0

С точки зрения высокой доступности, наличие записи для локального IP-адреса и имени хоста в /etc/hosts — это надежная вещь, и убедитесь, что «файлы» являются первой записью в списке для «хостов» в /etc/nsswitch.conf. . Недостатком этого является то, что каждый хост должен быть настроен с этой строкой, и это может вызвать проблемы с узлами, которые получают свой IP-адрес от DHCP или назначаются случайным образом при настройке.

person HAmark    schedule 21.04.2011

Я столкнулся с той же проблемой, когда изучал веб-программирование на Java, но в netbeans - windows env. Я потратил много времени на то, чтобы угадать, что может означать эта ошибка, потому что в файле журнала это не было ясно сказано.

Наконец я узнал, что Glassfish v3 пытается запуститься на порту 8080, который уже занят reportservicesservice.exe, который является службой сервера sql.

перейти к (инструменты -> серверы) добавить новый экземпляр сервера Glassfish, который работает на другом свободном порту - это решило проблему.

person Ryan M    schedule 05.09.2011

Предложение удалить «osgi-cache» у меня сработало на ОДНОЙ машине (на работе).

Однако на моей домашней машине ни это предложение, ни предложение добавить имя хоста моей машины в файл «hosts» не помогли. Glassfish запустится, но Eclipse этого не распознает...

Единственное, что сработало для меня, было:

  1. перейдите в каталог Glassfish3/bin
  2. execute "asadmin create-domain newdomain"
    • in this step, I was prompted for an admin username and password; I chose "admin" and "admin123" respectively
  3. создайте сервер Glassfish в Eclipse, указывающий на новый домен

Теперь я знаю, что это может означать, что домен по умолчанию (domain1) имеет какую-то странную конфигурацию, но это просто не кажется правильным. Во всяком случае, это сработало для меня, и теперь я могу запустить Glassfish из Eclipse — любого домена Glassfish, который захочу.

ХТН.

person Ahmed    schedule 02.01.2012

Я использую Ubuntu 13.04 и у меня была такая же проблема. Я пробовал почти все, но когда я отключил IPv6, это сработало. Для Ubuntu это легко, просто добавьте следующие 3 строки в параметры ядра:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

и запустите sudo sysctl -p. Удачи ;)

p.s. Не забудьте отключить прокси-сервер, установите для Активного провайдера значение Прямые в Общие->Сетевые подключения.

person ravshansbox    schedule 12.08.2013
comment
МОЙ БОГ!! Так было и в моей системе (Ubuntu 17.10 x64 - Glassfish на JDK 7 x64). Это заняло у меня час. Спасибо! - person cljk; 23.10.2017

Если сервер работает вне Eclipse, трижды проверьте регистрационные данные этого сервера (runtime+domain) в самом Eclipse. На самом деле, попробуйте новое рабочее пространство eclipse... Защищен ли этот сервер https?

person Ludo    schedule 28.02.2011
comment
Я не уверен, что вы имеете в виду под проверкой регистрационных данных? И внутренний (поставляется с подключаемым модулем), и внешний сервер свежие, нетронутые, только что запущенные в первый раз. Я также пробовал новое рабочее пространство (должен был упомянуть об этом, извините). Там нет https, кроме самозаверяющего, который работает по умолчанию, но я его не использую. - person Coder Doe; 01.03.2011

У меня была такая же проблема с подключаемым модулем Indigo + Glassfish 3.1 при доступе к уже работающему локальному автономному экземпляру Glassfish (с именем пользователя «admin» и моим собственным паролем). К счастью, следующее помогло мне:

  • остановить стеклянную рыбку
  • удалить содержимое osgi-cache ( ${GLASSFISH_3.1HOME}/glassfish/domains/domain1/osgi-cache )
  • установить мое имя пользователя (в моем случае «admin») и сбросить пароль (вообще без пароля)

Запуск Glassfish из Indigo теперь работает!

person Vincenzo Cerbone    schedule 30.08.2011