ローカルホストでJBoss AS 7(7.1.1 final)サーバーをいくつかのキューで動作させています。
そして、デスクトップ アプリケーションでそのキューに接続したいと考えています。
だから私はこのようなものを書きました:
Hashtable env = new Hashtable();
env.put(Context.PROVIDER_URL, "remote://localhost:4447");
env.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
env.put(Context.URL_PKG_PREFIXES, "org.jboss.naming:org.jnp.interfaces");
InitialContext initialContext = new InitialContext(env);
ConnectionFactory connectionFactory = (ConnectionFactory)
initialContext.lookup("RemoteConnectionFactory"); // <- there is it fail
ただし、次の例外が発生します。
スレッド「メイン」の例外 javax.naming.CommunicationException: 次のいずれの URL への接続も取得できませんでした: remote://localhost:4447 および検出がエラーで失敗しました: javax.naming.CommunicationException: 受信がタイムアウトしました [ルート例外は java. net.SocketTimeoutException: 受信タイムアウト] [ルート例外は javax.naming.CommunicationException: サーバーリモートへの接続に失敗しました:1099 [ルート例外は javax.naming.ServiceUnavailableException: サーバーリモートへの接続に失敗しました:1099 [ルート例外は java. net.UnknownHostException: リモート]]]
もちろん、クラスパスにjbosscall-client.jarがあります。