1

Atg Dyanmo Application Server の外部 JVM から JNDI を使用していくつかのオブジェクトにアクセスしようとしています。私は次のコードを使用しています -

    import java.util.Hashtable;
    import javax.naming.Context;
    import javax.naming.InitialContext;

    public class URLTest {

    public static Object getNamedObject() {
    Object o = null;
    Hashtable env = new Hashtable();

    env.put(Context.INITIAL_CONTEXT_FACTORY, "atg.jndi.url.dynamoejb.RemoteEJBContext");
    env.put(Context.URL_PKG_PREFIXES, "atg.jndi.url.dynamoejb ");

    env.put(Context.PROVIDER_URL, "rmi://10.112.83.203:8860");

    env.put(Context.SECURITY_PRINCIPAL, "admin");
    env.put(Context.SECURITY_CREDENTIALS, "admin");

    try
    {
    Context ctx = new InitialContext(env);
    System.out.println("Got Context - " + ctx);

    o = ctx.lookup("dynamo:/pearsonpoc/beans/UserInformation");
    System.out.println("Lookup success  - " + o);
}
    catch (Exception e) {
    System.out.println("ERR - " + e);
    }

    return o;
    }
    }

このコードを同じ jvm で実行すると正常に動作しますが、他の jvm からこれを実行しようとすると動作しません。Rmi サーバーはポート 8860 で実行されています。クライアントからの要求を基本的に停止するサーバーの設定はありますか? これは私が得ている例外です -

09:46:25,963 INFO [STDOUT] コンテキストを取得しました - javax.naming.InitialContext@e3a921 09:46:26,010 INFO [STDOUT] ERR - javax.naming.NameNotFoundException: dynamo:/pearsonpoc/beans/UserInformation 09:46:26,010 INFO [STDOUT] 結果 - null

助けてください。ありがとう

4

1 に答える 1

1

サーバー上のサービスをエクスポートする必要があります。

にこの変更を加えます。/atg/dynamo/server/RmiServer.properties

exportServices+=/pearsonpoc/beans/UserInformation

于 2009-08-12T18:07:25.660 に答える