Jboss5.0.1GA サーバーをインストールしたクラウド インスタンスがあります。サーバー インスタンスには、パブリック IP と natted IP アドレスが含まれています。-b と IP (natted) アドレスを使用して Jboss サーバーを実行しましたが、Web URL は正常に動作しています。現在、JbossサーバーにデプロイされているEJB3 BeanにアクセスするためのJava外部クライアントを作成しています. EJB3にアクセスするために外部クライアントで何を使用しているかを示す以下のコードを見つけてください。
properties = new Properties();
properties.load(stream);
// Set the context
Hashtable ht = new Hashtable();
ht.put(Context.INITIAL_CONTEXT_FACTORY,
"org.jnp.interfaces.NamingContextFactory");
ht.put(Context.PROVIDER_URL,"public ip address");
ht.put(Context.URL_PKG_PREFIXES,
"org.jboss.naming:org.jnp.interfaces");
// Find and create a reference to the bean using JNDI
context = new InitialContext(ht);
localhost を実行している間、正常に動作します。以下の例外をスローするリモート接続中。"javax.naming.CommunicationException [ルート例外は java.rmi.ConnectException: ホストへの接続が拒否されました: ". 誰でも同じことで私を助けることができますか?
`これは私のコネクタファイル(ejb3-connectors-jboss-beans.xml)です。
EJB3 コネクタ
-->
JBoss Remoting Connector
Note: Bean Name "org.jboss.ejb3.RemotingConnector" is used
as a lookup value; alter only after checking java references
to this key.
-->
<property name="invokerLocator">
<value-factory bean="ServiceBindingManager"
method="getStringBinding">
<parameter>
jboss.remoting:type=Connector,name=DefaultEjb3Connector,handler=ejb3
</parameter>
<parameter>
<null />
</parameter>
<parameter>socket://${jboss.bind.address}:${port}</parameter>
<parameter>
<null />
</parameter>
<parameter>3873</parameter>
</value-factory>
</property>
<property name="serverConfiguration">
<inject bean="ServerConfiguration" />
</property>
AOP org.jboss.aspects.remoting.AOPRemotingInvocationHandler
`