Adrian N. Informatyk
Temat: Java RMI callbacki
Witam,Od jakiegoś czasu odkładam rozwiązanie problemu z RMI.
Mam jeden serwer nasłuchującego po RMI. Do niego podłącza się kilka osob clientami. Komunikacja zachodzi od klienta do serwera. Tutaj w każdym przypadku jest OK. Problem pojawia się gdy serwer ma wysłać callbacka do klienta.
Po nawiązaniu połączenia RMI z serwerem przekazuje do niego obiekt klienta implementujący Remote.
Wszystko działa OK tylko gdy serwer znajduje się w ramach tej samej podsieci (lub posiada jawnie wskazaną trasę do klienta // w systemie //).
Schody zaczynają się gdy klient wyjdzie poza wspólną sieć i dodatkowo posiada adres IP NATowany // wewnętrzny //
Przy wywołaniu callbacka serwer zrzuca wyjątek:
http://wklej.org/id/399486/
Teraz moim zdaniem należy po prostu zmienic adres endpoint - który pokazuje wewnętrzny adres klienta (do ktorego oczywiście serwer nie posiada trasy) - powinien wyświetlać adres IP routera.
Koledzy, pytanie do was - w jaki sposób zmienic ten adres :)
Z góry dzięki za sugestie!
pozdrawiam,
Adrian