I was about to submit my project and decided to test i on Linux just in case.
Application works locally and remotly on ubuntu. So RMI looks fine.
Untill I tried to connect from another (Win) machine. Never worked on Linux before so it took me a while to check firewalls and hosts
but I still cant get the application to connect. The other way around works just fine.
Is this application or Linux configuration problem and can I just discard it?
I found a couple of pages regarding 127.0.0.1 problem with Linux and RMI but it didn't help that much.
I tried RMI connection on Ubuntu as the server and mac os x 10.5 as the client and it doesn't work as well. I tried using 2 windows machine and it works. I believe that it must be the firewall config or something. But like what Roberto said, as long as the server and client can connect, it's okay.
SCJP 5.0, SCJD
Joined: Sep 18, 2008
Thanks for the quick answers.
My aplication works fine on 2 windows machines and it works fine when running a server on windows and client on ubuntu. But not the other way around. Whats confusing is that it works on linux when running both server and client.
What irritates me is that I used Firestarter för ubuntu to check and RMI starts the way it should. I can se that my there is an attempt to connect on the 1099 port but it doesn't work. I read somewhere that
unix machines return 127.0.0.1 thrue RMI so I wonder if I need to do something in application or just let it be.
I planned on turning in the assigment today and did a "last check just in case " and now this #&$@ turned up
I think you could just let it be. I only tested it on my development machine (Windows) and on that machine and another one. Didn't test it at all on linux, because i don't have a pc with a linux distribution on it. And you have to submit a version.txt containing the JDK you used during development and the os of your development machine, so i guess they will take that into account.
IP address 127.0.0.1 is normally the loopback connector for localhost, you can't use this IP to connect from an other machine. Your Linux machine should have a second address like 192.168.xxx.xxx (0 >= xxx < 255). Verify IP setting on your linux with ifconfig -a which tells you all about your network configuration. Use ipconfig /all on windows to get almost the same information. Further bear in mind, if something runs on windows it doesn't mean it's all right! If the same doesn't run on linux, for sure something is wrong!