Python2.7 で Pyro4 を使用して単純なアプリケーションを実行しようとしています。2 つのプログラムがあります。1 つ目は、オブジェクトをその IP アドレスにバインドし、ネーム サービスも実行する server.py です。2 つ目は、同じネットワーク内のリモート PC で実行される client.py です。以下のコードは次のとおりです。
次のコマンドでネームサービスを開始しています。
python -Wignore -m Pyro4.naming --host 10.42.0.1 --port 9999
コマンドを使用してIPアドレスを確認しましたifconfig
サーバー.py
import Pyro4;
class chat:
def passMessage(self,msg):
print(msg);
return "Hello from the server....";
def main():
chatObj = chat();
Pyro4.Daemon.serveSimple(
{
chatObj : "chatObject"
},
"10.42.0.1",10101,ns=True);
main();
client.py
import Pyro4;
chatObj = Pyro4.Proxy("PYRONAME:chatObject");
chatObj.passMessage("Hello From the client....");
ネーミングサーバーは問題なく起動するのですが、server.pyを実行するとタイトルの通りエラーが表示されます。
同じアプリケーションを Windows 環境でテストしたところ、エラーは発生しませんでしたが、Ubuntu 13.04 ではエラーが表示されました。