CORBA アプリケーションと相互運用する必要がある JNDI クライアントでは、 ストリング・フォーマットの名前を表すために INS 名前構文を使用する必要があります。
システム・プロパティーまたは jndi.properties ファイルでは、 パラメーターを介して InitialContext コンストラクターに名前構文プロパティーを渡すことができます。 初期コンテキストおよびそのコンテキストから検索されるコンテキストでは、 指定された構文に基づいて名前ストリングを構文解析します。
以下の例は、初期コンテキストが INS 構文に従って名前ストリングの構文解釈を行うよう、名前構文を設定する方法を示しています。
... import java.util.Hashtable; import javax.naming.Context; import javax.naming.InitialContext; import com.ibm.websphere.naming.PROPS; // WebSphere naming constants ... Hashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory"); env.put(Context.PROVIDER_URL, ...); env.put(PROPS.NAME_SYNTAX, PROPS.NAME_SYNTAX_INS); Context initialContext = new InitialContext(env); // The following name maps to a CORBA name component as follows: // id = "a.name", kind = "in.INS.format" // The unescaped dot is used as the delimiter. // Escaped dots are interpreted literally. java.lang.Object o = initialContext.lookup("a¥¥.name.in¥¥.INS¥¥.format"); ...
INS 名前構文では、in.INS.format のように、 名前に埋め込まれたピリオド (.) を、 円記号 (¥) を使用してエスケープする必要があります。 Java ストリング・リテラルでは、 円記号 (¥) を、さらに別の円記号 (¥¥) で エスケープする必要があります。