[解決済み] java.net.ConnectException :connection timed out: connect?
2022-03-01 18:29:52
質問
私は自分のコードでRMIを使用しています。
import java.rmi.*;
public interface AddServerIntf extends Remote {
double add(double d1,double d2) throws RemoteException;
}
import java.rmi.*;
import java.rmi.server.*;
public class AddServerImpl extends UnicastRemoteObject implements AddServerIntf {
public AddServerImpl() throws RemoteException {
}
public double add(double d1,double d2) throws RemoteException {
return d1+d2;
}
}
import java.net.*;
import java.rmi.*;
public class AddServer {
public static void main(String args[]) {
try {
AddServerImpl addServerImpl=new AddServerImpl();
Naming.rebind("AddServer",addServerImpl);
} catch(Exception exc) {
System.out.println(exc);
}
}
}
import java.rmi.*;
public class AddClient {
public static void main(String args[]) {
try {
String Url="rmi://"+args[0]+"/AddServer";
AddServerIntf addServerIntf=(AddServerIntf)Naming.lookup(Url);
System.out.println("The first number is "+args[1]);
double d1=Double.valueOf(args[1]).doubleValue();
System.out.println("The second number is: "+args[2]);
double d2=Double.valueOf(args[2]).doubleValue();
System.out.println("The Sum is: "+addServerIntf.add(d1,d2));
} catch(Exception exc) {
System.out.println(exc);
}
}
}
以上、4つの.javaファイルを書きました。
次に、これらのファイルをすべてコンパイルして
stub
を使って
rmic AddServerImpl
. その後、サーバ側で rmi レジストリを起動します。
start rmiregistry
. 次に、サーバーを起動します。
java AddServer
で、最後にクライアントが
java AddClient 27.60.200.80 5 9
.
しかし、何も起こらない
クライアント側でスローされる例外は
java.net.ConnectException : connection timed out : connect
どのような理由で、どのように解決すればよいのでしょうか?
クライアントマシン上では、以下の .class ファイルがあります。
AddClient.class AddServerImpl.class AddServerImpl_Stub.class
で、サーバー側では
AddServer.class AddServerImpl.class AddServerImpl_Stub.class AddServerIntf.class
どのように解決するのですか?
エラーメッセージによると、「接続がタイムアウトしました。これは、リクエストがある(デフォルトの)時間枠内に応答を得られなかったことを意味します。応答が得られなかった理由は、以下のいずれかである可能性があります。
- a) IP/ドメインまたはポートが正しくない
- b) そのIP/ドメインまたはポート(つまりサービス)が停止している
- c) IP/ドメインが応答するのに既定のタイムアウトより長くかかっている
- d) ファイアウォールが、使用しているポートへのリクエストまたはレスポンスをブロックしている。
- e) その特定のホストへのリクエストをブロックしているファイアウォールがある場合
- f) インターネットアクセスがダウンしている
ISPによるファイアウォール、ポートまたはIPのブロッキングが行われている場合がありますのでご注意ください。
関連
-
[解決済み] Java - JTextFieldが空かどうかを確認する
-
[解決済み] ストリングビルダー.イコール Java
-
[解決済み] Oracle DB : java.sql.SQLException: 閉じた接続
-
[解決済み] ファイルを作成せずに、ファイルが存在するかどうかをチェックする
-
[解決済み] JAVA_OPTIONS、JAVA_TOOL_OPTIONS、JAVA_OPTSの違いについて
-
[解決済み] 午前0時からの時間を秒単位で取得する方法
-
[解決済み] Eclipseでクラスとそれに対応するファイルの名前を変更する方法は?
-
[解決済み] Javaでネストされたループから抜け出すには?
-
[解決済み】WindowsでTCPまたはUDPポートをリッスンしているプロセスを見つけるにはどうすればよいですか?
-
[解決済み] [Solved] java.net.ConnectException: 接続が拒否されました
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Javaで拡張子なしのファイル名を取得する方法は?
-
[解決済み] Java - JTextFieldが空かどうかを確認する
-
[解決済み] java.util.concurrent.ExecutionException 例外をどのように処理しますか?
-
[解決済み] Java UnknownFormatConversionException
-
[解決済み] Eclipse- Dynamic Web Module 3.0 で新しいプロジェクトを作成するときに Java 1.6 以降が必要なエラーが発生する。
-
[解決済み] javascriptでExpression言語を使うには?
-
[解決済み] JDBC タイプの方言マッピングがありません。1111
-
[解決済み] Maven: assembly-pluginが全く実行されない
-
[解決済み] Javaコンパイラーエラー:ステートメントではありません
-
[解決済み] ヘッドリカーシオンとテールリカーシオンの違い [重複]について