--- a/jdk/src/linux/doc/man/ja/idlj.1 Mon Apr 18 23:00:53 2011 -0700
+++ b/jdk/src/linux/doc/man/ja/idlj.1 Tue Apr 19 20:58:46 2011 -0700
@@ -19,20 +19,14 @@
." or visit www.oracle.com if you need additional information or have any
." questions.
."
-.TH idlj 1 "02 Jun 2010"
+.TH idlj 1 "14 Apr 2011"
.LP
-.SH "名前"
-idlj \- IDL\-to\-Java コンパイラ
-.LP
-.RS 3
-
+.SH "̾"
+idlj \- IDL\-to\-Java ѥ
.LP
-\f3idlj\fP は、指定された IDL ファイルから Java バインディングを生成します。
-.RE
-.SH "形式"
-.LP
-
+\f3idlj\fP ϡꤵ줿 IDL ե뤫 Java Хǥޤ
+.SH ""
.LP
.nf
\f3
@@ -44,68 +38,118 @@
.LP
.LP
-\f2idl\-file\fP は、インタフェース定義言語 (IDL) による定義が入ったファイルの名前です。\f2options\fP の順番は任意ですが、\f2idl\-file\fP よりも前に指定しなければなりません。
-.LP
-.SH "説明"
+\f2idl\-file\fP ϡե (IDL) ˤäե̾Ǥ\f2options\fP ν֤ǤդǤ\f2idl\-file\fP ˻ꤷʤФʤޤ
.LP
-
+.SH ""
.LP
-IDL\-to\-Java コンパイラは、指定された IDL ファイルについて Java バインディングを生成します。 バインディングの詳細は、
+.LP
+IDL\-to\-Java ѥϡꤵ줿 IDL եˤĤ Java ХǥޤХǥξܺ٤ϡ
.na
\f2OMG IDL to Java Language Mapping Specification\fP @
.fi
-http://java.sun.com/javase/6/docs/technotes/guides/idl/mapping/jidlMapping.html を参照してください。IDL\-to\-Java コンパイラの以前のリリースの中には、\f2idltojava\fP という名前だったものがあります。
+http://java.sun.com/javase/6/docs/technotes/guides/idl/mapping/jidlMapping.html ȤƤIDL\-to\-Java ѥΰΥˤϡ\f2idltojava\fP Ȥ̾äΤޤ
+.LP
.SS
-クライアントバインディングおよびサーバーバインディングの発行
+饤ȥХǥӥСХǥȯ
+.LP
+.LP
+My.idl Ȥ̾ IDL եФ Java ХǥˤϡΥޥɤ¹Ԥޤ
.LP
-.RS 3
+.nf
+\f3
+.fl
+idlj My.idl
+.fl
+\fP
+.fi
+
+.LP
+.LP
+ˤꡢ饤¦ΥХǥޤΥޥɤϡΥޥɤǤ
+.LP
+.nf
+\f3
+.fl
+idlj \fP\f3\-fclient\fP My.idl
+.fl
+.fi
.LP
-My.idl という名前の IDL ファイルに対して Java バインディングを生成するには、次のコマンドを実行します。 \f2idlj My.idl\fP
.LP
-これにより、クライアント側のバインディングが生成されます。 このコマンドは、次のコマンドと等価です。 \f2idlj \fP\f4\-fclient\fP\f2 My.idl\fP
+饤¦ΥХǥˤϡС¦ΥȥȤ߹ޤƤޤեФƥС¦ΥХǥˤϡΥޥɤ¹Ԥޤ
.LP
-クライアント側のバインディングには、サーバー側のスケルトンは組み込まれていません。インタフェースに対してサーバー側のバインディングを生成するには、次のコマンドを実行します。 \f2idlj \fP\f4\-fserver\fP\f2 My.idl\fP
-.LP
-サーバー側のバインディングには、クライアント側のバインディングに加えて、スケルトンが組み込まれてています。 これらは、すべて \f2POA\fP (継承モデル) クラスです。クライアント側とサーバー側の両方のバインディングを生成する場合は、次のコマンド (どれも等価) のうちの 1 つを使用します。 \f2idlj \fP\f4\-fclient \-fserver\fP\f2 My.idl\fP
-.br
-\f2idlj \fP\f4\-fall\fP\f2 My.idl\fP
+.nf
+\f3
+.fl
+idlj \fP\f3\-fserver\fP My.idl
+.fl
+.fi
+
.LP
.LP
-サーバー側のモデルとしては、2 つのモデルが可能です。それは、継承モデルと、Tie 委譲モデルです。
+С¦ΥХǥˤϡ饤¦ΥХǥΤۤˡȥޤޤƤޤϤ٤ơ \f2POA\fP (ĤޤѾǥ) 饹Ǥ饤¦ȥС¦ξΥХǥϡΥޥ (ɤ) Τ 1 ĤѤޤ
+.LP
+.nf
+\f3
+.fl
+idlj \fP\f3\-fclient \-fserver\fP My.idl
+.fl
+idlj \f3\-fall\fP My.idl
+.fl
+.fi
+
.LP
.LP
-デフォルトのサーバー側のモデルは、「移殖可能サーバント継承モデル」です。\f2My.idl\fP 内で \f2My\fP インタフェースが定義されている場合は、\f2MyPOA.java\fP というファイルが生成されます。\f2My\fP に対してその実装を提供し、この実装は \f2_MyPOA\fP から継承する必要があります。
+С¦Dzǽʥǥ 2 ĤޤѾǥ Tie ѾǥǤ
.LP
.LP
-\f2MyPOA.java\fP は
+ǥեȤΥС¦ΥǥϡְܿǽХȷѾǥפǤ\f2My.idl\fP \f2My\fP եƤϡ\f2MyPOA.java\fP Ȥե뤬ޤμ \f2My\fP \f2MyPOA\fP Ѿɬפޤ
+.LP
+.LP
+\f2MyPOA.java\fP
.na
\f2org.omg.PortableServer.Servant\fP @
.fi
-http://java.sun.com/javase/6/docs/api/org/omg/PortableServer/Servant.html を拡張するストリームベースのスケルトンで、スケルトンが実装する IDL インタフェースに関連付けられている \f2InvokeHandler\fP インタフェースとオペレーションインタフェースを実装します。
+http://java.sun.com/javase/6/docs/api/org/omg/PortableServer/Servant.html ĥ륹ȥ١Υȥǡȥ IDL ե˴ϢդƤ \f2InvokeHandler\fP եȥڥ졼եޤ
.LP
.LP
.na
\f2Portable Object Adapter (POA)\fP @
.fi
-http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html の \f2PortableServer\fP モジュールは、ネイティブの \f2Servant\fP 型を定義します。Java プログラミング言語では、\f2Servant\fP 型は、Java の \f2org.omg.PortableServer.Servant\fP クラスにマッピングされています。これはあらゆる POA サーバント実装の基底クラスとなり多数のメソッドを提供します。 これらのメソッドはアプリケーションプログラマが呼び出すだけではなく、POA 自身からも呼び出され、場合によってはサーバントの動作を制御するためにユーザーがオーバーライドすることもあります。
+http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html \f2PortableServer\fP ⥸塼ϡͥƥ֤ \f2Servant\fP ޤJava ץߥǤϡ\f2Servant\fP Java \f2org.omg.PortableServer.Servant\fP 饹˥ޥåפޤΥ饹ϡ٤Ƥ POA Хȼδ쥯饹ȤƵǽץꥱץޤƤӽФȤΤǤ뤤ĤΥåɤΤۤˡPOA ΤΤˤäƸƤӽФ졢ХȤư椹뤿˥桼С饤ɤǤåɤޤ
+.LP
+.LP
+ѾǥΤ⤦ 1 ĤΥץϡ\f2\-oldImplBase\fP ե饰Ѥ뤳ȤǡJ2SE 1.4 ΥС Java ץߥȸߴΤ륵С¦Хǥ뤳ȤǤ\f2\-oldImplBase\fP ե饰ѤΤϡɸŪʼˡǤϤޤ API Ϻ侩ˤʤͽǤΥե饰ѤΤϡJ2SE 1.3 ǵҤ줿¸ΥСȤθߴɬפʾǤξˤϴ¸ MAKEFILE ѹ\f2idlj\fP ѥ \f2\-oldImplBase\fP ե饰ɲäɬפޤʤȡPOA ١ΥС¦ޥåԥޤ̸ߴΤ륵С¦ХǥˤϡΥޥɤѤޤ
+.LP
+.nf
+\f3
+.fl
+idlj \fP\f3\-fclient \-fserver\fP \f3\-oldImplBase\fP My.idl
+.fl
+idlj \f3\-fall\fP \f3\-oldImplBase\fP My.idl
+.fl
+.fi
+
.LP
.LP
-継承モデルのもう 1 つのオプションは、\f2\-oldImplBase\fP フラグを使用して、J2SE 1.4 より前のバージョンの Java プログラミング言語と互換性のあるサーバー側バインディングを生成することです。ただし、\f2\-oldImplBase\fP フラグを使用するのは、標準的な手法ではありません。これらの API は推奨されていません。このフラグを使用するのは、J2SE 1.3 で記述された既存のサーバーとの互換性を保つ場合だけです。その場合、既存の MAKEFILE を変更して \f2idlj\fP コンパイラに \f2\-oldImplBase\fP フラグを追加する必要があります。 フラグを追加しない場合、POA ベースのサーバー側マッピングが生成されます。下位互換性のあるサーバー側バインディングを生成するには、次のコマンドを使用します。
+\f2My.idl\fP \f2My\fP եƤϡ\f2_MyImplBase.java\fP Ȥե뤬ޤ\f2My\fP ФƤμμ \f2_MyImplBase\fP ѾʤФʤޤ
.LP
-\f2idlj \fP\f4\-fclient \-fserver\fP\f2 \fP\f4\-oldImplBase\fP\f2 My.idl\fP
-.br
-\f2idlj \fP\f4\-fall\fP\f2 \fP\f4\-oldImplBase\fP\f2 My.idl\fP
.LP
-\f2My.idl\fP 内で \f2My\fP インタフェースが定義されている場合は、\f2_MyImplBase.java\fP というファイルが生成されます。\f2My\fP に対してその実装を提供し、この実装は \f2_MyImplBase\fP から継承しなければなりません。
+⤦ 1 ĤΥС¦ǥϡTie ǥȸƤФΤǤΥС¦ǥϡѾǥǤTie ȥȥƱ뤳ȤϤǤʤᡢ̡ʤФʤޤΥޥɤˤäơTie ǥѤΥХǥޤ
.LP
-もう 1 つのサーバー側モデルは、Tie モデルと呼ばれるものです。このサーバー側モデルは、委譲モデルです。Tie とスケルトンを同時に生成することはできないため、それらは別々に生成しなければなりません。次のコマンドによって、Tie モデル用のバインディングが生成されます。
+.nf
+\f3
+.fl
+idlj \fP\f3\-fall\fP My.idl
+.fl
+idlj \f3\-fallTIE\fP My.idl
+.fl
+.fi
+
.LP
-\f2idlj \fP\f4\-fall\fP\f2 My.idl\fP
-.br
-\f2idlj \fP\f4\-fallTIE\fP\f2 My.idl\fP
.LP
-\f2My\fP というインタフェースの場合、上記の 2 番目のコマンドにより、\f2MyPOATie.java\fP が生成されます。\f2MyPOATie\fP のコンストラクタは、\f2delegate\fP を取ります。この例では、デフォルトの POA モデルを使用しているため、コンストラクタにも \f2poa\fP が必要です。\f2delegate\fP に対して実装を提供しなければなりませんが、この実装は \f2MyOperations\fP インタフェースから継承する必要があるだけで、その他のクラスから継承する必要はありません。しかし、この実装を ORB と一緒に使用するには、\f2MyPOATie\fP 内で実装をラップしなければなりません。たとえば、次のようにします。
+\f2My\fP Ȥեξ硢嵭 2 ܤΥޥɤˤꡢ\f2MyPOATie.java\fP ޤ\f2MyPOATie\fP Υȥ饯ϡ\f2delegate\fP ޤǤϡǥեȤ POA ǥѤƤ뤿ᡢȥ饯ˤ \f2poa\fP ɬפǤ\f2delegate\fP ФƼʤФʤޤμ \f2MyOperations\fP եѾɬפǡ¾Υ饹ѾɬפϤޤμ ORB Ȱ˻Ѥˤϡ\f2MyPOATie\fP ǼåפʤФʤޤȤСΤ褦ˤޤ
+.LP
.nf
\f3
.fl
@@ -143,16 +187,24 @@
.fi
.LP
-他の実装から継承しなければならない場合、標準の継承モデルではなく Tie モデルを使用することがあります。Java の場合は、インタフェースの継承の個数に制限はありませんが、クラスの継承に使用できるスロットは 1 つだけです。継承モデルを使用した場合は、そのスロットが占有されます。Tie モデルを使用した場合は、そのスロットが使用されず、ユーザーが独自の目的で使用することができます。ただし、間接参照のレベルが 1 つ導入されるという欠点があります。つまり、メソッドを呼び出すときに余分なメソッド呼び出しが発生します。
.LP
-IDL のバージョンから J2SE 1.4 より前のバージョンの Java 言語へのマッピングと互換性のある、サーバー側の Tie モデルのバインディングを生成するには、次のコマンドを使用します。
-.LP
-\f2idlj \fP\f4\-oldImplBase\fP\f2 \fP\f4\-fall\fP\f2 My.idl\fP
-.br
-\f2idlj \fP\f4\-oldImplBase\fP\f2 \fP\f4\-fallTIE\fP\f2 My.idl\fP
+¾μѾʤФʤʤ硢ɸηѾǥǤϤʤ Tie ǥѤ뤳ȤޤJava ξϡեηѾθĿ¤Ϥޤ饹ηѾ˻ѤǤ륹åȤ 1 ĤǤѾǥѤϡΥåȤͭޤTie ǥѤϡΥåȤѤ줺桼ȼŪǻѤ뤳ȤǤޤˡˤϡΥ٥뤬 1 ƳȤޤåɤƤӽФȤˡ;ʬʥåɸƤӽФ 1 ȯޤ
.LP
.LP
-\f2My\fP というインタフェースの場合、これにより \f2My_Tie.java\fP が生成されます。\f2My_Tie\fP のコンストラクタは、\f2impl\fP を取ります。\f2impl\fP に対して実装を提供しなければなりませんが、その実装は \f2HelloOperations\fP インタフェースから継承する必要があるだけで、その他のクラスから継承する必要はありません。しかし、この実装を ORB と一緒に使用するには、\f2My_Tie\fP 内で実装をラップしなければなりません。たとえば、次のようにします。
+IDL ΥС J2SE 1.4 ΥС Java ؤΥޥåԥȸߴΤ롢С¦ Tie ǥΥХǥˤϡΥޥɤѤޤ
+.LP
+.nf
+\f3
+.fl
+idlj \fP\f3\-oldImplBase\fP \f3\-fall\fP My.idl
+.fl
+idlj \f3\-oldImplBase\fP \f3\-fallTIE\fP My.idl
+.fl
+.fi
+
+.LP
+.LP
+\f2My\fP Ȥեξ硢ˤ \f2My_Tie.java\fP ޤ\f2My_Tie\fP Υȥ饯ϡ\f2impl\fP ޤ\f2impl\fP ФƼʤФʤޤμ \f2HelloOperations\fP եѾɬפǡ¾Υ饹ѾɬפϤޤμ ORB Ȱ˻Ѥˤϡ\f2My_Tie\fP ǼåפʤФʤޤȤСΤ褦ˤޤ
.LP
.nf
\f3
@@ -183,201 +235,383 @@
.fi
.LP
-.RE
.SS
-発行されたファイルの代替位置の指定
+ȯԤ줿եذ֤λ
+.LP
+.LP
+ȯԤ줿եȥǥ쥯ȥʳΥǥ쥯ȥ֤ˤϡΤ褦ʥޥɤǥѥƤӽФޤ
.LP
-.RS 3
+.nf
+\f3
+.fl
+idlj \fP\f3\-td /altdir\fP My.idl
+.fl
+.fi
.LP
-発行されたファイルをカレントディレクトリ以外のディレクトリに置くには、次のようなコマンドでコンパイラを呼び出します。
-.RS 3
+.LP
+\f2My\fP եξ硢Хǥϡ\f2./My.java\fP ǤϤʤ\f2/altdir/My.java\fP ʤɤȯԤޤ
+.LP
+.SS
+롼ɥեذ֤λ
+.LP
+.LP
+\f2My.idl\fP ˤ⤦ 1 Ĥ IDL ե \f2MyOther.idl\fP 롼ɤƤ硢ѥϡǥ쥯ȥ \f2MyOther.idl\fP Τꤷޤ⤷Υե뤬Ȥ \f2/includes\fP ˤϡΤ褦ʥޥɤǥѥƤӽФޤ
+.LP
+.nf
+\f3
+.fl
+idlj \fP\f3\-i /includes\fP My.idl
+.fl
+.fi
+
+.LP
+.LP
+ޤ⤷ \f2My.idl\fP ˡȤ \f2/moreIncludes\fP ˤ \f2Another.idl\fP ⥤롼ɤƤΤǤСΤ褦ʥޥɤǥѥƤӽФޤ
+.LP
+.nf
+\f3
+.fl
+idlj \fP\f3\-i /includes \-i /moreIncludes\fP My.idl
+.fl
+.fi
.LP
-\f2idlj \fP\f4\-td /altdir\fP\f2 My.idl\fP
-.RE
-\f2My\fP インタフェースの場合、バインディングは、\f2./My.java\fP ではなく、\f2/altdir/My.java\fP などに発行されます。
-.RE
-.SS
-インクルードファイルの代替位置の指定
+.LP
+Τ褦ʷǥ롼ɤꤹȡޥɤĹʣˤʤޤǡ롼ɥեѥ˻ؼ뤿̤ˡѰդƤޤˡϡĶѿιͤȻƤޤCLASSPATH ˥ꥹȤƤǥ쥯ȥ \f2idl.config\fP Ȥ̾Υեޤ \f2idl.config\fP ˡΤ褦ʷιԤޤ
.LP
-.RS 3
+.nf
+\f3
+.fl
+includes=/includes;/moreIncludes
+.fl
+\fP
+.fi
.LP
-\f2My.idl\fP にもう 1 つの IDL ファイル \f2MyOther.idl\fP がインクルードされている場合、コンパイラは、ローカルディレクトリに \f2MyOther.idl\fP があるものと想定します。もしそのファイルが、たとえば \f2/includes\fP にある場合は、次のようなコマンドでコンパイラを呼び出します。 \f2idlj \fP\f4\-i /includes\fP\f2 My.idl\fP
.LP
-また、もし \f2My.idl\fP に、たとえば \f2/moreIncludes\fP にある \f2Another.idl\fP もインクルードされているのであれば、次のようなコマンドでコンパイラを呼び出します。 \f2idlj \fP\f4\-i /includes \-i /moreIncludes\fP\f2 My.idl\fP
-.LP
-このような形式でインクルードを指定すると、コマンドが長くて複雑になります。 そこで、インクルードファイルを検索する場所をコンパイラに指示するための別の方法が用意されています。この方法は、環境変数の考え方と似ています。CLASSPATH にリストされているディレクトリ内に \f2idl.config\fP という名前のファイルを作成します。その \f2idl.config\fP の中に、次のような形式の行を入れます。 \f2includes=/includes;/moreIncludes\fP
-.LP
-コンパイラは、このファイルを検索し、インクルードリストを読み込みます。この例では、ディレクトリの間の区切り文字はセミコロン (;) になっています。この区切り文字は、プラットフォームによって異なります。たとえば、Windows プラットフォームではセミコロンですが、Unix プラットフォームではコロンです。 \f2インクルード\fPの詳細については、
+ѥϡΥե롼ɥꥹȤɤ߹ߤޤǤϡǥ쥯ȥδ֤ζڤʸϥߥ (;) ˤʤäƤޤζڤʸϡץåȥեˤäưۤʤޤȤСWindows ץåȥեǤϥߥǤUnix ץåȥեǤϥǤ \f2롼\fPξܺ٤ˤĤƤϡ
.na
-\f2CLASSPATH の設定\fP @
+\f2CLASSPATH \fP @
.fi
-http://java.sun.com/javase/6/docs/technotes/tools/index.html#general を参照してください。
-.RE
+http://java.sun.com/javase/6/docs/technotes/tools/index.html#general ȤƤ
+.LP
.SS
-インクルードファイルに対するバインディングの発行
+롼ɥեФХǥȯ
+.LP
+.LP
+ǥեȤǤϡޥɹԤ˻ꤷ IDL եƤ륤ե乽¤ΤʤɤˤĤƤΤߡJava Хǥޤ롼ɤ줿եƤ뷿ˤĤƤϡJava ХǥޤȤС 2 Ĥ IDL եˤĤƹͤƤߤޤ礦
+.LP
+
+.LP
+.LP
+\f4My.idl\fP
.LP
-.RS 3
+.nf
+\f3
+.fl
+#include <MyOther.idl>
+.fl
+interface My
+.fl
+{
+.fl
+};
+.fl
+\fP
+.fi
.LP
-デフォルトでは、コマンド行に指定した IDL ファイルで定義されているインタフェースや構造体などについてのみ、Java バインディングが生成されます。インクルードされたファイルで定義されている型については、Java バインディングは生成されません。たとえば、次の 2 つの IDL ファイルについて考えてみましょう。 \f4My.idl\fP
+
.LP
-\f2#include <MyOther.idl>\fP
-.br
-\f2interface My\fP
-.br
-\f2{\fP
-.br
-\f2};\fP
-.br
-\f4MyOther.idl\fP
+.LP
+\f4MyOther.idl\fP
.LP
-\f2interface MyOther\fP
-.br
-\f2{\fP
-.br
-\f2};\fP\
-.LP
-次のコマンドでは、\f2My\fP に対する Java バインディングだけが生成されます。 \f2idlj My.idl\fP
-.LP
-\f2My.idl\fP で定義されている型と、\f2My.idl\fP にインクルードされたファイル (この例では \f2MyOther.idl\fP) で定義されている型すべてについて Java バインディングを生成するには、次のコマンドを使用します。 \f2idlj \fP\f4\-emitAll\fP\f2 My.idl\fP
+.nf
+\f3
+.fl
+interface MyOther
+.fl
+{
+.fl
+};
+.fl
+\fP
+.fi
+
.LP
-このデフォルトの規則に関して注意しなければならないことがあります。グローバルスコープに指定した \f2#include\fP 文は、前述のとおりに処理されます。これらの \f2#include\fP 文は、インポート文と見なすことができます。それに対して、他の定義に囲まれたスコープ内に指定した \f2#include\fP 文は、本当の意味での \f2#include\fP 文として処理されます。 つまり、インクルードされたファイルにあるコードが、元のファイルにそのまま指定されているかのように処理され、それに対して Java バインディングが発行されます。次に例を示します。 \f4My.idl\fP
+
.LP
-\f2#include <MyOther.idl>\fP
-.br
-\f2interface My\fP
-.br
-\f2{\fP
-.br
-\f2\ #include <Embedded.idl>\fP
-.br
-\f2};\ \fP \f4MyOther.idl\fP
.LP
-\f2interface MyOther\fP
-.br
-\f2{\fP
-.br
-\f2};\ \fP \f4Embedded.idl\fP
-.LP
-\f2enum E {one, two, three};\fP\
-.LP
-このとき、次のコマンドを実行すると、 \f2idlj My.idl\fP
+ΥޥɤǤϡ\f2My\fP Ф Java Хǥޤ
.LP
-次のような一連の Java ファイルが生成されます。 \f2./MyHolder.java\fP
-.br
-\f2./MyHelper.java\fP
-.br
-\f2./_MyStub.java\fP
-.br
-\f2./MyPackage\fP
-.br
-\f2./MyPackage/EHolder.java\fP
-.br
-\f2./MyPackage/EHelper.java\fP
-.br
-\f2./MyPackage/E.java\fP
-.br
-\f2./My.java\fP
+.nf
+\f3
+.fl
+idlj My.idl
+.fl
+\fP
+.fi
+
.LP
-インポート文と見なされる \f2#include\fP に定義されているため、\f2MyOther.java\fP は生成されません。ただし、本当の意味での \f2#include\fP で定義されているため、\f2E.java\fP は生成されます。さらに、\f2Embedded.idl\fP が \f2My\fP インタフェースのスコープ内にインクルードされていたため、\f2My\fP のスコープ内 (つまり、\f2MyPackage\fP 内) に生成されています。
.LP
-上記の例で \f2\-emitAll\fP フラグを使用すれば、インクルードされたすべてのファイルにあるすべての型が発行されます。
+\f2My.idl\fP Ƥ뷿ȡ\f2My.idl\fP ˥롼ɤ줿ե (Ǥ \f2MyOther.idl\fP) Ƥ뷿٤ƤˤĤ Java ХǥˤϡΥޥɤѤޤ
.LP
-.RE
-.SS
-パッケージの接頭辞の挿入
-.LP
-.RS 3
+.nf
+\f3
+.fl
+idlj \fP\f3\-emitAll\fP My.idl
+.fl
+.fi
.LP
-ABC という名前の会社のために作業していて、次のような IDL ファイルを構築したとしましょう。
-.br
-\f4Widgets.idl\fP
.LP
-\f2module Widgets\fP
-.br
-\f2{\fP
-.br
-\f2\ interface W1 {...};\fP
-.br
-\f2\ interface W2 {...};\fP
-.br
-\f2};\fP\
+ΥǥեȤε§˴ؤդʤФʤʤȤޤХ륹פ˻ꤷ \f2#include\fP ʸϡҤΤȤ˽ޤ \f2#include\fP ʸϡݡʸȸʤȤǤޤФơ¾˰Ϥޤ줿˻ꤷ \f2#include\fP ʸϡΰ̣Ǥ \f2#include\fP ʸȤƽޤĤޤꡢ롼ɤ줿եˤ륳ɤΥեˤΤޤꤵƤ뤫Τ褦˽졢Ф Java ХǥȯԤޤϤǤ
.LP
-このファイルに対して IDL\-to\-Java コンパイラを実行すると、\f2W1\fP および \f2W2\fP に対する Java バインディングが \f2Widgets\fP パッケージ内に生成されます。しかし、業界の慣例によると、会社のパッケージは、\f2com.<会社名>\fP という名前のパッケージ内に置くことになっています。そのため、\f2Widgets\fP パッケージでは不十分です。慣例に従うには、パッケージを \f2com.abc.Widgets\fP にする必要があります。このパッケージ接頭辞を \f2Widgets\fP モジュールに付加するには、次のコマンドを実行します。 \f2idlj \fP\f4\-pkgPrefix Widgets com.abc\fP\f2 Widgets.idl\fP
-.LP
-\f2Widgets.idl\fP をインクルードしている IDL ファイルがある場合は、そのコマンドにも \f2\-pkgPrefix\fP フラグが必要です。このフラグを指定しないと、その IDL ファイルは、\f2com.abc.Widgets\fP パッケージではなく、\f2Widgets\fP パッケージを検索することになります。
-.LP
-接頭辞が必要なパッケージがいくつもある場合は、前述の \f2idl.config\fP ファイルで接頭辞を指定するのが簡単です。パッケージの接頭辞を指定する行は、それぞれ次の形式で記述します。
-.LP
-\f2PkgPrefix.<type>=<prefix>\fP
-.LP
-したがって、上記の例の場合は、次のように記述します。 \f2PkgPrefix.Widgets=com.abc\fP
+
.LP
.LP
-このオプションを使用しても、リポジトリ ID は影響を受けません。
-.LP
-.RE
-.SS
-コンパイル前のシンボルの定義
-.LP
-.RS 3
-
+\f4My.idl\fP
.LP
-コンパイル用のシンボルが IDL ファイル内で定義されていない場合は、そのシンボルを定義する必要があります。 これは、たとえば、バインディング内にデバッグコードを組み入れるときに使用します。次のコマンドは、 \f2idlj \fP\f4\-d\fP\f2 MYDEF My.idl\fP
-.LP
-\f2My.idl\fP 内に \f2#define MYDEF\fP という行を指定した場合と等価です。
-.RE
-.SS
-既存のバインディングの保持
-.LP
-.RS 3
+.nf
+\f3
+.fl
+#include <MyOther.idl>
+.fl
+interface My
+.fl
+{
+.fl
+ #include <Embedded.idl>
+.fl
+};
+.fl
+\fP
+.fi
.LP
-Java バインディングファイルがすでに存在する場合は、\f2\-keep\fP フラグを指定すると、コンパイラによる上書きを回避できます。デフォルトでは、すでに存在するかどうかにかかわらず、すべてのファイルが生成されます。これらのファイルをカスタマイズした場合 (ただし、それらの内容が正確であるとき以外はカスタマイズは避ける)、\f2\-keep\fP オプションは有用です。次のコマンドは、 \f2idlj \fP\f4\-keep\fP\f2 My.idl\fP
-.LP
-クライアント側のバインディングで、まだ存在しないものをすべて発行します。
-.RE
-.SS
-コンパイルの進捗状況の表示
-.LP
-.RS 3
.LP
-IDL\-to\-Java コンパイラは、実行の各段階で状態メッセージを生成します。「冗長」モード (メッセージが多いモード) にするには、\f2\-v\fP オプションを使用します。 \f2idlj \fP\f4\-v\fP\f2 My.idl\fP
+.LP
+\f4MyOther.idl\fP
.LP
-デフォルトでは、コンパイラは冗長モードでは実行されません。
-.RE
-.SS
-バージョン情報の表示
+.nf
+\f3
+.fl
+interface MyOther
+.fl
+{
+.fl
+};
+.fl
+\fP
+.fi
+
.LP
-.RS 3
.LP
.LP
-IDL\-to\-Java コンパイラのビルドバージョンを表示するには、コマンド行で \f2\-version\fP オプションを指定します。
+\f4Embedded.idl\fP
+.LP
+.nf
+\f3
+.fl
+enum E {one, two, three};
+.fl
+\fP
+.fi
+
+.LP
+
+.LP
+.LP
+ΤȤΥޥɤ¹Ԥȡ
+.LP
+.nf
+\f3
+.fl
+idlj My.idl
+.fl
+\fP
+.fi
+
.LP
.LP
-\f2idlj \-version\fP
+Τ褦ʰϢ Java ե뤬ޤ
+.LP
+.nf
+\f3
+.fl
+./MyHolder.java
+.fl
+./MyHelper.java
+.fl
+./_MyStub.java
+.fl
+./MyPackage
+.fl
+./MyPackage/EHolder.java
+.fl
+./MyPackage/EHelper.java
+.fl
+./MyPackage/E.java
+.fl
+./My.java
+.fl
+\fP
+.fi
+
+.LP
+.LP
+ݡʸȸʤ \f2#include\fP Ƥ뤿ᡢ\f2MyOther.java\fP ޤΰ̣Ǥ \f2#include\fP Ƥ뤿ᡢ\f2E.java\fP ޤˡ\f2Embedded.idl\fP \f2My\fP եΥ˥롼ɤƤᡢ\f2My\fP Υ (Ĥޤꡢ\f2MyPackage\fP ) Ƥޤ
+.LP
+.LP
+嵭 \f2\-emitAll\fP ե饰ѤС롼ɤ줿٤ƤΥեˤ뤹٤ƤηȯԤޤ
+.LP
+.SS
+ѥåƬ
+.LP
+.LP
+ABC Ȥ̾βҤΤ˺ȤƤơΤ褦 IDL եۤȤޤ礦
+.LP
+
+.LP
+.LP
+\f4Widgets.idl\fP
+.LP
+.nf
+\f3
+.fl
+module Widgets
+.fl
+{
+.fl
+ interface W1 {...};
+.fl
+ interface W2 {...};
+.fl
+};
+.fl
+\fP
+.fi
+
+.LP
+
.LP
.LP
-バージョン情報は、コンパイラによって生成されたバインディング内にも書き込まれています。このオプションをコマンド行に指定すると、それ以外のオプションを指定しても、すべて無視されます。
+ΥեФ IDL\-to\-Java ѥ¹Ԥȡ\f2W1\fP \f2W2\fP Ф Java Хǥ \f2Widgets\fP ѥåޤȳδˤȡҤΥѥåϡ\f2com.<̾>\fP Ȥ̾Υѥå֤ȤˤʤäƤޤΤᡢ\f2Widgets\fP ѥåǤԽʬǤ˽ˤϡѥå \f2com.abc.Widgets\fP ˤɬפޤΥѥåƬ \f2Widgets\fP ⥸塼ղäˤϡΥޥɤ¹Ԥޤ
+.LP
+.nf
+\f3
+.fl
+idlj \fP\f3\-pkgPrefix Widgets com.abc\fP Widgets.idl
+.fl
+.fi
+
+.LP
+.LP
+\f2Widgets.idl\fP 롼ɤƤ IDL ե뤬ϡΥޥɤˤ \f2\-pkgPrefix\fP ե饰ɬפǤΥե饰ꤷʤȡ IDL եϡ\f2com.abc.Widgets\fP ѥåǤϤʤ\f2Widgets\fP ѥå뤳Ȥˤʤޤ
+.LP
+.LP
+ƬɬפʥѥåĤ⤢ϡҤ \f2idl.config\fP եƬꤹΤñǤѥåƬꤹԤϡ줾켡ηǵҤޤ
+.LP
+.nf
+\f3
+.fl
+PkgPrefix.<type>=<prefix>
+.fl
+\fP
+.fi
+
+.LP
+äơ嵭ξϡΤ褦˵Ҥޤ
+.nf
+\f3
+.fl
+PkgPrefix.Widgets=com.abc
+.fl
+\fP
+.fi
+
+.LP
+.LP
+ΥץѤƤ⡢ݥȥ ID ϱƶޤ
+.LP
+.SS
+ѥΥܥ
+.LP
+.LP
+ѥѤΥܥ뤬 IDL եƤʤϡΥܥɬפޤϡȤСХǥ˥ǥХåɤȤȤ˻ѤޤΥޥɤϡ
+.LP
+.nf
+\f3
+.fl
+idlj \fP\f3\-d\fP MYDEF My.idl
+.fl
+.fi
+
+.LP
.LP
-.RE
-.SH "オプション"
+\f2My.idl\fP \f2#define MYDEF\fP ȤԤꤷǤ
+.LP
+.SS
+¸ΥХǥݻ
+.LP
+.LP
+Java Хǥե뤬Ǥ¸ߤϡ\f2\-keep\fP ե饰ꤹȡѥˤǤޤǥեȤǤϡǤ¸ߤ뤫ɤˤ餺٤ƤΥե뤬ޤΥեޥ (ƤΤǤȤʳϥޥ)\-keep ץͭѤǤΥޥɤϡ
+.LP
+.nf
+\f3
+.fl
+idlj \fP\f3\-keep\fP My.idl
+.fl
+.fi
+
+.LP
+.LP
+饤¦ΥХǥǡޤ¸ߤʤΤ٤ȯԤޤ
+.LP
+.SS
+ѥοĽɽ
+.LP
+.LP
+IDL\-to\-Java ѥϡ¹ԤγʳǾ֥åޤ־Ĺץ⡼ (å¿⡼) ˤˤϡ\f2\-v\fP ץѤޤ
.LP
+.nf
+\f3
+.fl
+idlj \fP\f3\-v\fP My.idl
+.fl
+.fi
.LP
+.LP
+ǥեȤǤϡѥϾĹ⡼ɤǤϼ¹Ԥޤ
+.LP
+.SS
+Сɽ
+.LP
+.LP
+IDL\-to\-Java ѥΥӥɥСɽˤϡޥɹԤ \f2\-version\fP ץꤷޤ
+.LP
+.nf
+\f3
+.fl
+idlj \-version
+.fl
+\fP
+.fi
+
+.LP
+.LP
+Сϡѥˤä줿ХǥˤޤƤޤΥץޥɹԤ˻ꤹȡʳΥץꤷƤ⡢٤̵뤵ޤ
+.LP
+.SH "ץ"
+.LP
.RS 3
.TP 3
\-d symbol
-このオプションは、IDL ファイルに次のような行を追加した場合と等価です。
-.RS 3
-
-.LP
+ΥץϡIDL ե˼Τ褦ʹԤɲäǤ
.nf
\f3
.fl
@@ -385,33 +619,32 @@
.fl
\fP
.fi
-.RE
.TP 3
\-emitAll
-\f2#include\fP ファイル内で定義されているものも含めて、すべての型を発行します。
+#include ե ƤΤޤơ \f2٤Ƥη\fP ȯԤޤ
.TP 3
\-fside
-発行するバインディングを定義します。 \f2side\fP は、\f2client\fP、\f2server\fP、\f2serverTIE\fP、\f2all\fP、\f2allTIE\fP のどちらかです。\f2\-fserverTIE\fP または \f2\-fallTIE\fP オプションを指定すると、委譲モデルスケルトンが発行されます。このフラグを指定しなかった場合は、\f2\-fclient\fP が指定されたものと見なされます。
+ȯԤХǥޤ\f2side\fP \f2client\fP\f2server\fP\f2serverTIE\fP\f2all\fP\f2allTIE\fP Τ줫ˤʤޤ\f2\-fserverTIE\fP ޤ \f2\-fallTIE\fP ץꤹȡѾǥ륹ȥȯԤޤΥե饰ꤷʤäϡ\f2\-fclient\fP ꤵ줿Τȸʤޤ
.TP 3
\-i include\-path
-デフォルトでは、インクルードファイルはカレントディレクトリから検索されます。このオプションを指定すると、ほかのディレクトリを追加できます。
+ǥեȤǤϡ롼ɥեϥȥǥ쥯ȥ꤫鸡ޤΥץꤹȡۤΥǥ쥯ȥɲäǤޤ
.TP 3
\-keep
-生成されるファイルがすでに存在している場合は、そのファイルが上書きされません。デフォルトでは、上書きされます。
+ե뤬Ǥ¸ߤƤϡΥե뤬ޤǥեȤǤϡޤ
.TP 3
\-noWarn
-警告メッセージを表示しないようにします。
+ٹåɽʤ褦ˤޤ
.TP 3
\-oldImplBase
-v1.4 より前の JDK ORB と互換性のあるスケルトンを生成します。デフォルトでは、POA 継承モデルのサーバー側バインディングが生成されます。このオプションを指定すると、\f2ImplBase\fP 継承モデルのクラスであるサーバー側バインディングが生成されるので、古いバージョンの Java プログラミング言語との下位互換性が得られます。
+v1.4 JDK ORB ȸߴΤ륹ȥޤǥեȤǤϡPOA ѾǥΥС¦ХǥޤΥץꤹȡ\f2ImplBase\fP ѾǥΥ饹Ǥ륵С¦ХǥΤǡŤС Java ץߥȤβ̸ߴޤ
.TP 3
\-pkgPrefix type prefix
-\f2type\fP がファイルスコープで検出された場合は、その型に対して生成されるすべてのファイルについて、生成される Java パッケージ名に \f2prefix\fP という接頭辞が付加されます。\f2type\fP は、トップレベルモジュールの単純名か、どのモジュールよりも外側で定義された IDL 型の単純名のどちらかです。
+\f2type\fP ե륹פǸФ줿ϡηФ뤹٤ƤΥեˤĤơ Java ѥå̾ \f2prefix\fP ȤƬղäޤ\f2type\fP ϡȥåץ٥⥸塼ñ̾ɤΥ⥸塼⳰¦줿 IDL ñ̾Τɤ餫Ǥ
.TP 3
\-pkgTranslate type package
-識別子の中にモジュール名 \f2type\fP が検出されると、生成される Java パッケージ内のすべてのファイルについて、識別子の中のその名前が \f2package\fP で置き換えられます。最初に \f2pkgPrefix\fP を変更します。\f2type\fP は、トップレベルのモジュール、またはすべてのモジュールの外部で定義された IDL 型の単純名です。 そして、完全なパッケージ名に正確に一致しなければなりません。
+̻Ҥ˥⥸塼̾ type Фȡ Java ѥåΤ٤ƤΥեˤĤơ̻ҤΤ̾ package ֤ޤǽ \f2pkgPrefix\fP ѹޤ\f2type\fP ϡȥåץ٥Υ⥸塼롢ޤϤ٤ƤΥ⥸塼γ줿 IDL ñ̾Ǥơʥѥå̾Τ˰פʤФʤޤ
.LP
-1 つの識別子の中で複数の変換がマッチする場合は、もっとも長いマッチが選ばれます。たとえば、次のような引数が指定されている場合は、
+1 Ĥμ̻ҤʣѴޥåϡäȤĹޥåФޤȤСΤ褦ʰꤵƤϡ
.nf
\f3
.fl
@@ -420,89 +653,85 @@
\fP
.fi
.LP
-次のような変換が実施されます。
+Τ褦Ѵ»ܤޤ
.nf
\f3
.fl
-foo => bar
+foo => bar
.fl
-foo.boo => bar.boo
+foo.boo => bar.boo
.fl
-foo.baz => buzz.fizz
+foo.baz => buzz.fizz
.fl
-foo.baz.bar => buzz.fizz.bar
+foo.baz.bar => buzz.fizz.bar
.fl
\fP
.fi
.LP
-次のパッケージ名を変換することはできません。
+Υѥå̾Ѵ뤳ȤϤǤޤ
.RS 3
.TP 2
o
\f2org\fP
.TP 2
o
-\f2org.omg\fP、または \f2org.omg\fP のサブパッケージ
+\f2org.omg\fPޤ \f2org.omg\fP Υ֥ѥå
.RE
.LP
-これらのパッケージ名を変換しようとすると、互換性のないコードが生成されます。 そして、\f2\-pkgTranslate\fP のあとの最初の引数としてそれらのパッケージを使用すると、エラーとして扱われます。
+Υѥå̾Ѵ褦ȤȡߴΤʤɤޤơ\f2\-pkgTranslate\fP ΤȤκǽΰȤƤΥѥåѤȡ顼Ȥưޤ
.TP 3
\-skeletonName xxx%yyy
-\f2xxx%yyy\fP が、スケルトンに名前を付けるパターンとして使用されます。デフォルトは、次のとおりです。
+\f2xxx%yyy\fP ȥ̾դѥȤƻѤޤǥեȤϼΤȤǤ
.RS 3
.TP 2
o
-\f2POA\fP 基底クラスの場合は「%POA」(\f2\-fserver\fP または \f2\-fall\fP)
+\f2POA\fP 쥯饹ξϡ%POA(\f2\-fserver\fP ޤ \f2\-fall\fP)
.TP 2
o
-\f2oldImplBase\fP クラスの場合は「_%ImplBase」(\f2\-oldImplBase\fP かつ (\f2\-fserver\fP または \f2\-fall\fP))
+\f2oldImplBase\fP 饹ξϡ_%ImplBase(\f2\-oldImplBase\fP (\f2\-fserver\fP ޤ \f2\-fall\fP))
.RE
.TP 3
\-td dir
-出力ディレクトリとして、カレントディレクトリではなく、\f2dir\fP が使用されます。
+ϥǥ쥯ȥȤơȥǥ쥯ȥǤϤʤ\f2dir\fP Ѥޤ
.TP 3
\-tieName xxx%yyy
-このパターンに従って Tie に名前が付けられます。デフォルトは、次のとおりです。
+Υѥ˽ä Tie ̾դޤǥեȤϼΤȤǤ
.RS 3
.TP 2
o
-\f2POA\fP Tie 基底クラスの場合は「%POATie」(\f2\-fserverTie\fP または \f2\-fallTie\fP)
+\f2POA\fP Tie 쥯饹ξϡ%POATie(\f2\-fserverTie\fP ޤ \f2\-fallTie\fP)
.TP 2
o
-\f2oldImplBase\fP Tie クラスの場合は「%_Tie」(\f2\-oldImplBase\fP かつ (\f2\-fserverTie\fP または \f2\-fallTie\fP))
+\f2oldImplBase\fP Tie 饹ξϡ%_Tie(\f2\-oldImplBase\fP (\f2\-fserverTie\fP ޤ \f2\-fallTie\fP))
.RE
.TP 3
-\-verbose
-冗長モードになります。
+\-nowarn, \-verbose
+Ĺ⡼ɤˤʤޤ
.TP 3
\-version
-バージョン情報を表示して終了します。
+Сɽƽλޤ
.RE
.LP
-各オプションの詳細については、「説明」のセクションを参照してください。
-.SH "制約"
-.LP
-
+ƥץξܺ٤ˤĤƤϡפΥȤƤ
+.SH ""
.LP
.RS 3
.TP 2
o
-グローバルスコープ内のエスケープされた識別子は、IDL プリミティブ型の \f2Object\fP または \f2ValueBase\fP と同じ綴りであってはなりません。これらの識別子については、シンボルテーブルが事前にロードされており、これらの識別子の再定義を許可すると元の定義が上書きされてしまいます。これは、おそらく恒久的な制約です。
+Х륹Υפ줿̻ҤϡIDL ץߥƥַ \f2Object\fP ޤ \f2ValueBase\fP Ʊ֤ǤäƤϤʤޤμ̻ҤˤĤƤϡܥơ֥뤬˥ɤƤꡢμ̻ҤκĤȸƤޤޤϡ餯ŪǤ
.TP 2
o
-\f2fixed\fP という IDL 型はサポートされていません。
+\f2fixed\fP Ȥ IDL ϥݡȤƤޤ
.RE
.LP
-.SH "既知の問題点"
-.LP
-
+.SH "Τ"
.LP
.RS 3
.TP 2
o
-グローバル識別子についてインポートが生成されません。予期されないローカル impl を呼び出すと、例外を受け取ります。 しかし、その原因は、\f2ServerDelegate\fP DSI コード内の \f2NullPointerException\fP にあるようです。
+Х뼱̻ҤˤĤƥݡȤޤͽʤ impl ƤӽФȡ㳰ޤ θϡ\f2ServerDelegate\fP DSI \f2NullPointerException\fP ˤ褦Ǥ
.RE
.LP