2014-05-23 16 views
9

Niedawno pobrałem Glassfish 4.0 i chcę go użyć w NetBeans do tworzenia aplikacji internetowych, ale gdy chcę uruchomić domenę1 (asadmin> domain-domena1), to nadal uzyskanie tego błędu: "Istnieje proces, który już korzysta z portu administratora 4848 - prawdopodobnie jest to kolejne wystąpienie serwera GlassFish". Jakaś wskazówka, co może być problemem?Serwer Glassfish Server start-domain domain1 nie zostanie uruchomiony

+2

Musisz odpowiedź na twoje pytanie * Istnieje proces już używający portu administratora 4848 - prawdopodobnie jest to kolejna instancja serwer GlassFish * – Keerthivasan

+2

Przyczyną może być to, że [nazwa hosta nie jest poprawna] (http://stackoverflow.com/questions/7391466/unable-to-start-glassfish-3-1-even-though-port- niezajęte) –

+0

To 'netstat -tulpn | grep 4848' pomoże zweryfikować działający proces. – Gilberto

Odpowiedz

3

Twój system za pomocą portu 4848, dlatego. kiedy szklane rybki zaczynają swoje zapotrzebowanie trzy numery portów jeden dla administracji, jeden dla http innych aplikacji dla https.

więc w twoim systemie 4848 jest już zarezerwowany przez jakiś program lub serwer.

Lub możesz zmienić domyślny numer portu zgodnie ze swoimi potrzebami, jak poniżej. wpisz w wierszu polecenia.

Aby zmienić port HTTP 10080:

  • asadmin set server.http-service.http-listener.http-listener-1.port=10080

Aby zmienić port HTTPS do 10443:

  • asadmin set server.http-service.http-listener.http-listener-2.port=10443

Aby zmienić administrację port 14848 Serwer:

  • asadmin set server.http-service.http-listener.admin-listener.port=14848
+0

Jak mogę zmienić port Glassfish, lub jak mogę dowiedzieć się, co zajmuje ten port i zatrzymać ten proces? –

+0

edit server.xml możesz znaleźć domyślny numer portu w nim. –

+0

w twoim przypadku, który byłby plik domain1.xml –

0

Wykonaj

netstat -aon

z linii poleceń i sprawdzić, który to proces jest za pomocą portu. Jeśli to nie jest ważne, zabij to jako szybkie rozwiązanie.

+1

Nie wyświetla żadnych procesów używających portu 4848 ... –

17

Glassfish nie może rozwiązać nazwy hosta. Diagnozuj problem (w systemie Linux) w następujący sposób:

  1. Otwórz terminal.
  2. Wpisz hostname.
  3. Typ: ping $(hostname)

Jeśli polecenie ping nie powiedzie się (nie mógł znaleźć hosta), następnie dodać nazwę hosta do /etc/hosts. Można to osiągnąć w następujący sposób:

  1. Przełącz na root: sudo su -
  2. Typ: echo "127.0.0.1 $(hostname)" >> /etc/hosts
  3. Zabij GlassFish
  4. Restart GlassFish
+1

Masz rację. Wiedziałem, że to nie ma nic wspólnego z innym procesem na porcie 4848 (działało nc-4848). Dodałem dane wyjściowe 'hostname' na'/etc/hosts' i zadziałało. BTW, działo się zarówno z Glassfish 4.0 i 4.1. –

0

1- Przejdź do config folder wewnątrz Twojej domeny. (w moim przypadku C: \ GlassFish \ GlassFish \ domains \ mydomain \ config \)

2-Otwarte domena plik

3-Update numer portu na tych trzech liniach: enter image description here

4-Uruchom swoją domenę:

--Note Dla restartowania domenę:

1 Otwórz konsolę cmd

2-Nawiguj yo domena

3-Execute: mydomain asadmin restart-domeny

--i nadzieję, że pomoże :-)

1

Spróbuj lsof -i:4848 na terminalu.

Imgur

zabić procesy Java wymienione pomocą polecenia kill -9 <PID>.

Jeśli masz menedżera zadań GUI, powiedz jak monitor aktywności na OSX, możesz po prostu zabić wymienione tam procesy java.

Mam nadzieję, że to działa dla każdego, kto ma ten problem.

0

Rozwiązanie może być w ten sposób: w rodzaju konsoli:

echo $HOSTNAME 

następnie upewnij się, że wyjście następujący ciąg 127.0.0.1 w

/etc/hosts 

Na przykład:

127.0.0.1 dev.myserv.pl