Interstage Application Server アプリケーション作成ガイド (CORBAサービス編)
目次 索引 前ページ次ページ

第9章 ネーミングサービスのプログラミング> 9.5 URLスキーマ

9.5.3 corbaname URLスキーマ

 corbaname URLは、ネーミングコンテキスト中のバインディング名を含むこと以外はcorbaloc URLと同様です。

 "corbaname::nshost/NameService#NC"は、nshost上のイニシャルサービス"NameService"で表されるネーミングコンテキストに、バインディング名"NC"で登録されているネーミングコンテキストのオブジェクトリファレンスを表します。

 "corbaname::nshost"のようにオブジェクトキーが指定されていない場合、オブジェクトキーとして"NameService"が指定されたものとみなされます。

 "corbaname:rir:#NC"は、オーバライド設定がされない初期設定のネーミングコンテキストに、文字列表記のバインディング名"NC"で登録されているネーミングコンテキストのオブジェクトリファレンスを表します。

 "corbaname:rir:", "corbaname:rir:/NameService"は、"corbaloc:rir:"と同等で、ORBInitRef引数、およびORBDefaultInitRef引数によるイニシャルリファレンスのオーバライドが設定されていない初期設定のネーミングコンテキストのオブジェクトリファレンスを表します。ORBInitRef引数、およびORBDefaultInitRef引数の詳細については、“ネーミングサービスのイニシャルリファレンスの獲得”を参照してください。

 corbanameのシンタックスは、以下のとおりです。

<corbaname>     = "corbaname:"<corbaloc_obj>["#"<string_name>]
<corbaloc_obj>  = <obj_addr_list> ["/"<key_string>]
<obj_addr_list> = “corbaloc URLスキーマ”参照。
<key_string>    = “corbaloc URLスキーマ”参照。
<string_name>   = stringfied Name | empty_string

corbaloc_obj  : corbaloc URLと同じシンタックスで表され、ネーミングコンテキストを指定します。
obj_addr_list : “corbaloc URLスキーマ”参照。
key_string    : “corbaloc URLスキーマ”参照。
string_name   : 以下に規定されているURLエスケープ付きの文字列表記のバインディング名です。

corbanameキャラクタエスケープ

 US-ASCII英数字、および以下に示された文字を除く文字がエスケープされます。

      ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" | "$" |
      "," | "-" | "_" | "." | "!" | "~" | "*" | "'" | "(" | ")"

corbanameエスケープメカニズム

 パーセント"%"文字がエスケープとして使われます。ネームコンポーネント中のエスケープが必要である文字は、"%"に続く2桁の16進数で表されます。最初の16進文字は上位のハーフバイトを表し、2つ目の16進文字は下位のハーフバイトを表します。"%"が2桁の16進数を後に持たない場合、文字列表記のバインディング名は構文は不当になります。
 エスケープメカニズムの例を以下に示します。

文字列化された名前

URLエスケープ後

備考

a.b/c.d

a.b/c.d

同一のURL形式となる

<a>.b/c.d

%3ca%3e.b/c.d

"<"と">"がエスケープされる

a.b/ c.d

a.b/%20%20c.d

2つの空白がエスケープされる

a%b/c%d

a%25b/c%25d

2つの%がエスケープされる

a\\b/c.d

a%5c%5cb/c.d

"\"がエスケープされる、文字列化された名前ですでにエスケープされる


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005