[jboss-cvs] JBossAS SVN: r76879 - projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sun Aug 10 23:26:42 EDT 2008


Author: mospina
Date: 2008-08-10 23:26:42 -0400 (Sun, 10 Aug 2008)
New Revision: 76879

Added:
   projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Author_Group.po
   projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Feedback.po
Modified:
   projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Architecture.po
   projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Batch.po
   projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Book_Info.po
   projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Configuration.po
   projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Entity_Manager_User_Guide.po
   projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Entitymanagerapi.po
   projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Listeners.po
   projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Query_ejbql.po
   projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Query_native.po
   projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Transactions.po
Log:
PO files for ja-JP updated

Modified: projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Architecture.po
===================================================================
--- projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Architecture.po	2008-08-11 03:18:06 UTC (rev 76878)
+++ projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Architecture.po	2008-08-11 03:26:42 UTC (rev 76879)
@@ -1,29 +1,33 @@
+# translation of Architecture.po to Japanese
 # Language /tmp/mike/JBEAP420/Entity translations for JBEAP package.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
 # Automatically generated, 2007.
-#
+# Kiyoto Hashida <khashida at redhat.com>, 2008.
 msgid ""
 msgstr ""
-"Project-Id-Version: JBEAP 420\n"
-"POT-Creation-Date: 2001-02-09 01:25+0100\n"
-"PO-Revision-Date: 2001-02-09 01:25+0100\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"Project-Id-Version: Architecture\n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
+"POT-Creation-Date: 2008-08-11 03:22+0000\n"
+"PO-Revision-Date: 2008-08-08 11:07+1000\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. Tag: title
 #: Architecture.xml:10
 #, no-c-format
 msgid "Architecture"
-msgstr ""
+msgstr "アーキテクチャ"
 
 #. Tag: title
 #: Architecture.xml:12
 #, no-c-format
 msgid "Definitions"
-msgstr ""
+msgstr "定義"
 
 #. Tag: para
 #: Architecture.xml:13
@@ -34,12 +38,16 @@
 "outside of a particular container. The following programming interfaces and "
 "artifacts are available in both environments."
 msgstr ""
+"EJB3 は Java EE 5.0 プラットフォームの一部です。EJB3 内の Persistence は "
+"EJB3 コンテナ内で 利用できますし、更に特定のコンテナの外部で実行するスタンド"
+"アローンの J2SE アプリケーション用にも 利用できます。以下のプログラミングイン"
+"ターフェイスとアーティファクトは両方の環境で利用できます。"
 
 #. Tag: literal
 #: Architecture.xml:18
 #, no-c-format
 msgid "EntityManagerFactory"
-msgstr ""
+msgstr "EntityManagerFactory"
 
 #. Tag: para
 #: Architecture.xml:20
@@ -52,12 +60,18 @@
 "interface is similar to the <literal>SessionFactory</literal> in native "
 "Hibernate."
 msgstr ""
+"entity manager ファクトリは、entity manager インスタンス群を提供し、全ての イ"
+"ンスタンスは、特定の実装などにより定義される通りに同じデータベースに接続して "
+"同じデフォルトセッティングを使用するように設定されます。 数個のデータストア"
+"に アクセスするように数個の entity manager ファクトリを準備することができま"
+"す。 このインターフェイスはネイティブ Hibernate の <literal>SessionFactory</"
+"literal> に 似ています。"
 
 #. Tag: literal
 #: Architecture.xml:26
 #, no-c-format
 msgid "EntityManager"
-msgstr ""
+msgstr "EntityManager"
 
 #. Tag: para
 #: Architecture.xml:28
@@ -69,12 +83,17 @@
 "all entities. This interface is similar to the <literal>Session</literal> in "
 "Hibernate."
 msgstr ""
+"<literal>EntityManager</literal> API は特定の作業単位内でデータベースに アク"
+"セスするのに使用されます。これは、永続化の entity インスタンスの作成と削除、 "
+"プライマリキーアイデンティティを使用して entity の検索、そして全ての entity "
+"上に クエリの提出をするのに使用されます。このインターフェイスは Hibernate の "
+"<literal>Session</literal> に似ています。"
 
 #. Tag: term
 #: Architecture.xml:34
 #, no-c-format
 msgid "Persistence context"
-msgstr ""
+msgstr "永続化コンテキスト"
 
 #. Tag: para
 #: Architecture.xml:36
@@ -86,12 +105,17 @@
 "a particular entity manager. The scope of this context can either be the "
 "transaction, or an extended unit of work."
 msgstr ""
+"永続化コンテキストとは、それぞれの永続化 entity アイデンティティ用に特有の "
+"entity インスタンスがあるような entity インスタンスのセットです。永続化コンテ"
+"キスト の中では、entity インスタンスとそれらのライフサイクルは特定の entity "
+"manager に よって管理されます。このコンテキストのスコープはトランザクション"
+"か、又は拡張された 作業単位のいずれかとなります。"
 
 #. Tag: term
 #: Architecture.xml:42
 #, no-c-format
 msgid "Persistence unit"
-msgstr ""
+msgstr "永続化ユニット"
 
 #. Tag: para
 #: Architecture.xml:44
@@ -102,66 +126,72 @@
 "classes that are related or grouped by the application, and which must be "
 "collocated in their mapping to a single data store."
 msgstr ""
+"任意の entity manager によって管理できる entity タイプ群のセットは、 永続化ユ"
+"ニットによって定義されます。永続化ユニットは、アプリケーションによって 関連付"
+"けした、あるいはグループ化していて、単独ストアへのマッピング内に 一緒に位置し"
+"ている必要がある全てのクラスのセットを定義します。"
 
 #. Tag: term
 #: Architecture.xml:50
 #, no-c-format
 msgid "<term>Container-managed entity manager</term>"
-msgstr ""
+msgstr "<term>コンテナ管理による Entity Manager</term>"
 
 #. Tag: para
 #: Architecture.xml:52
 #, no-c-format
 msgid "An Entity Manager whose lifecycle is managed by the container"
-msgstr ""
+msgstr "ライフサイクルがコンテナによって管理されている Entity Manager "
 
 #. Tag: term
 #: Architecture.xml:58
 #, no-c-format
 msgid "<term>Application-managed entity manager</term>"
-msgstr ""
+msgstr "<term>アプリケーション管理による Entity Manager</term>"
 
 #. Tag: para
 #: Architecture.xml:60
 #, no-c-format
 msgid "An Entity Manager whose lifecycle is managed by the application."
-msgstr ""
+msgstr "ライフサイクルがアプリケーションで管理されている Entity Manager"
 
 #. Tag: term
 #: Architecture.xml:66
 #, no-c-format
 msgid "JTA entity manager"
-msgstr ""
+msgstr "JTA entity manager"
 
 #. Tag: para
 #: Architecture.xml:68
 #, no-c-format
 msgid "Entity manager involved in a JTA transaction"
-msgstr ""
+msgstr "JTA トランザクションに参入している Entity manager"
 
 #. Tag: term
 #: Architecture.xml:74
 #, no-c-format
 msgid "Resource-local entity manager"
-msgstr ""
+msgstr "リソースローカル entity manager"
 
 #. Tag: para
 #: Architecture.xml:76
 #, no-c-format
 msgid "Entity manager using a resource transaction (not a JTA transaction)."
 msgstr ""
+"リソーストランザクション( JTA トランザクションではない)を使用している "
+"Entity manager"
 
 #. Tag: title
 #: Architecture.xml:85
 #, no-c-format
 msgid "EJB container environment"
-msgstr ""
+msgstr "EJB コンテナ環境"
 
 #. Tag: title
 #: Architecture.xml:87
 #, no-c-format
 msgid "<title>Container-managed entity manager</title>"
-msgstr ""
+msgstr "<title>コンテナ管理による Entity Manager</title>"
 
 #. Tag: para
 #: Architecture.xml:88
@@ -175,12 +205,18 @@
 "through dependency injection or through JNDI lookup, A container-managed "
 "entity manger requires the use of a JTA transaction."
 msgstr ""
+"Java EE 環境内で最も広範囲に一般的に使用されている entity manager は コンテナ"
+"管理による entity manager です。このモードでは、コンテナは entity manager の"
+"開放と閉鎖を担当します。(これはアプリケーションに透過的です) コンテナはま"
+"た、トランザクションの境界も担当します。コンテナ管理による entity manager  "
+"は 依存性注入を介して、あるいは JNDI ルックアップを介して取得できます。コンテ"
+"ナ管理によるentity manger は JTA トランザクションを使用する必要があります。"
 
 #. Tag: title
 #: Architecture.xml:94
 #, no-c-format
 msgid "<title>Application-managed entity manager</title>"
-msgstr ""
+msgstr "<title>アプリケーション管理による Entity Manager</title>"
 
 #. Tag: para
 #: Architecture.xml:95
@@ -197,12 +233,23 @@
 "manager type (JTA or resource-local) is defined at configuration time, when "
 "setting up the entity manager factory."
 msgstr ""
+"アプリケーション管理による entity manager の使用により、アプリケーションコー"
+"ド内で entity manager を制御できるようになります。この entity manager は "
+"<literal>EntityManagerFactory</literal> API を介して取り込むことができます。 "
+"アプリケーション管理による entity manager は現在の  JTA トランザクション "
+"(JTA entity manager)に参画しているか、 又はそのトランザクションが "
+"<literal>EntityTransaction</literal> API (リソースローカルの entity "
+"manager)を介して 制御されている可能性があります。リソースローカルの entity "
+"manager トランザクションは ダイレクトリソーストランザクション(Hibernate の場"
+"合は、JDBC トランザクション)にマップします。 entity manager タイプ(JTA か、"
+"リソースローカル)は entity manager ファクトリを セットアップする時点の設定時"
+"に定義されます。"
 
 #. Tag: title
 #: Architecture.xml:101
 #, no-c-format
 msgid "Persistence context scope"
-msgstr ""
+msgstr "永続化コンテキストのスコープ"
 
 #. Tag: para
 #: Architecture.xml:102
@@ -213,6 +260,10 @@
 "transaction boundaries, or keeping the persistence context available across "
 "several transactions."
 msgstr ""
+"entity manager は、永続化コンテキストと相互作用する API です。2つの 一般的な"
+"戦略が使用できます: トランザクション境界へ永続化コンテキストをバインドするこ"
+"と、 あるいは、永続化コンテキストをいくつかのトランザクションに渡って利用でき"
+"るように維持することです。"
 
 #. Tag: para
 #: Architecture.xml:105
@@ -231,6 +282,17 @@
 "simply use dependency injection or lookup whenever you need an entity "
 "manager."
 msgstr ""
+"最も一般的なケースは、永続化コンテキストスコープを現在のトランザクション ス"
+"コープにバインドすることです。JTA トランザクションが使用されている時には これ"
+"が唯一実行可能なものです: 永続化コンテキストは JTA ライフサイクルに関連付け "
+"されます。entity manager  が呼び出される時に そこに現在 JTA トランザクション"
+"に 関連づけした永続化コンテキストがないと、永続化コンテキストも開かれます。そ"
+"れ以外の 場合は、関連付けした永続化コンテキストが使用されます。JTA トランザク"
+"ションが 完了した時点に永続化コンテキストは終了します。このことは JTA トラン"
+"ザクションの間は アプリケーションは同じ永続化コンテキストの管理された entity "
+"上で動作することができると 言う意味になります。すなわち、entity manager の永"
+"続化コンテキストを EJB メソッド呼出 全体に渡って渡す必要がなく、entity "
+"manager  を必要とする場所に単に依存性注入や ルックアップを使用するだけです。"
 
 #. Tag: para
 #: Architecture.xml:108
@@ -258,6 +320,27 @@
 "allowing the whole process to be commited or rollbacked. For application-"
 "managed entity manager only support the exctended persistence context."
 msgstr ""
+"また、拡張した永続化コンテキストも使用できます。これは、コンテナ管理による "
+"entity manager を使用する場合には、ステートフルセッション Bean に結合できま"
+"す: entity manager が依存性注入や JNDI ルックアップから取り込まれる時点に、 "
+"永続化コンテキストが作成されて、<literal>Remove</literal> ステートフル セッ"
+"ション Bean が完了した後にコンテナがそれを閉じるまで保持されます。 これは、 "
+"\"長い\"作業単位パターンを実装するために完璧なメカニズムです。 例えば、複数の"
+"ユーザー相互作用サイクルを単独の作業単位として取り扱う必要がある場合 (例:完"
+"全に完了する必要のあるウィザードダイアログ)、通常はこれをアプリケーション"
+"ユーザーの 観点から1つの作業単位としてモデルにして、拡張した永続化コンテキス"
+"トを使用してそれを実装します。 このパターンについての詳細には、Hibernate リ"
+"ファレンスマニュアル、又は Hibernate In Action と言う 題名の本を参照してくだ"
+"さい。JBoss Seam は対話と作業単位のノーションの周辺に JSF と EJB3 を 一緒にリ"
+"ンクするフレームワークです。アプリケーション管理による entity manager では、 "
+"永続化 コンテキストは その entity manager が作成される時に作成されて、その "
+"entity manager が閉じるまで 保持されます。拡張した永続化コンテキストでは、ト"
+"ランザクションの外部で実行される全ての修正オペレーション (persist, merge, "
+"remove)は その永続化コンテキストが1つのトランザクションに付けられるまで"
+"キュー (queue)されます。トランザクションは典型的にユーザープロセスの終点で"
+"発生して、全体のプロセスが コミットか、ロールバックされるようにします。アプリ"
+"ケーション管理による entity manager には拡張した 永続化コンテキストのサポート"
+"のみがあります。"
 
 #. Tag: para
 #: Architecture.xml:111
@@ -268,12 +351,16 @@
 "managed) has a one-to-one relationship with a persistence context. In other "
 "situations <emphasis>persistence context propagation</emphasis> occurs."
 msgstr ""
+"<literal>EntityManagerFactory.createEntityManager()</literal> (アプリケー"
+"ションによる管理)を 利用して作成されたリソースローカル entity manager あるい"
+"は entity manager は永続化コンテキストと 1 対 1の関係を持っています。他の状"
+"況では、<emphasis>永続化コンテキスト伝播</emphasis> が発生します。"
 
 #. Tag: title
 #: Architecture.xml:117
 #, no-c-format
 msgid "Persistence context propagation"
-msgstr ""
+msgstr "永続化コンテキストの伝播"
 
 #. Tag: para
 #: Architecture.xml:118
@@ -281,6 +368,8 @@
 msgid ""
 "Persistence context propagation occurs for container-managed entity managers."
 msgstr ""
+"永続化コンテキストの伝播は、コンテナ管理の entity manager のために発生しま"
+"す。"
 
 #. Tag: para
 #: Architecture.xml:121
@@ -293,6 +382,12 @@
 "all share the same persistence context. In Hibernate terms, this means all "
 "managers share the same session."
 msgstr ""
+"トランザクションスコープ化したコンテナ管理による entity manager (Java EE 環"
+"境では 一般的なケース)では、JTA トランザクション伝播は永続化コンテキストリ"
+"ソース伝播と同じです。 すなわち、任意の JTA トランザクション内で取り込まれた"
+"コンテナ管理によるトランザクション スコープ化した entity manager はすべて、同"
+"じ永続化コンテキストを共有すると言うことです。 Hibernate の表現では、これは全"
+"てのマネージャが同じセッションを共有すると言う意味です。"
 
 #. Tag: para
 #: Architecture.xml:124
@@ -303,6 +398,10 @@
 "manager factory. There are some noteworthy exceptions for context "
 "propagation when using extended persistence contexts:"
 msgstr ""
+"重要: 永続化コンテキストは、同じ entity manager ファクトリからの派生でない 異"
+"なる JTA トランザクション間や entity manager 間では決して共有されません。 拡"
+"張した永続化コンテキストを使用している時点では、コンテキスト伝播にとって 以下"
+"のような留意すべき例外があります:"
 
 #. Tag: para
 #: Architecture.xml:129
@@ -313,6 +412,10 @@
 "with an extended persistence context in the same JTA transaction, an "
 "IllegalStateException is thrown."
 msgstr ""
+"トランザクションスコープ化した永続化コンテキストを利用する ステートレスセッ"
+"ション Bean や message-driven Bean や ステートフルセッション Bean が、同じ "
+"JTA トランザクション内で 拡張した永続化 コンテキストを利用するステートフル"
+"セッション Bean を呼び出すと、IllegalStateException が送出されます。"
 
 #. Tag: para
 #: Architecture.xml:134
@@ -323,6 +426,10 @@
 "persistence context in the same JTA transaction, the persistence context is "
 "propagated."
 msgstr ""
+"拡張した永続化コンテキストを利用するステートフルセッション Bean が、同じ JTA "
+"トランザクション内で トランザクションスコープ化した永続化コンテキストを利用す"
+"るステートレスセッション Bean や ステートフルセッション Bean として呼び出す"
+"と、永続化コンテキストが伝播します。"
 
 #. Tag: para
 #: Architecture.xml:139
@@ -332,6 +439,9 @@
 "stateless or stateful session bean in a different JTA transaction context, "
 "the persistence context is not propagated."
 msgstr ""
+"拡張した永続化コンテキストを利用したステートフルセッション Bean が 別の JTA "
+"トランザクションコンテキスト内のステートレス、又はステートフルセッション "
+"Bean を呼び出すと、永続化コンテキストは伝播しません。"
 
 #. Tag: para
 #: Architecture.xml:144
@@ -343,6 +453,12 @@
 "bean. If the second stateful session bean is called with a different "
 "transaction context than the first, an IllegalStateException is thrown."
 msgstr ""
+"拡張した永続化コンテキストを利用するステートフルセッション Bean が、 拡張した"
+"永続化コンテキストを利用する別のステートフルセッション Bean を具体化すると、 "
+"その拡張した永続化コンテキストは、2つめのステートフルセッション Bean によっ"
+"て継承されます。 2つめのステートフルセッション Bean が、1つめのステートフル"
+"セッション Bean でなく、 別のトランザクションコンテキストで呼び出されると、"
+"IllegalStateException が送出されます。"
 
 #. Tag: para
 #: Architecture.xml:149
@@ -352,12 +468,15 @@
 "stateful session bean with a different extended persistence context in the "
 "same transaction, an IllegalStateException is thrown."
 msgstr ""
+"拡張した永続化コンテキストを利用するステートフルなセッション Bean が 同じトラ"
+"ンザクション内の拡張した永続化コンテキストを利用する別のステートフルな セッ"
+"ション Bean を呼び出すと、IllegalStateException が送出されます。"
 
 #. Tag: title
 #: Architecture.xml:159
 #, no-c-format
 msgid "Java SE environments"
-msgstr ""
+msgstr "Java SE 環境"
 
 #. Tag: para
 #: Architecture.xml:160
@@ -371,6 +490,13 @@
 "the persistence context yourself, e.g. using the thread local session "
 "pattern popular in the Hibernate community)."
 msgstr ""
+"Java SE 環境内では、拡張したコンテキストアプリケーション管理による entity "
+"manager のみが 利用できます。entity manger は <literal>EntityManagerFactory</"
+"literal> API を使用して 取り込むことができます。リソースローカルの entity "
+"manger のみが利用できます。言い替えると JTA トランザクションと 永続化コンテキ"
+"スト伝播は、Java SE ではサポートされていません。 (Hibernate コミュニティで人"
+"気のある スレッドローカルセッションパターンを使用するなどして 自分自身で永続"
+"化コンテキストを伝播する必要があります)"
 
 #. Tag: para
 #: Architecture.xml:163
@@ -381,3 +507,8 @@
 "(...)</literal> ) and closed when the entity manager is closed. Many "
 "resource-local transaction share the same persistence context, in this case."
 msgstr ""
+"拡張したコンテキストとは、永続化コンテキストが entity manager の取り込み時に "
+"作成(<literal>EntityManagerFactory.createEntityManager(...)</literal> を使"
+"用) されて entity manager の閉鎖時に閉じられると言う意味です。このケースで"
+"は、多くの リソースローカルトランザクションが同じ永続化コンテキストを共有しま"
+"す。"

Added: projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Author_Group.po
===================================================================
--- projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Author_Group.po	                        (rev 0)
+++ projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Author_Group.po	2008-08-11 03:26:42 UTC (rev 76879)
@@ -0,0 +1,24 @@
+# translation of Architecture.po to Japanese
+# Language /tmp/mike/JBEAP420/Entity translations for JBEAP package.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
+# Automatically generated, 2007.
+# Kiyoto Hashida <khashida at redhat.com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: Architecture\n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
+"POT-Creation-Date: 2008-08-11 03:22+0000\n"
+"PO-Revision-Date: 2008-08-08 11:07+1000\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Tag: corpauthor
+#: Author_Group.xml:5
+#, no-c-format
+msgid "Red Hat Documentation Group"
+msgstr "Red Hat ドキュメントグループ"

Modified: projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Batch.po
===================================================================
--- projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Batch.po	2008-08-11 03:18:06 UTC (rev 76878)
+++ projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Batch.po	2008-08-11 03:26:42 UTC (rev 76879)
@@ -1,23 +1,27 @@
+# translation of Architecture.po to Japanese
 # Language /tmp/mike/JBEAP420/Entity translations for JBEAP package.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
 # Automatically generated, 2007.
-#
+# Kiyoto Hashida <khashida at redhat.com>, 2008.
 msgid ""
 msgstr ""
-"Project-Id-Version: JBEAP 420\n"
-"POT-Creation-Date: 2001-02-09 01:25+0100\n"
-"PO-Revision-Date: 2001-02-09 01:25+0100\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"Project-Id-Version: Architecture\n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
+"POT-Creation-Date: 2008-08-11 03:22+0000\n"
+"PO-Revision-Date: 2008-08-08 11:07+1000\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. Tag: title
 #: Batch.xml:10
 #, no-c-format
 msgid "Batch processing"
-msgstr ""
+msgstr "バッチ処理"
 
 #. Tag: para
 #: Batch.xml:11
@@ -29,12 +33,16 @@
 "optimize batch processing which are discussed in the Hibernate reference "
 "guide, however, EJB3 persistence differs slightly."
 msgstr ""
+"従来、バッチ処理は全体的なオブジェクト/リレーショナルマッピングでは困難でし"
+"た。ORM はオブジェクトステート管理のみを行うため、オブジェクトステートはメモ"
+"リにあります。Hibernate には、Hibernate リファレンスガイドで説明されている"
+"バッチ処理を最大限にする機能がありますが、EJB3 の永続性は若干異なります。"
 
 #. Tag: title
 #: Batch.xml:14
 #, no-c-format
 msgid "Bulk update/delete"
-msgstr ""
+msgstr "バルク更新/削除"
 
 #. Tag: para
 #: Batch.xml:15
@@ -49,6 +57,14 @@
 "literal> statement execution which are performed through EJB-QL (<xref "
 "linkend=\"EJB_QL_The_Object_Query_Language\"/>)."
 msgstr ""
+"すでに説明しましたが、自動的および透過的なオブジェクト/リレーショナルマッピ"
+"ングはオブジェクトステートに関係しています。よって、オブジェクトステートはメ"
+"モリにあるため、直接データベースでデータを更新したり削除しても(SQL "
+"<literal>UPDATE</literal> や <literal>DELETE</literal> を使用して)メモリにあ"
+"るステートに影響はありません。しかし、Hibernate は バルク SQL のように "
+"<literal>UPDATE</literal> ステートメントや <literal>DELETE</literal> ステート"
+"メントを実行するメソッドを提供し、これらのメソッドは EJB-QL (<xref linkend="
+"\"EJB_QL_The_Object_Query_Language\"/>) を通じて実行されます。"
 
 #. Tag: para
 #: Batch.xml:18
@@ -58,12 +74,15 @@
 "literal> statements is: <literal>( UPDATE | DELETE ) FROM? ClassName (WHERE "
 "WHERE_CONDITIONS)?</literal>. Note that:"
 msgstr ""
+"<literal>UPDATE</literal> ステートメントおよび <literal>DELETE</literal> ス"
+"テートメントの疑似構文は、<literal>( UPDATE | DELETE ) FROM? ClassName "
+"(WHERE WHERE_CONDITIONS)?</literal> になります。以下に注意してください。"
 
 #. Tag: para
 #: Batch.xml:23
 #, no-c-format
 msgid "In the from-clause, the FROM keyword is optional."
-msgstr ""
+msgstr "from 節の FROM キーワードは任意です。"
 
 #. Tag: para
 #: Batch.xml:28
@@ -73,6 +92,8 @@
 "<emphasis>cannot</emphasis> have an alias (this is a current Hibernate "
 "limitation and will be removed soon)."
 msgstr ""
+"from 節では 1 つのクラスのみ命名できますが、エイリアスを持つことはできません"
+"(これは現在の Hibernate における制限で、今後制限が取り除かれる予定です)。"
 
 #. Tag: para
 #: Batch.xml:33
@@ -81,12 +102,14 @@
 "No joins (either implicit or explicit) can be specified in a bulk EJB-QL "
 "query. Sub-queries may be used in the where-clause."
 msgstr ""
+"バルク EJB-QL クエリには結合を指定することはできません(明示的、暗示的とも"
+"に)。where 節にはサブクエリを使用することができます。"
 
 #. Tag: para
 #: Batch.xml:38
 #, no-c-format
 msgid "The where-clause is also optional."
-msgstr ""
+msgstr "where 節の使用も任意です。"
 
 #. Tag: para
 #: Batch.xml:43
@@ -95,6 +118,8 @@
 "As an example, to execute an EJB-QL <literal>UPDATE</literal>, use the "
 "<literal>Query.executeUpdate()</literal> method:"
 msgstr ""
+"例として、EJB-QL <literal>UPDATE</literal> を実行するには、<literal>Query."
+"executeUpdate()</literal> メソッドを使用します。"
 
 #. Tag: programlisting
 #: Batch.xml:46
@@ -112,6 +137,17 @@
 "entityManager.getTransaction().commit();\n"
 "entityManager.close();"
 msgstr ""
+"EntityManager entityManager = entityManagerFactory.createEntityManager();\n"
+"entityManager.getTransaction().begin();\n"
+"\n"
+"String ejbqlUpdate = \"update Customer set name = :newName where name = :"
+"oldName\"\n"
+"int updatedEntities = entityManager.createQuery( hqlUpdate )\n"
+"                            .setParameter( \"newName\", newName )\n"
+"                            .setParameter( \"oldName\", oldName )\n"
+"                            .executeUpdate();\n"
+"entityManager.getTransaction().commit();\n"
+"entityManager.close();"
 
 #. Tag: para
 #: Batch.xml:47
@@ -121,6 +157,10 @@
 "executeUpdate()</literal> method (the method is named for those familiar "
 "with JDBC&#39;s <literal>PreparedStatement.executeUpdate()</literal>):"
 msgstr ""
+"EJB-QL <literal>DELETE</literal> を実行するには、同じ <literal>Query."
+"executeUpdate()</literal> メソッドを使用します (JDBC の "
+"<literal>PreparedStatement.executeUpdate()</literal> を理解している人のために"
+"このメソッドの名前が付けられました)。"
 
 #. Tag: programlisting
 #: Batch.xml:50
@@ -136,6 +176,15 @@
 "entityManager.getTransaction().commit();\n"
 "entityManager.close();"
 msgstr ""
+"EntityManager entityManager = entityManagerFactory.createEntityManager();\n"
+"entityManager.getTransaction().begin();\n"
+"\n"
+"String hqlDelete = \"delete Customer where name = :oldName\";\n"
+"int deletedEntities = entityManager.createQuery( hqlDelete )\n"
+"                            .setParameter( \"oldName\", oldName )\n"
+"                            .executeUpdate();\n"
+"entityManager.getTransaction().commit();\n"
+"entityManager.close();"
 
 #. Tag: para
 #: Batch.xml:51
@@ -152,3 +201,12 @@
 "which that subclass is mapped, but also the \"root\" table and potentially "
 "joined-subclass tables further down the inheritence hierarchy."
 msgstr ""
+"<literal>Query.executeUpdate()</literal> メソッドが返す <literal>int</"
+"literal> 値は、この操作に影響されるエンティティの数を示しています。この数は"
+"データベースで影響される行数と相関している場合としていない場合があります。"
+"EJB-QL のバルク操作によって複数のSQL ステートメントが実行される場合があります"
+"(例:結合されたサブクラス)。返された値は、ステートメントに影響される実際の"
+"エンティティ数を示しています。結合されたサブクラスの例では、サブクラスの 1 つ"
+"を削除した場合、サブクラスがマップされたテーブルが削除されるだけでなく、"
+"「ルート」テーブルも削除され、継承の階層の下にある結合されたサブクラスも削除"
+"される可能性があります。"

Modified: projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Book_Info.po
===================================================================
--- projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Book_Info.po	2008-08-11 03:18:06 UTC (rev 76878)
+++ projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Book_Info.po	2008-08-11 03:26:42 UTC (rev 76879)
@@ -1,23 +1,27 @@
+# translation of Architecture.po to Japanese
 # Language /tmp/mike/JBEAP420/Entity translations for JBEAP package.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
 # Automatically generated, 2007.
-#
+# Kiyoto Hashida <khashida at redhat.com>, 2008.
 msgid ""
 msgstr ""
-"Project-Id-Version: JBEAP 420\n"
-"POT-Creation-Date: 2001-02-09 01:25+0100\n"
-"PO-Revision-Date: 2001-02-09 01:25+0100\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"Project-Id-Version: Architecture\n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
+"POT-Creation-Date: 2008-08-11 03:22+0000\n"
+"PO-Revision-Date: 2008-08-08 11:07+1000\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. Tag: title
 #: Book_Info.xml:6
-#, no-c-format
+#, fuzzy, no-c-format
 msgid "Hibernate Entity Manager User Guide"
-msgstr ""
+msgstr "Hibernate エンティティマネージャ"
 
 #. Tag: subtitle
 #: Book_Info.xml:7
@@ -27,11 +31,11 @@
 
 #. Tag: para
 #: Book_Info.xml:12
-#, no-c-format
+#, fuzzy, no-c-format
 msgid ""
 "The JBoss Enterprise Application Platform Edition of the Hibernate Entity "
 "Manager User Guide 3.2"
-msgstr ""
+msgstr "この本は Hibernate エンティティマネージャユーザーガイドです。"
 
 #. Tag: holder
 #: Book_Info.xml:23

Modified: projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Configuration.po
===================================================================
--- projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Configuration.po	2008-08-11 03:18:06 UTC (rev 76878)
+++ projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Configuration.po	2008-08-11 03:26:42 UTC (rev 76879)
@@ -1,29 +1,33 @@
+# translation of Architecture.po to Japanese
 # Language /tmp/mike/JBEAP420/Entity translations for JBEAP package.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
 # Automatically generated, 2007.
-#
+# Kiyoto Hashida <khashida at redhat.com>, 2008.
 msgid ""
 msgstr ""
-"Project-Id-Version: JBEAP 420\n"
-"POT-Creation-Date: 2001-02-09 01:25+0100\n"
-"PO-Revision-Date: 2001-02-09 01:25+0100\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"Project-Id-Version: Architecture\n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
+"POT-Creation-Date: 2008-08-11 03:22+0000\n"
+"PO-Revision-Date: 2008-08-08 11:07+1000\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. Tag: title
 #: Configuration.xml:10
 #, no-c-format
 msgid "Setup and configuration"
-msgstr ""
+msgstr "セットアップと設定"
 
 #. Tag: title
 #: Configuration.xml:12
 #, no-c-format
 msgid "Setup"
-msgstr ""
+msgstr "セットアップ"
 
 #. Tag: para
 #: Configuration.xml:13
@@ -37,18 +41,26 @@
 "jar, hibernate-annotations.jar, hibernate-entitymanager.jar and all needed "
 "third party libraries for each package.(incl. ejb-persistence.jar)."
 msgstr ""
+"EJB 3.0 / JPA 準拠の Hibernate EntityManager は Hibernate core と Hibernate "
+"Annotations の上に構築されています。その為、各モジュールの 互換性バージョンを"
+"使う必要があります。このバージョンは Hibernate Core 3.2.0.CR5 と、 3.2.0.GA "
+"と、3.2.1.GA で機能し、Hibernate Annotations 3.2.0.CR3 と、3.2.0.GA と、 "
+"3.2.1.GA で機能することが知られています。次に示すライブラリは使用するクラスパ"
+"ス内に 存在していなければなりません: hibernate3.jar、hibernate-annotations."
+"jar、hibernate-entitymanager.jar 及び 各パッケージに必要なサードパーティのラ"
+"イブラリ(ejb-persistence.jar を含む)"
 
 #. Tag: title
 #: Configuration.xml:19
 #, no-c-format
 msgid "Configuration and bootstrapping"
-msgstr ""
+msgstr "設定とブートストラッピング"
 
 #. Tag: title
 #: Configuration.xml:21
 #, no-c-format
 msgid "Packaging"
-msgstr ""
+msgstr "パッケージング"
 
 #. Tag: para
 #: Configuration.xml:22
@@ -63,6 +75,15 @@
 "included in the archive will be added to the persistence unit configuration, "
 "so by default, your persistence.xml will be quite minimalist:"
 msgstr ""
+"アプリケーションサーバー内とスタンドアローンアプリケーション内の両方の "
+"entity manager 用の設定は、永続化アーカイブ内にあります。永続化アーカイブは  "
+"<filename>META-INF</filename> フォルダー内に存在する <literal>persistence."
+"xml</literal> ファイルを定義しなければならない JAR ファイルです。アーカイブ内"
+"に含まれている全ての正しくアノテーションが追加されたクラス "
+"(<literal>@Entity</literal> アノテーションを持つ)と、全てのアノテーションが"
+"追加されたパッケージと アーカイブ内に含まれている全ての Hibernate hbm.xml "
+"ファイルは永続化ユニットの設定に 追加されます。その為デフォルトでは、使用す"
+"る persistence.xml は以下のようにかなり最小限に なります:"
 
 #. Tag: programlisting
 #: Configuration.xml:25
@@ -84,6 +105,21 @@
 "   &lt;/persistence-unit&gt;\n"
 "&lt;/persistence&gt;"
 msgstr ""
+"&lt;persistence xmlns=\"http://java.sun.com/xml/ns/persistence\"\n"
+"   xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"
+"   xsi:schemaLocation=\"http://java.sun.com/xml/ns/persistence\n"
+"   http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd\"\n"
+"   version=\"1.0\"&gt;\n"
+"   &lt;persistence-unit name=\"sample\"&gt;\n"
+"      &lt;jta-data-source&gt;java:/DefaultDS&lt;/jta-data-source&gt;\n"
+"      &lt;properties&gt;\n"
+"         &lt;property name=\"hibernate.dialect\" value=\"org.hibernate."
+"dialect.HSQLDialect\"/&gt;\n"
+"         &lt;property name=\"hibernate.hbm2ddl.auto\" value=\"create-drop\"/"
+"&gt;\n"
+"      &lt;/properties&gt;\n"
+"   &lt;/persistence-unit&gt;\n"
+"&lt;/persistence&gt;"
 
 #. Tag: para
 #: Configuration.xml:26
@@ -92,6 +128,8 @@
 "Here&#39;s a more complete example of a <filename><literal>persistence.xml</"
 "literal></filename> file"
 msgstr ""
+"以下に <filename><literal>persistence.xml</literal></filename> ファイルの よ"
+"り完全なサンプルを示します。"
 
 #. Tag: programlisting
 #: Configuration.xml:29
@@ -120,24 +158,46 @@
 "   &lt;/persistence-unit&gt;\n"
 "&lt;/persistence&gt;"
 msgstr ""
+"&lt;persistence xmlns=\"http://java.sun.com/xml/ns/persistence\"\n"
+"   xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"
+"   xsi:schemaLocation=\"http://java.sun.com/xml/ns/persistence\n"
+"   http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd\"\n"
+"   version=\"1.0\"&gt;\n"
+"   &lt;persistence-unit name=\"manager1\" transaction-type=\"JTA\"&gt;\n"
+"      &lt;provider&gt;org.hibernate.ejb.HibernatePersistence&lt;/"
+"provider&gt;\n"
+"      &lt;jta-data-source&gt;java:/DefaultDS&lt;/jta-data-source&gt;\n"
+"      &lt;mapping-file&gt;ormap.xml&lt;/mapping-file&gt;\n"
+"      &lt;jar-file&gt;MyApp.jar&lt;/jar-file&gt;\n"
+"      &lt;class&gt;org.acme.Employee&lt;/class&gt;\n"
+"      &lt;class&gt;org.acme.Person&lt;/class&gt;\n"
+"      &lt;class&gt;org.acme.Address&lt;/class&gt;\n"
+"      &lt;properties&gt;\n"
+"         &lt;property name=\"hibernate.dialect\" value=\"org.hibernate."
+"dialect.HSQLDialect\"/&gt;\n"
+"         &lt;property name=\"hibernate.hbm2ddl.auto\" value=\"create-drop\"/"
+"&gt;\n"
+"      &lt;/properties&gt;\n"
+"   &lt;/persistence-unit&gt;\n"
+"&lt;/persistence&gt;"
 
 #. Tag: code
 #: Configuration.xml:32
 #, no-c-format
 msgid "name"
-msgstr ""
+msgstr "name"
 
 #. Tag: para
 #: Configuration.xml:34
 #, no-c-format
 msgid "(attribute) Every entity manager must have a name."
-msgstr ""
+msgstr "(属性)全ての entity manager は名前を持つ必要があります。"
 
 #. Tag: code
 #: Configuration.xml:40
 #, no-c-format
 msgid "transaction-type"
-msgstr ""
+msgstr "transaction-type"
 
 #. Tag: para
 #: Configuration.xml:42
@@ -148,12 +208,16 @@
 "When a jta-datasource is used, the default is JTA, if non-jta-datasource is "
 "used, RESOURCE_LOCAL is used."
 msgstr ""
+"(属性)使用されるトランザクションのタイプ。JTA 又は RESOURCE_LOCAL(JavaEE "
+"環境内の JTA 及び  JavaSE 環境内の RESOURCE_LOCAL にデフォルト)jta-"
+"datasource が使用されると、 デフォルトは JTA で、jta-datasource 以外が使用さ"
+"れると、RESOURCE_LOCAL が使用されます。"
 
 #. Tag: code
 #: Configuration.xml:48
 #, no-c-format
 msgid "provider"
-msgstr ""
+msgstr "provider"
 
 #. Tag: para
 #: Configuration.xml:50
@@ -164,12 +228,15 @@
 "EJB3 implementations. This is needed when you are using multiple vendor "
 "implementations of EJB Persistence."
 msgstr ""
+"provider は、EJB Persistence provider の完全修飾型のクラス名です。 数種の "
+"EJB3 実装を使って作業していない場合は、これを定義する必要は ありません。これ"
+"は EJB Persistence の複数のベンダー実装を使用している 場合に必要になります。"
 
 #. Tag: term
 #: Configuration.xml:56
 #, no-c-format
 msgid "<code>jta-data-source</code>, <code>non-jta-data-source</code>"
-msgstr ""
+msgstr "<code>jta-data-source</code>, <code>non-jta-data-source</code>"
 
 #. Tag: para
 #: Configuration.xml:58
@@ -179,12 +246,15 @@
 "running without a JNDI available Datasource, you must specify JDBC "
 "connections with Hibernate specific properties (see below)."
 msgstr ""
+"これは、javax.sql.DataSource が位置している場所の名前です。 JNDI が利用可能"
+"な Datasource なしで実行している時は、Hibernate 特有の プロパティを使って(以"
+"下を参照)JDBC 接続を指定しなければなりません。"
 
 #. Tag: code
 #: Configuration.xml:64
 #, no-c-format
 msgid "mapping-file"
-msgstr ""
+msgstr "mapping-file"
 
 #. Tag: para
 #: Configuration.xml:66
@@ -198,12 +268,19 @@
 "in the mapping file element ie. either hbm files or EJB3 deployment "
 "descriptor."
 msgstr ""
+"クラスエレメントはユーザーがマップする EJB3 準拠の XML マッピングファイルを "
+"指定します。このファイルはクラスパス内に存在する必要があります。EJB3 仕様と "
+"同様に、Hibernate EntityManager は、<literal>META_INF/orm.xml</literal> の "
+"jar ファイル内に位置するマッピングファイルをロードしようとします。もちろん、 "
+"明示的なマッピングファイルはどれもロードされます。実際には、マッピングファイ"
+"ル エレメント(hbm ファイルか、EJB3 デプロイメント記述子)内に XML ファイル"
+"を 提供できます。"
 
 #. Tag: code
 #: Configuration.xml:72
 #, no-c-format
 msgid "jar-file"
-msgstr ""
+msgstr "jar-file"
 
 #. Tag: para
 #: Configuration.xml:74
@@ -218,6 +295,14 @@
 "environment, the persistence.xml file is not under the same root directory "
 "or jar than your domain model)."
 msgstr ""
+"jar-file エレメントは解析するための jar を指定します。この jar ファイルの全て"
+"の 正しくアノテーションが追加されたクラスと、アノテーションが追加されたパッ"
+"ケージと、全ての hbm.xml ファイル部分は永続化ユニット設定に追加されます。この"
+"エレメントは主に Java EE 環境で使用されるものです。Java SE 内でこれを使用する"
+"ことはポータブルでないと判定され、 このケースでは絶対的 url が必要になりま"
+"す。別の方法として、ディレクトリに ポイントすることもできます。(環境をテスト"
+"する時に特に役に立ちます。 使用しているドメインモデルと異なり、persistence."
+"xml ファイルは同じ root ディレクトリや  jar の下ではありません)"
 
 #. Tag: programlisting
 #: Configuration.xml:77
@@ -226,12 +311,14 @@
 "&lt;jar-file&gt;file:/home/turin/work/local/lab8/build/classes&lt;/jar-"
 "file&gt;"
 msgstr ""
+"&lt;jar-file&gt;file:/home/turin/work/local/lab8/build/classes&lt;/jar-"
+"file&gt;"
 
 #. Tag: code
 #: Configuration.xml:81
 #, no-c-format
 msgid "exclude-unlisted-classes"
-msgstr ""
+msgstr "exclude-unlisted-classes"
 
 #. Tag: para
 #: Configuration.xml:83
@@ -240,12 +327,14 @@
 "Do not check the main jar file for annotated classes. Only explicit classes "
 "will be part of the persistence unit."
 msgstr ""
+"アノテーションが追加されたクラス用の主要  jar ファイルはチェックしないで下さ"
+"い。明示的な クラスのみが永続化ユニットの一部になります。"
 
 #. Tag: code
 #: Configuration.xml:89
 #, no-c-format
 msgid "class"
-msgstr ""
+msgstr "class"
 
 #. Tag: para
 #: Configuration.xml:91
@@ -261,12 +350,21 @@
 "package level (ie in <filename>package-info.java</filename>), it will not "
 "include all the classes of a given package."
 msgstr ""
+"クラスエレメントはユーザーがマップする完全修飾型のクラス名を指定します。デ"
+"フォルトでは アーカイブ内で見付かる全てのアノテーションを追加したクラスと全て"
+"の hbm.xml ファイルは永続化 ユニット設定に追加されます。一部の外部 entity を"
+"クラスエレメントを介して追加することが できます。この仕様の拡張として、"
+"<literal>&lt;class&gt;</literal> エレメント(例えば、 <code>&lt;class&gt;org."
+"hibernate.eg&lt;/class&gt;</code>)内にパッケージ名を追加することが できま"
+"す。注意事項:パッケージはパッケージレベル(<filename>package-info.java</"
+"filename>内)で 定義されたメタデータを含んでいるため、任意のパッケージの全て"
+"のクラスは収納しません。"
 
 #. Tag: code
 #: Configuration.xml:97
 #, no-c-format
 msgid "properties"
-msgstr ""
+msgstr "properties"
 
 #. Tag: para
 #: Configuration.xml:99
@@ -276,6 +374,9 @@
 "is where you will define your Hibernate specific configurations. This is "
 "also where you will have to specify JDBC connection information as well."
 msgstr ""
+"プロパティーエレメントはベンダー特有のプロパティを指定するのに使用されます。 "
+"ここが、使用している Hibernate 特有の設定を定義する場所です。これはまた、 "
+"JDBC 接続情報を指定する必要が出てくる場所でもあります。"
 
 #. Tag: para
 #: Configuration.xml:105
@@ -287,6 +388,11 @@
 "literal>, Hibernate entityManager will use the version embedded in the "
 "hibernate-entitymanager.jar. No internet access will be processed."
 msgstr ""
+"EJB3 仕様は、schema validation を要求するため、<literal>persistence</"
+"literal> エレメントの文法定義を確実に定義してください。systemId が "
+"<literal>persistence_1_0.xsd</literal> で終了する場合は、Hibernate "
+"entityManager は hibernate-entitymanager.jar 内に 組み込まれているバージョン"
+"を使用します。インターネットアクセスは処理されません。"
 
 #. Tag: programlisting
 #: Configuration.xml:108
@@ -298,12 +404,17 @@
 "   http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd\"\n"
 "   version=\"1.0\"&gt;"
 msgstr ""
+"&lt;persistence xmlns=\"http://java.sun.com/xml/ns/persistence\"\n"
+"   xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"
+"   xsi:schemaLocation=\"http://java.sun.com/xml/ns/persistence\n"
+"   http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd\"\n"
+"   version=\"1.0\"&gt;"
 
 #. Tag: title
 #: Configuration.xml:112
 #, no-c-format
 msgid "Bootstrapping"
-msgstr ""
+msgstr "Bootstrapping"
 
 #. Tag: para
 #: Configuration.xml:113
@@ -314,6 +425,10 @@
 "<classname>EntityManager</classname>. The bootstrap class is "
 "<classname>javax.persistence.Persistence</classname>, e.g."
 msgstr ""
+"EJB3 仕様は bootstrap 手順を定義して <classname>EntityManagerFactory</"
+"classname> と <classname>EntityManager</classname> にアクセスできるようにしま"
+"す。bootstrap クラス は <classname>javax.persistence.Persistence</classname> "
+"です。例えば:"
 
 #. Tag: programlisting
 #: Configuration.xml:116
@@ -327,6 +442,13 @@
 "EntityManagerFactory programmaticEmf =\n"
 "    Persistence.createEntityManagerFactory(\"manager1\", configOverrides);"
 msgstr ""
+"EntityManagerFactory emf = Persistence.createEntityManagerFactory(\"manager1"
+"\");\n"
+"//or\n"
+"Map configOverrides = new HashMap();\n"
+"configOverrides.put(\"hibernate.hbm2ddl.auto\", \"create-drop\");\n"
+"EntityManagerFactory programmaticEmf =\n"
+"    Persistence.createEntityManagerFactory(\"manager1\", configOverrides);"
 
 #. Tag: para
 #: Configuration.xml:117
@@ -337,12 +459,16 @@
 "defined in your persistence.xml files. There are a couple of EJB3 properties "
 "usable in the map:"
 msgstr ""
+"最初のバージョンは、空のマップを持つ二つめのバージョンに相当します。 マップ"
+"バージョンは使用中の persistence.xml ファイル内で定義してある プロパティのい"
+"ずれにも優先する上書きのセットです。map 内で使用できる EJB3 プロパティがいく"
+"つかあります。"
 
 #. Tag: para
 #: Configuration.xml:122
 #, no-c-format
 msgid "javax.persistence.provider to define the provider class used"
-msgstr ""
+msgstr "javax.persistence.provider :使用されるプロバイダークラスを定義 "
 
 #. Tag: para
 #: Configuration.xml:127
@@ -351,13 +477,15 @@
 "javax.persistence.transactionType to define the transaction type used "
 "(either JTA or RESOURCE_LOCAL)"
 msgstr ""
+"javax.persistence.transactionType : 使用されるトランザクションタイプを定義"
+"(JTA か RESOURCE_LOCAL)"
 
 #. Tag: para
 #: Configuration.xml:132
 #, no-c-format
 msgid ""
 "javax.persistence.jtaDataSource to define the JTA datasource name in JNDI"
-msgstr ""
+msgstr "javax.persistence.jtaDataSource :JNDI 内で JTA datasource 名を定義"
 
 #. Tag: para
 #: Configuration.xml:137
@@ -366,6 +494,7 @@
 "javax.persistence.nonJtaDataSource to define the non JTA datasource name in "
 "JNDI"
 msgstr ""
+"javax.persistence.nonJtaDataSource:JNDI 内で JTA datasource 以外の名前を定義"
 
 #. Tag: para
 #: Configuration.xml:142
@@ -385,6 +514,19 @@
 "correct name are found or if the expected persistence provider is not found, "
 "a <classname>PersistenceException</classname> is raised."
 msgstr ""
+"<code>Persistence.createEntityManagerFactory()</code> が呼び出されると、 永続"
+"化実装は <code>ClassLoader.getResource(\"META-INF/persistence.xml\")</code> "
+"メソッドを使用して、<code>META-INF/persistence.xml</code> ファイルの為に使用"
+"しているクラスパスを検索します。 実際、<classname>Persistence</classname> ク"
+"ラスは、クラスパスで利用できる 全ての Persistence Provider を見て、それぞれに"
+"対して、entity manager ファクトリ <literal>manager1</literal> の作成を担当し"
+"ているかどうかを尋ねます。各 provider は リソースのこのリストから、"
+"persistence.xml ファイル内に既に指定してあるものを 利用してユーザーが コマン"
+"ドライン内に指定する名前と一致する entity manager を 探す試みをします(当然、"
+"provider <literal>element</literal> は 現在の永続化コンテキストに 一致する必"
+"要があります)。正しい名前を持つ persistence.xml が見付からないか、又は、期待"
+"した persistence provider が見付からない場合は、"
+"<classname>PersistenceException</classname> が 立ち上がります。"
 
 #. Tag: para
 #: Configuration.xml:145
@@ -397,30 +539,36 @@
 "reference documentation for a complete listing. There are however a couple "
 "of properties available in the EJB3 provider only."
 msgstr ""
+"Hibernate system-level セッティング以外に、Hibernate で利用できる全てのプロパ"
+"ティは persistence.xml ファイル内の <code>properties</code> エレメント内に"
+"セットされるか、 あるいは、ユーザーが <code>createEntityManagerFactory()</"
+"code> に 渡すマップ内に上書きとしてセットされます。完全な一覧には Hibernate "
+"リファレンスドキュメントを 参照してください。しかし、利用できるいくつかのプロ"
+"パティは EJB3 provider  のみにあります。"
 
 #. Tag: title
 #: Configuration.xml:151
 #, no-c-format
 msgid "Hibernate Entity Manager specific properties"
-msgstr ""
+msgstr "Hibernate Entity Manager 特有のプロパティ"
 
 #. Tag: entry
 #: Configuration.xml:157
 #, no-c-format
 msgid "Property name"
-msgstr ""
+msgstr "プロパティ名"
 
 #. Tag: entry
 #: Configuration.xml:160
 #, no-c-format
 msgid "Description"
-msgstr ""
+msgstr "説明"
 
 #. Tag: entry
 #: Configuration.xml:167
 #, no-c-format
 msgid "hibernate.ejb.classcache.&lt;classname&gt;"
-msgstr ""
+msgstr "hibernate.ejb.classcache.&lt;classname&gt;"
 
 #. Tag: entry
 #: Configuration.xml:170
@@ -431,12 +579,16 @@
 "classcache.com.acme.Cat read-write or hibernate.ejb.classcache.com.acme.Cat "
 "read-write, MyRegion)."
 msgstr ""
+"no cache にデフォルトとなるクラスの クラスキャッシュ戦略 [comma cache region]"
+"と 完全修飾型クラス名へデフォルトとなる region cache (例、hibernate.ejb."
+"classcache.com.acme.Cat read-write や、 hibernate.ejb.classcache.com.acme."
+"Cat read-write, MyRegion)"
 
 #. Tag: entry
 #: Configuration.xml:175
 #, no-c-format
 msgid "hibernate.ejb.collectioncache.&lt;collectionrole&gt;"
-msgstr ""
+msgstr "hibernate.ejb.collectioncache.&lt;collectionrole&gt;"
 
 #. Tag: entry
 #: Configuration.xml:178
@@ -447,12 +599,16 @@
 "hibernate.ejb.classcache.com.acme.Cat read-write or hibernate.ejb.classcache."
 "com.acme.Cat read-write, MyRegion)."
 msgstr ""
+"no cache にデフォルトとなるクラスの 集合キャッシュ戦略  [comma cache region] "
+"と、 完全修飾型役目へデフォルトとなる region cache (例、hibernate.ejb."
+"classcache.com.acme.Cat read-write や hibernate.ejb.classcache.com.acme.Cat "
+"read-write, MyRegion)"
 
 #. Tag: entry
 #: Configuration.xml:183
 #, no-c-format
 msgid "hibernate.ejb.cfgfile"
-msgstr ""
+msgstr "hibernate.ejb.cfgfile"
 
 #. Tag: entry
 #: Configuration.xml:186
@@ -461,12 +617,14 @@
 "XML configuration file to use to configure Hibernate (eg. <filename>/"
 "hibernate.cfg.xml</filename>)."
 msgstr ""
+"Hibernate を設定する為の XML 設定ファイル(例:<filename>/hibernate.cfg.xml</"
+"filename>)"
 
 #. Tag: entry
 #: Configuration.xml:191
 #, no-c-format
 msgid "hibernate.archive.autodetection"
-msgstr ""
+msgstr "hibernate.archive.autodetection"
 
 #. Tag: entry
 #: Configuration.xml:194
@@ -475,12 +633,14 @@
 "Determine which element is auto discovered by Hibernate Entity Manager while "
 "parsing the .par archive. (default to <literal>class,hbm</literal>)."
 msgstr ""
+" .par archive を構文解析している間に、Hibernate Entity Manager によって 自動"
+"発見されるエレメントを決定します。"
 
 #. Tag: entry
 #: Configuration.xml:199
 #, no-c-format
 msgid "hibernate.ejb.interceptor"
-msgstr ""
+msgstr "hibernate.ejb.interceptor"
 
 #. Tag: entry
 #: Configuration.xml:202
@@ -490,12 +650,15 @@
 "<classname>org.hibernate.Interceptor</classname> and have a no-arg "
 "constructor."
 msgstr ""
+"オプションの Hibernate インターセプタ。このインターセプタは <classname>org."
+"hibernate.Interceptor</classname> を実装すなければならず、 引数なしのコンスト"
+"ラクタを持ちます。"
 
 #. Tag: entry
 #: Configuration.xml:207
 #, no-c-format
 msgid "hibernate.ejb.naming_strategy"
-msgstr ""
+msgstr "hibernate.ejb.naming_strategy"
 
 #. Tag: entry
 #: Configuration.xml:210
@@ -505,12 +668,16 @@
 "<classname>EJB3NamingStrategy</classname>. You also might want to consider "
 "the <classname>DefaultComponentSafeNamingStrategy</classname>."
 msgstr ""
+"オプションの命名戦略。使用されるデフォルト命名戦略は "
+"<classname>EJB3NamingStrategy</classname> です。また、"
+"<classname>DefaultComponentSafeNamingStrategy</classname> を 考慮しても良いで"
+"しょう。"
 
 #. Tag: entry
 #: Configuration.xml:215
 #, no-c-format
 msgid "hibernate.ejb.event.&lt;eventtype&gt;"
-msgstr ""
+msgstr "hibernate.ejb.event.&lt;eventtype&gt;"
 
 #. Tag: entry
 #: Configuration.xml:218
@@ -520,12 +687,15 @@
 "comma separated fully qualified class name list (eg. hibernate.ejb.event.pre-"
 "load com.acme.SecurityListener, com.acme.AuditListener)"
 msgstr ""
+"任意の eventtype 用の イベントリスナーリストです。イベントリスナーのリストは "
+"コンマで分離した完全修飾名のリスト(例:hibernate.ejb.event.pre-load com."
+"acme.SecurityListener, com.acme.AuditListener)です。"
 
 #. Tag: entry
 #: Configuration.xml:223
 #, no-c-format
 msgid "hibernate.ejb.use_class_enhancer"
-msgstr ""
+msgstr "hibernate.ejb.use_class_enhancer"
 
 #. Tag: entry
 #: Configuration.xml:226
@@ -534,12 +704,14 @@
 "Whether or not use Application server class enhancement at deployment time "
 "(default to false)"
 msgstr ""
+"デプロイメント時にアプリケーションサーバークラスの強化を使用するかどうかを決"
+"定します。 (デフォルトは false)"
 
 #. Tag: entry
 #: Configuration.xml:231
 #, no-c-format
 msgid "hibernate.ejb.discard_pc_on_close"
-msgstr ""
+msgstr "hibernate.ejb.discard_pc_on_close"
 
 #. Tag: entry
 #: Configuration.xml:234
@@ -551,6 +723,11 @@
 "be sy,chronized with the database (default to false, ie wait the transaction "
 "completion)"
 msgstr ""
+"true の場合は、永続化コンテキストが破棄されることになります(メソッドが呼び出"
+"される時に clear() だと考えます。それ以外の場合は、永続化コンテキストは、トラ"
+"ンザクションが完了するまで 生存します: 全てのオブジェクトは管理された状態のま"
+"ま残り、どのような変化もデータベースと 同期化されます。(デフォルトは false "
+"で、これはトランザクションの完了を待ちます)"
 
 #. Tag: para
 #: Configuration.xml:241
@@ -562,6 +739,11 @@
 "xml</filename> will override the one in the defined <filename>hibernate.cfg."
 "xml</filename>."
 msgstr ""
+"同じ設定内で XML <literal>&lt;class&gt;</literal> 宣言と <literal>hibernate."
+"ejb.cfgfile</literal> 使用を 混合することができることに注意して下さい。クラッ"
+"シュの可能性があることに気を付けて下さい。<filename>persistence.xml</"
+"filename> 内にセットしてあるプロパティは <filename>hibernate.cfg.xml</"
+"filename> 内に定義してある プロパティを上書きします。"
 
 #. Tag: para
 #: Configuration.xml:245
@@ -574,12 +756,18 @@
 "working in a Java EE environment, you might want to set the "
 "<literal>hibernate.transaction.manager_lookup_class</literal> though."
 msgstr ""
+"<literal>hibernate.transaction.factory_class</literal> を上書きしないように注"
+"意してください。 Hibernate EntityManager は、EntityManager タイプに応じて自動"
+"的に適切なトランザクション ファクトリをセットします。(<literal>JTA</"
+"literal> 対 <literal>RESOURSE_LOCAL</literal>) Java EE 環境内で作業している"
+"場合は、<literal>hibernate.transaction.manager_lookup_class</literal> を セッ"
+"トしても良いでしょう。"
 
 #. Tag: para
 #: Configuration.xml:249
 #, no-c-format
 msgid "Here is a typical configuration in a J2SE environment"
-msgstr ""
+msgstr "以下に J2SE 環境内の典型的な設定を示します。"
 
 #. Tag: programlisting
 #: Configuration.xml:252
@@ -621,6 +809,41 @@
 "   &lt;/persistence-unit&gt;\n"
 "&lt;/persistence&gt;"
 msgstr ""
+"&lt;persistence&gt;\n"
+"   &lt;persistence-unit name=\"manager1\" transaction-type=\"RESOURCE_LOCAL"
+"\"&gt;\n"
+"      &lt;class&gt;org.hibernate.ejb.test.Cat&lt;/class&gt;\n"
+"      &lt;class&gt;org.hibernate.ejb.test.Distributor&lt;/class&gt;\n"
+"      &lt;class&gt;org.hibernate.ejb.test.Item&lt;/class&gt;\n"
+"      &lt;properties&gt;\n"
+"         &lt;property name=\"hibernate.dialect\" value=\"org.hibernate."
+"dialect.HSQLDialect\"/&gt;\n"
+"         &lt;property name=\"hibernate.connection.driver_class\" value=\"org."
+"hsqldb.jdbcDriver\"/&gt;\n"
+"         &lt;property name=\"hibernate.connection.username\" value=\"sa\"/"
+"&gt;\n"
+"         &lt;property name=\"hibernate.connection.password\" value=\"\"/"
+"&gt;\n"
+"         &lt;property name=\"hibernate.connection.url\" value=\"jdbc:hsqldb:."
+"\"/&gt;\n"
+"         &lt;property name=\"hibernate.max_fetch_depth\" value=\"3\"/&gt;\n"
+"       \n"
+"         &lt;!-- cache configuration --&gt;\n"
+"         &lt;property name=\"hibernate.ejb.classcache.org.hibernate.ejb.test."
+"Item\"\n"
+"             value=\"read-write\"/&gt;\n"
+"         &lt;property name=\"hibernate.ejb.collectioncache.org.hibernate.ejb."
+"test.Item.distributors\" \n"
+"             value=\"read-write, RegionName\"/&gt;\n"
+"\n"
+"         &lt;!-- alternatively to &lt;class&gt; and &lt;property&gt; "
+"declarations, you can use a regular \n"
+"             hibernate.cfg.xml file --&gt;\n"
+"         &lt;!-- property name=\"hibernate.ejb.cfgfile\" \n"
+"             value=\"/org/hibernate/ejb/test/hibernate.cfg.xml\"/ --&gt;\n"
+"      &lt;/properties&gt;\n"
+"   &lt;/persistence-unit&gt;\n"
+"&lt;/persistence&gt;"
 
 #. Tag: para
 #: Configuration.xml:253
@@ -632,12 +855,17 @@
 "classname>. Refer to the JavaDoc and the Hibernate reference guide for more "
 "detailed informations on how to use it."
 msgstr ""
+"プログラムでの設定を簡素化するために、Hibernate Entity Manager はプロプライエ"
+"タリ API を 提供します。この API は <classname>Configuration</classname> API "
+"にかなり 似ており、同じ概念 <classname>Ejb3Configuration</classname> を共有し"
+"ます。 その使用法に関する詳細情報は JavaDoc と Hibernate リファレンスガイドで"
+"ご覧下さい。"
 
 #. Tag: para
 #: Configuration.xml:256
 #, no-c-format
 msgid "TODO: me more descriptive on some APIs like setDatasource()"
-msgstr ""
+msgstr "TODO: setDatasource() のような一部の API 上でより説明的にする"
 
 #. Tag: programlisting
 #: Configuration.xml:259
@@ -657,12 +885,25 @@
 "     .addRerousce( \"mypath/orm.xml ) //add an EJB3 deployment descriptor\n"
 "     .buildEntityManagerFactory(); //Create the entity manager factory"
 msgstr ""
+"Ejb3Configuration cfg = new Ejb3Configuration();\n"
+"EntityManagerFactory emf = \n"
+"  cfg.configure(\"/mypath/hibernate.cfg.xml\") //add a regular hibernate.cfg."
+"xml\n"
+"     .addProperties( properties ) //add some properties\n"
+"     .setInterceptor( myInterceptorImpl ) // set an interceptor\n"
+"     .addAnnotatedClass( MyAnnotatedClass.class ) //add a class to be "
+"mapped\n"
+"     .addClass( NonAnnotatedClass.class ) //add an hbm.xml file using the "
+"Hibernate convention\n"
+"     .addRerousce( \"mypath/MyOtherCLass.hbm.xml ) //add an hbm.xml file\n"
+"     .addRerousce( \"mypath/orm.xml ) //add an EJB3 deployment descriptor\n"
+"     .buildEntityManagerFactory(); //Create the entity manager factory"
 
 #. Tag: title
 #: Configuration.xml:265
 #, no-c-format
 msgid "Event listeners"
-msgstr ""
+msgstr "イベントリスナー"
 
 #. Tag: para
 #: Configuration.xml:266
@@ -674,226 +915,236 @@
 "override some of the EJB3 semantics. A safe way is to add your event "
 "listeners to the list given below."
 msgstr ""
+"Hibernate Entity Manager は Hibernate コアを強化して全ての EJB3 セマンティク"
+"スを 実装する必要があります。Hibernate Entity Manager は Hibernate のイベント"
+"リスナーシステムを 通じてこれを行います。自分自身でイベントシステムを使用する"
+"時は注意して下さい。EJB3 セマンティクスの 一部を上書きしてしまうかも知れませ"
+"ん。安全な方法は、以下に示したリストに使用するイベントリスナーを 追加すること"
+"です。"
 
 #. Tag: title
 #: Configuration.xml:270
 #, no-c-format
 msgid "Hibernate Entity Manager default event listeners"
-msgstr ""
+msgstr "Hibernate Entity Manager デフォルトのイベントリスナー"
 
 #. Tag: entry
 #: Configuration.xml:276
 #, no-c-format
 msgid "Event"
-msgstr ""
+msgstr "Event"
 
 #. Tag: entry
 #: Configuration.xml:279
 #, no-c-format
 msgid "Listeners"
-msgstr ""
+msgstr "リスナー"
 
 #. Tag: entry
 #: Configuration.xml:286
 #, no-c-format
 msgid "flush"
-msgstr ""
+msgstr "flush"
 
 #. Tag: entry
 #: Configuration.xml:289
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3FlushEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3FlushEventListener"
 
 #. Tag: entry
 #: Configuration.xml:294
 #, no-c-format
 msgid "auto-flush"
-msgstr ""
+msgstr "auto-flush"
 
 #. Tag: entry
 #: Configuration.xml:297
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3AutoFlushEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3AutoFlushEventListener"
 
 #. Tag: entry
 #: Configuration.xml:302
 #, no-c-format
 msgid "delete"
-msgstr ""
+msgstr "delete"
 
 #. Tag: entry
 #: Configuration.xml:305
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3DeleteEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3DeleteEventListener"
 
 #. Tag: entry
 #: Configuration.xml:310
 #, no-c-format
 msgid "flush-entity"
-msgstr ""
+msgstr "flush-entity"
 
 #. Tag: entry
 #: Configuration.xml:313
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3FlushEntityEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3FlushEntityEventListener"
 
 #. Tag: entry
 #: Configuration.xml:318
 #, no-c-format
 msgid "merge"
-msgstr ""
+msgstr "merge"
 
 #. Tag: entry
 #: Configuration.xml:321
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3MergeEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3MergeEventListener"
 
 #. Tag: entry
 #: Configuration.xml:326
 #, no-c-format
 msgid "create"
-msgstr ""
+msgstr "create"
 
 #. Tag: entry
 #: Configuration.xml:329
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3PersistEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3PersistEventListener"
 
 #. Tag: entry
 #: Configuration.xml:334
 #, no-c-format
 msgid "create-onflush"
-msgstr ""
+msgstr "create-onflush"
 
 #. Tag: entry
 #: Configuration.xml:337
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3PersistOnFlushEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3PersistOnFlushEventListener"
 
 #. Tag: entry
 #: Configuration.xml:342
 #, no-c-format
 msgid "save"
-msgstr ""
+msgstr "save"
 
 #. Tag: entry
 #: Configuration.xml:345
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3SaveEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3SaveEventListener"
 
 #. Tag: entry
 #: Configuration.xml:350
 #, no-c-format
 msgid "save-update"
-msgstr ""
+msgstr "save-update"
 
 #. Tag: entry
 #: Configuration.xml:353
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3SaveOrUpdateEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3SaveOrUpdateEventListener"
 
 #. Tag: entry
 #: Configuration.xml:358 Configuration.xml:366
 #, no-c-format
 msgid "pre-insert"
-msgstr ""
+msgstr "pre-insert"
 
 #. Tag: entry
 #: Configuration.xml:361
-#, no-c-format
+#, fuzzy, no-c-format
 msgid ""
 "org.hibernate.secure.JACCPreInsertEventListener, org.hibernate.validator."
 "event.ValidateEventListener"
 msgstr ""
+"org.hibernate.secure.JACCPreInsertEventListener, org.hibernate.valitator."
+"event.ValidateEventListener"
 
 #. Tag: entry
 #: Configuration.xml:369
-#, no-c-format
+#, fuzzy, no-c-format
 msgid ""
 "org.hibernate.secure.JACCPreUpdateEventListener, org.hibernate.validator."
 "event.ValidateEventListener"
 msgstr ""
+"org.hibernate.secure.JACCPreUpdateEventListener, org.hibernate.valitator."
+"event.ValidateEventListener"
 
 #. Tag: entry
 #: Configuration.xml:374
 #, no-c-format
 msgid "pre-delete"
-msgstr ""
+msgstr "pre-delete"
 
 #. Tag: entry
 #: Configuration.xml:377
 #, no-c-format
 msgid "org.hibernate.secure.JACCPreDeleteEventListener"
-msgstr ""
+msgstr "org.hibernate.secure.JACCPreDeleteEventListener"
 
 #. Tag: entry
 #: Configuration.xml:382
 #, no-c-format
 msgid "pre-load"
-msgstr ""
+msgstr "pre-load"
 
 #. Tag: entry
 #: Configuration.xml:385
 #, no-c-format
 msgid "org.hibernate.secure.JACCPreLoadEventListener"
-msgstr ""
+msgstr "org.hibernate.secure.JACCPreLoadEventListener"
 
 #. Tag: entry
 #: Configuration.xml:390
 #, no-c-format
 msgid "post-delete"
-msgstr ""
+msgstr "post-delete"
 
 #. Tag: entry
 #: Configuration.xml:393
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3PostDeleteEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3PostDeleteEventListener"
 
 #. Tag: entry
 #: Configuration.xml:398
 #, no-c-format
 msgid "post-insert"
-msgstr ""
+msgstr "post-insert"
 
 #. Tag: entry
 #: Configuration.xml:401
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3PostInsertEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3PostInsertEventListener"
 
 #. Tag: entry
 #: Configuration.xml:406
 #, no-c-format
 msgid "post-load"
-msgstr ""
+msgstr "post-load"
 
 #. Tag: entry
 #: Configuration.xml:409
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3PostLoadEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3PostLoadEventListener"
 
 #. Tag: entry
 #: Configuration.xml:414
 #, no-c-format
 msgid "post-update"
-msgstr ""
+msgstr "post-update"
 
 #. Tag: entry
 #: Configuration.xml:417
 #, no-c-format
 msgid "org.hibernate.ejb.event.EJB3PostUpdateEventListener"
-msgstr ""
+msgstr "org.hibernate.ejb.event.EJB3PostUpdateEventListener"
 
 #. Tag: para
 #: Configuration.xml:424
@@ -901,6 +1152,8 @@
 msgid ""
 "Note that the JACC*EventListeners are removed if the security is not enabled."
 msgstr ""
+"JACC*EventListener は、セキュリティが有効でない場合は削除されることに注意して"
+"下さい。"
 
 #. Tag: para
 #: Configuration.xml:427
@@ -911,12 +1164,16 @@
 "or through the <methodname>ejb3configuration.getEventListeners()</"
 "methodname> API."
 msgstr ""
+"イベントリスナーは、プロパティ(<xref linkend=\"Setup_and_configuration-"
+"Configuration_and_bootstrapping\"/> 参照)を 通じてか、あるいは、"
+"<methodname>ejb3configuration.getEventListeners()</methodname> API を通じて "
+"設定することができます。"
 
 #. Tag: title
 #: Configuration.xml:433
 #, no-c-format
 msgid "Obtaining an EntityManager in a Java SE environment"
-msgstr ""
+msgstr "Java SE 環境内で EntityManager の取得"
 
 #. Tag: para
 #: Configuration.xml:434
@@ -928,6 +1185,12 @@
 "<classname>EntityManager</classname>s. The <classname>Persistence</"
 "classname> class is bootstrap class to create an entity manager factory."
 msgstr ""
+"entity manager ファクトリは、不変的な設定ホルダーとして考えるべきものです。 "
+"単独のデータソースへポイントするように、そして定義された  entity のセットを"
+"マップする ように定義されています。これが <classname>EntityManager</"
+"classname> の作成と 管理の為の入り口となります。<classname>Persistence</"
+"classname> クラスは entity manager ファクトリを作成する為の bootstrap クラス"
+"です。"
 
 #. Tag: programlisting
 #: Configuration.xml:437
@@ -943,6 +1206,15 @@
 "...\n"
 "emf.close(); //close at application end"
 msgstr ""
+"// Use persistence.xml configuration\n"
+"EntityManagerFactory emf = Persistence.createEntityManagerFactory(\"manager1"
+"\")\n"
+"EntityManager em = emf.createEntityManager(); // Retrieve an application "
+"managed entity manager\n"
+"// Work with the EM\n"
+"em.close();\n"
+"...\n"
+"emf.close(); //close at application end"
 
 #. Tag: para
 #: Configuration.xml:438
@@ -955,6 +1227,12 @@
 "factory is a wrapper on top of a session factory. Calls to the "
 "entityManagerFactory are thread safe."
 msgstr ""
+"entity manager ファクトリは標準的には、アプリケーション初期化時点に作成され"
+"て、 アプリケーションの終了時に閉じられます。その作成は経費のかかるプロセスで"
+"す。 Hibernate に慣れ親しんでいるユーザーには、entity manager ファクトリはと"
+"ても セッションファクトリに似ていることが分かるでしょう。実際、entity "
+"manager ファクトリは セッションファクトリの上にあるラッパーなのです。"
+"entityManagerFactory  への呼び出しは スレッドセーフです。"
 
 #. Tag: para
 #: Configuration.xml:441
@@ -967,18 +1245,24 @@
 "between). You can see an entity manager as a small wrapper on top of an "
 "Hibernate session."
 msgstr ""
+"EntityManagerFactory のお蔭で、拡張型 entity manager を取り込むことができま"
+"す。 拡張型 entity manager は entity manager の寿命の間は同じ永続化コンテキス"
+"トを維持します。 すなわち、entity はまだ、二つのトランザクション間で管理され"
+"ています(その中間で entityManager.clear() を 呼び出さない場合)。entity "
+"manager は Hibernate セッションの上にある小さなラッパーとして見ることができま"
+"す。"
 
 #. Tag: para
 #: Configuration.xml:444
 #, no-c-format
 msgid "TODO explains emf.createEntityManager(Map)"
-msgstr ""
+msgstr "TODO は emf.createEntityManager(Map) を説明"
 
 #. Tag: title
 #: Configuration.xml:450
 #, no-c-format
 msgid "Various"
-msgstr ""
+msgstr "その他"
 
 #. Tag: para
 #: Configuration.xml:451
@@ -990,3 +1274,8 @@
 "performance cost. For more information on Hibernate Validator, please refer "
 "to the Hibernate Annotations reference guide."
 msgstr ""
+"Hibernate Entity Manager は最初から Hibernate Validator を設定した状態で 配布"
+"されます。どのイベントも自分で書き換える必要はありません。使用中の ドメインモ"
+"デルで Hibernate Validator アノテーションを使用しない場合は、 パフォーマンス"
+"への負担はありません。Hibernate Validator についての詳細情報には、 Hibernate "
+"Annotation リファレンスガイドを参照して下さい。"

Modified: projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Entity_Manager_User_Guide.po
===================================================================
--- projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Entity_Manager_User_Guide.po	2008-08-11 03:18:06 UTC (rev 76878)
+++ projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Entity_Manager_User_Guide.po	2008-08-11 03:26:42 UTC (rev 76879)
@@ -1,29 +1,33 @@
+# translation of Architecture.po to Japanese
 # Language /tmp/mike/JBEAP420/Entity translations for JBEAP package.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
 # Automatically generated, 2007.
-#
+# Kiyoto Hashida <khashida at redhat.com>, 2008.
 msgid ""
 msgstr ""
-"Project-Id-Version: JBEAP 420\n"
-"POT-Creation-Date: 2001-02-09 01:25+0100\n"
-"PO-Revision-Date: 2001-02-09 01:25+0100\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"Project-Id-Version: Architecture\n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
+"POT-Creation-Date: 2008-08-11 03:22+0000\n"
+"PO-Revision-Date: 2008-08-08 11:07+1000\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. Tag: title
 #: Entity_Manager_User_Guide.xml:10
 #, no-c-format
 msgid "Hibernate Entity Manager"
-msgstr ""
+msgstr "Hibernate エンティティマネージャ"
 
 #. Tag: title
 #: Entity_Manager_User_Guide.xml:12
 #, no-c-format
 msgid "Introducing EJB3 Persistence"
-msgstr ""
+msgstr "EJB3 永続化の紹介"
 
 #. Tag: para
 #: Entity_Manager_User_Guide.xml:13
@@ -43,3 +47,16 @@
 "You can at all times fall back to Hibernate native APIs, or if required, "
 "even to native JDBC and SQL."
 msgstr ""
+"EJB3 仕様は、透過的なオブジェクト/リレーショナルマッピングパラダイムへの関心"
+"や成功を反映しています。EJB3 仕様は、オブジェクト/リレーショナル永続化メカニ"
+"ズムに必要な基本 APIやメタデータを標準化します。<emphasis>Hibernate "
+"EntityManager</emphasis> は EJB3 永続仕様に定義された通り、プログラミングイン"
+"ターフェイスとライフサイクルルールを導入します。ラッパーである "
+"<emphasis>Hibernate EntityManager</emphasis> は、<emphasis>Hibernate "
+"Annotations</emphasis> と共に、完全(スタンドアローン) な EJB3 永続化ソリュー"
+"ションを成熟した Hibernate コアの上に導入します。3 つをすべて組み合わせて使用"
+"することも可能ですが、プロジェクトのニーズによって EJB3 プログラミングイン"
+"ターフェイスやライフサイクルを使用せずアノテーションを使用したり、純粋なネイ"
+"ティブの Hibernate を使用することもできます。随時、Hibernate のネイティブ "
+"API に戻ることができ、必要な場合はネイティブ JDBC や SQL に戻ることも可能で"
+"す。"

Modified: projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Entitymanagerapi.po
===================================================================
--- projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Entitymanagerapi.po	2008-08-11 03:18:06 UTC (rev 76878)
+++ projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Entitymanagerapi.po	2008-08-11 03:26:42 UTC (rev 76879)
@@ -1,29 +1,33 @@
+# translation of Architecture.po to Japanese
 # Language /tmp/mike/JBEAP420/Entity translations for JBEAP package.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
 # Automatically generated, 2007.
-#
+# Kiyoto Hashida <khashida at redhat.com>, 2008.
 msgid ""
 msgstr ""
-"Project-Id-Version: JBEAP 420\n"
-"POT-Creation-Date: 2001-02-09 01:25+0100\n"
-"PO-Revision-Date: 2001-02-09 01:25+0100\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"Project-Id-Version: Architecture\n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
+"POT-Creation-Date: 2008-08-11 03:22+0000\n"
+"PO-Revision-Date: 2008-08-08 11:07+1000\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. Tag: title
 #: Entitymanagerapi.xml:10
 #, no-c-format
 msgid "Working with objects"
-msgstr ""
+msgstr "オブジェクトでの作業"
 
 #. Tag: title
 #: Entitymanagerapi.xml:12
 #, no-c-format
 msgid "Entity states"
-msgstr ""
+msgstr "Entity の状態"
 
 #. Tag: para
 #: Entitymanagerapi.xml:13
@@ -32,6 +36,8 @@
 "Like in Hibernate (comparable terms in parantheses), an entity instance is "
 "in one of the following states:"
 msgstr ""
+"Hibernate 内と同様に(括弧内は比較事項)、entity インスタンスは 以下のような "
+"状態の1つとなります:"
 
 #. Tag: para
 #: Entitymanagerapi.xml:18
@@ -42,6 +48,9 @@
 "persistent representation in the database and no identifier value has been "
 "assigned."
 msgstr ""
+"New (変動): 新規のオペレータを使用して具体化されたばかりの場合、entity は "
+"「new」と なり、永続化コンテキストとは関連付けがありません。データベースに永"
+"続化の代理がなく、 識別子値は割り当てられていません。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:23
@@ -50,6 +59,8 @@
 "Managed (persistent): a managed entity instance is an instance with a "
 "persistent identity that is currently associated with a persistence context."
 msgstr ""
+"Managed (永続): 管理された entity インスタンスは、永続化アイデンティティを利"
+"用するインスタンスで、 現在永続化コンテキストと関連付けされているものです。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:28
@@ -59,6 +70,9 @@
 "is no longer associated with a persistence context, usually because the "
 "persistence context was closed or the instance was evicted from the context."
 msgstr ""
+"Detached: この entity インスタンスは、通常、永続化コンテキストが閉じたこと、"
+"又はその インスタンスがコンテキストから追放された為に、永続化コンテキストと関"
+"連付けのなくなった 永続化アイデンティティを利用するインスタンスです。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:33
@@ -68,6 +82,9 @@
 "identity, associated with a persistence context, but scheduled for removal "
 "from the database."
 msgstr ""
+"Removed: Removed entity インスタンスは永続化アイデンティティを利用する インス"
+"タンスであり、永続化コンテキストと関連付けがありますが、データベースから 削除"
+"されるスケジュールがあるものです。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:38
@@ -78,12 +95,16 @@
 "persistence with EJB3 easier to understand if you think about object state "
 "management, not managing of SQL statements."
 msgstr ""
+"<classname>EntityManager</classname> API により、entity の状態を変更するこ"
+"と、すなわち、オブジェクトのロードとストアが可能になります。SQL ステートメン"
+"トの管理ではなく、オブジェクト状態の管理を考えると、EJB3 を利用する永続化がよ"
+"り理解し易いと思えるでしょう。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:44
 #, no-c-format
 msgid "Making objects persistent"
-msgstr ""
+msgstr "オブジェクトの永続化"
 
 #. Tag: para
 #: Entitymanagerapi.xml:45
@@ -93,6 +114,9 @@
 "<literal>new</literal> operator) it is in <literal>new</literal> state. You "
 "can make it persistent by associating it to an entity manager:"
 msgstr ""
+"新規の entity インスタンスを(一般的な <literal>new</literal> オペレータを使"
+"用して)作成 すると、それは <literal>new</literal> の状態になります。それを "
+"以下のようにして、 entity manager に関連づけると、永続化することができます:"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:48
@@ -104,6 +128,11 @@
 "fritz.setName(\"Fritz\");\n"
 "em.persist(fritz);"
 msgstr ""
+"DomesticCat fritz = new DomesticCat();\n"
+"fritz.setColor(Color.GINGER);\n"
+"fritz.setSex(&#39;M&#39;);\n"
+"fritz.setName(\"Fritz\");\n"
+"em.persist(fritz);"
 
 #. Tag: para
 #: Entitymanagerapi.xml:49
@@ -115,12 +144,17 @@
 "application-assigned (usually natural) key value has to be set on the "
 "instance before <code>persist()</code> is called."
 msgstr ""
+"<literal>DomesticCat</literal> entity タイプが生成された識別子を 持っている場"
+"合、その値は <code>persist()</code> が呼び出される時にインスタンスへ 関連付け"
+"されます。その識別子が自動的に生成されない場合は、アプリケーションで 割り当て"
+"た(通常自然の)キーの値が、<code>persist()</code> の呼び出し前に、インスタン"
+"ス上で セットされなければなりません。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:55
 #, no-c-format
 msgid "Loading an object"
-msgstr ""
+msgstr "オブジェクトのローディング"
 
 #. Tag: para
 #: Entitymanagerapi.xml:56
@@ -129,6 +163,8 @@
 "Load an entity instance by its identifier value with the entity manager&#39;"
 "s <code>find()</code> method:"
 msgstr ""
+"entity manager の <code>find()</code> メソッドを利用して、識別子の値で "
+"entity インスタンスをロードします:"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:59
@@ -140,6 +176,11 @@
 "long catId = 1234;\n"
 "em.find( Cat.class, new Long(catId) );"
 msgstr ""
+"cat = em.find(Cat.class, catId);\n"
+"\n"
+"// You may need to wrap the primitive identifiers\n"
+"long catId = 1234;\n"
+"em.find( Cat.class, new Long(catId) );"
 
 #. Tag: para
 #: Entitymanagerapi.xml:60
@@ -150,6 +191,10 @@
 "<literal>getReference()</literal> method. This is especially useful to link "
 "a child to its parent wo having to load the parent."
 msgstr ""
+"一部のケースでは、オブジェクトの状態をロードしないで、単にそれを参照するだけ "
+"(proxy など)のこともあるでしょう。このような参照は <literal>getReference()"
+"</literal> メソッドを使用して達成できます。これは特に親をロードしないで、その"
+"親に 子をリンクするのに役に立ちます。"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:63
@@ -162,6 +207,12 @@
 "child.setParent(parent);\n"
 "em.persist(child);"
 msgstr ""
+"child = new Child();\n"
+"child.SetName(\"Henry\");\n"
+"Parent parent = em.getReference(Parent.class, parentId); //no query to the "
+"DB\n"
+"child.setParent(parent);\n"
+"em.persist(child);"
 
 #. Tag: para
 #: Entitymanagerapi.xml:64
@@ -173,6 +224,12 @@
 "that only the entity instance and its collections are refreshed unless you "
 "specify <literal>REFRESH</literal> as a cascade style of any associations:"
 msgstr ""
+"<code>em.refresh()</code> オペレーションを使用して、いつでも entity インスタ"
+"ンスと そのコレクションをリロードすることができます。これは entity の一部のプ"
+"ロパティを初期化する ためにデータベーストリガが使用される時に役に立ちます。"
+"<literal>REFRESH</literal> を いずれかの関連のキャスケードスタイルとして指定"
+"しないと、entity インスタンスと そのコレクションのみがリフレッシュされること"
+"に注意してください。 "
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:67
@@ -182,12 +239,15 @@
 "em.flush(); // force the SQL insert and triggers to run\n"
 "em.refresh(cat); //re-read the state (after the trigger executes)"
 msgstr ""
+"em.persist(cat);\n"
+"em.flush(); // force the SQL insert and triggers to run\n"
+"em.refresh(cat); //re-read the state (after the trigger executes)"
 
 #. Tag: title
 #: Entitymanagerapi.xml:71
 #, no-c-format
 msgid "Querying objects"
-msgstr ""
+msgstr "オブジェクトのクエリ"
 
 #. Tag: para
 #: Entitymanagerapi.xml:72
@@ -202,12 +262,20 @@
 "SQL of your database, with optional support from EJB3 for result set "
 "conversion into Java business objects."
 msgstr ""
+"探しているオブジェクトの識別子の値が判らない場合、クエリが必要になります。 "
+"Hibernate EntityManager の実装は、使用が簡単で強力な オブジェクトオリエンテッ"
+"ド クエリ言語 (EJB3-QL)をサポートします。これは HQL によって示唆を受けた"
+"(その逆も事実) ものです。両方のクエリ言語はデータベース全域に渡ってポータブ"
+"ルであり、(テーブルとコラム名の代わりに) entity とプロパティ名を識別子とし"
+"て使用します。また使用中のデータベースのネイティブ SQL で クエリを表現するこ"
+"ともできます。これには  Java ビジネスオブジェクトへの結果セット転換の 為に "
+"EJB3 からのサポートオプションもあります。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:76
 #, no-c-format
 msgid "Executing queries"
-msgstr ""
+msgstr "クエリの実行"
 
 #. Tag: para
 #: Entitymanagerapi.xml:77
@@ -218,6 +286,10 @@
 "binding, result set handling, and for execution of the query. Queries are "
 "always created using the current entity manager:"
 msgstr ""
+"EJB3QL と SQL のクエリは、<classname>javax.persistence.Query</classname> の "
+"インスタンスで表されます。このインターフェイスは、パラメータバインディング、"
+"結果セットの 処理、及びクエリの実行の為のメソッドを提供します。クエリは常に現"
+"在の entity manager を 使用して作成されます:"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:80
@@ -244,6 +316,26 @@
 "    .setParameter(1, izi)\n"
 "    .getSingleResult();"
 msgstr ""
+"List cats = em.createQuery(\n"
+"    \"select cat from Cat as cat where cat.birthdate &lt; ?1\")\n"
+"    .setParameter(1, date, TemporalType.DATE)\n"
+"    .getResultList();\n"
+"\n"
+"List mothers = em.createQuery(\n"
+"    \"select mother from Cat as cat join cat.mother as mother where cat.name "
+"= ?1\")\n"
+"    .setParameter(1, name)\n"
+"    .getResultList();\n"
+"\n"
+"List kittens = em.createQuery(\n"
+"    \"from Cat as cat where cat.mother = ?1\")\n"
+"    .setEntity(1, pk)\n"
+"    .getResultList();\n"
+"\n"
+"Cat mother = (Cat) em.createQuery(\n"
+"    \"select cat.mother from Cat as cat where cat = ?1\")\n"
+"    .setParameter(1, izi)\n"
+"    .getSingleResult();"
 
 #. Tag: para
 #: Entitymanagerapi.xml:81
@@ -255,12 +347,17 @@
 "persistent state. The <methodname>getSingleResult() </methodname>method "
 "offers a shortcut if you know your query will only return a single object."
 msgstr ""
+"クエリは通常、<methodname>getResultList()</methodname> を呼び出すことで 実行"
+"されます。このメソッドはクエリの結果のインスタンスを完全にメモリにロードしま"
+"す。 クエリによって取り込まれた Entity インスタンスは永続化の状態にありま"
+"す。 <methodname>getSingleResult() </methodname> メソッドは、使用中のクエリ"
+"が 単独オブジェクトのみを返すと判っている場合に、ショートカットを提供します。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:85
 #, no-c-format
 msgid "Projection"
-msgstr ""
+msgstr "プロジェクション"
 
 #. Tag: para
 #: Entitymanagerapi.xml:86
@@ -269,6 +366,9 @@
 "An EJB3QL query queries can return tuples of objects if projection is used. "
 "Each result tuple is returned as an object array:"
 msgstr ""
+"EJB3QL クエリのクエリ群は、プロジェクションが使用されている場合に、オブジェク"
+"トの タプルを返すことができます。それぞれの結果タプルは Array オブジェクトと"
+"して 返されます :"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:89
@@ -287,12 +387,24 @@
 "    ....\n"
 "}"
 msgstr ""
+"Iterator kittensAndMothers = sess.createQuery(\n"
+"            \"select kitten, mother from Cat kitten join kitten.mother mother"
+"\")\n"
+"            .getResultList()\n"
+"            .iterator();\n"
+"\n"
+"while ( kittensAndMothers.hasNext() ) {\n"
+"    Object[] tuple = (Object[]) kittensAndMothers.next();\n"
+"    Cat kitten  = tuple[0];\n"
+"    Cat mother  = tuple[1];\n"
+"    ....\n"
+"}"
 
 #. Tag: title
 #: Entitymanagerapi.xml:93
 #, no-c-format
 msgid "Scalar results"
-msgstr ""
+msgstr "Scalar result"
 
 #. Tag: para
 #: Entitymanagerapi.xml:94
@@ -304,6 +416,11 @@
 "\"scalar\" results and are not entities in persistent state (in other words, "
 "they are considered \"read only\"):"
 msgstr ""
+"クエリは entity エイリアスではなくて、選択条項内の entity の1つの特定プロパ"
+"ティを 指定することができます。ユーザーは SQL の累計関数も呼び出すことが出来"
+"ます。 返されたトランザクションでないオブジェクト又は累計結果は、\"scalar\" "
+"結果として考慮され、 永続化状態の entity ではありません(言い替えると、それら"
+"は読み込み専用として考慮されます)。 "
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:97
@@ -324,12 +441,26 @@
 "    .....\n"
 "}"
 msgstr ""
+"Iterator results = em.createQuery(\n"
+"        \"select cat.color, min(cat.birthdate), count(cat) from Cat cat \" "
+"+\n"
+"        \"group by cat.color\")\n"
+"        .getResultList()\n"
+"        .iterator();\n"
+"\n"
+"while ( results.hasNext() ) {\n"
+"    Object[] row = results.next();\n"
+"    Color type = (Color) row[0];\n"
+"    Date oldest = (Date) row[1];\n"
+"    Integer count = (Integer) row[2];\n"
+"    .....\n"
+"}"
 
 #. Tag: title
 #: Entitymanagerapi.xml:101
 #, no-c-format
 msgid "Bind parameters"
-msgstr ""
+msgstr "バインドパラメータ"
 
 #. Tag: para
 #: Entitymanagerapi.xml:102
@@ -342,6 +473,11 @@
 "string. Named parameters should be prefered, they are more robust and easier "
 "to read and understand:"
 msgstr ""
+"named と positional クエリのパラメータがサポートされており、<literal>Query</"
+"literal> API  は 引数をバインドするための数種のメソッドを提供します。EJB3 仕"
+"様は positional パラメータを 1から番号を付けます。Named パラメータはクエリ文"
+"字列での <literal>:paramname</literal> 形式の識別子です。Named パラメータがよ"
+"り強健で、より簡単に読み取りと理解ができる ため、好まれるパラメータです:"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:105
@@ -368,12 +504,32 @@
 "q.setParameter(\"namesList\", names);\n"
 "List cats = q.list();"
 msgstr ""
+"// Named parameter (preferred)\n"
+"Query q = em.createQuery(\"select cat from DomesticCat cat where cat.name = :"
+"name\");\n"
+"q.setParameter(\"name\", \"Fritz\");\n"
+"List cats = q.getResultList();\n"
+"\n"
+"// Positional parameter\n"
+"Query q = em.createQuery(\"select cat from DomesticCat cat where cat.name = ?"
+"1\");\n"
+"q.setParameter(1, \"Izi\");\n"
+"List cats = q.getResultList();\n"
+"\n"
+"// Named parameter list\n"
+"List names = new ArrayList();\n"
+"names.add(\"Izi\");\n"
+"names.add(\"Fritz\");\n"
+"Query q = em.createQuery(\"select cat from DomesticCat cat where cat.name in "
+"(:namesList)\");\n"
+"q.setParameter(\"namesList\", names);\n"
+"List cats = q.list();"
 
 #. Tag: title
 #: Entitymanagerapi.xml:109
 #, no-c-format
 msgid "Pagination"
-msgstr ""
+msgstr "Pagination"
 
 #. Tag: para
 #: Entitymanagerapi.xml:110
@@ -383,6 +539,8 @@
 "rows you want to retrieve and/or the first row you want to retrieve), use "
 "the following methods:"
 msgstr ""
+"結果セット上に限界を指定する必要がある場合(取り込みたい列の最大数/取り込みた"
+"い最初の列)、 以下のメソッドを使用します:"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:113
@@ -393,6 +551,10 @@
 "q.setMaxResults(10);\n"
 "List cats = q.getResultList(); //return cats from the 20th position to 29th"
 msgstr ""
+"Query q = em.createQuery(\"select cat from DomesticCat cat\");\n"
+"q.setFirstResult(20);\n"
+"q.setMaxResults(10);\n"
+"List cats = q.getResultList(); //return cats from the 20th position to 29th"
 
 #. Tag: para
 #: Entitymanagerapi.xml:114
@@ -401,18 +563,20 @@
 "Hibernate knows how to translate this limit query into the native SQL of "
 "your DBMS."
 msgstr ""
+"Hibernate はこの限界クエリを使用中の DBMS のネイティブ SQL に 翻訳する方法を"
+"理解しています。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:120
 #, no-c-format
 msgid "Externalizing named queries"
-msgstr ""
+msgstr "named クエリの外部化"
 
 #. Tag: para
 #: Entitymanagerapi.xml:121
 #, no-c-format
 msgid "You may also define named queries through annotations:"
-msgstr ""
+msgstr "named クエリはアノテーションを介してでも定義できます:"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:124
@@ -423,6 +587,10 @@
 "  query=\"select cat from eg.DomesticCat as cat  where cat.name = ?1 and cat."
 "weight &gt; ?2\")"
 msgstr ""
+"@javax.persistence.NamedQuery(name=\"eg.DomesticCat.by.name.and.minimum."
+"weight\", \n"
+"  query=\"select cat from eg.DomesticCat as cat  where cat.name = ?1 and cat."
+"weight &gt; ?2\")"
 
 #. Tag: para
 #: Entitymanagerapi.xml:125
@@ -431,6 +599,8 @@
 "Parameters are bound programatically to the named query, before it is "
 "executed:"
 msgstr ""
+"パラメータは、それが実行される前にプログラムで named クエリに バインドされま"
+"す:"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:128
@@ -442,6 +612,11 @@
 "q.setInt(2, minWeight);\n"
 "List cats = q.getResultList();"
 msgstr ""
+"Query q = em.createNamedQuery(\"eg.DomesticCat.by.name.and.minimum.weight"
+"\");\n"
+"q.setString(1, name);\n"
+"q.setInt(2, minWeight);\n"
+"List cats = q.getResultList();"
 
 #. Tag: para
 #: Entitymanagerapi.xml:129
@@ -451,12 +626,16 @@
 "is used, you may also define native SQL queries in metadata, or use "
 "Hibernate&#39;s native facilities by placing them in XML mapping files."
 msgstr ""
+"実際のプログラムコードは、使用するクエリ言語とは独立していることに注意して く"
+"ださい。ネイティブ SQL クエリを XML マッピングファイルに配置することにより、 "
+"そのネイティブ SQL クエリをメタデータで定義したり、あるいは Hibernate のネイ"
+"ティブ施設を使用することも出来ます。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:135
 #, no-c-format
 msgid "Native queries"
-msgstr ""
+msgstr "ネイティブクエリ"
 
 #. Tag: para
 #: Entitymanagerapi.xml:136
@@ -470,6 +649,14 @@
 "result are the same as the names declared in the entity mapping; remember "
 "that all entity columns have to be returned for this mechanism to work):"
 msgstr ""
+"<methodname>createNativeQuery()</methodname> を使用してSQL でクエリを表現をし"
+"て、 そして JDBC 結果セットからビジネスオブジェクトへのマッピングを "
+"Hibernate に任せることができます。 <literal>@SqlResultSetMapping</literal> を"
+"使用(SQL resultset マッピングのマップの仕方に ついては Hibernate Annotation "
+"リファレンスガイドをご覧下さい)するか、又は  entity マッピングを 使用します"
+"(クエリ結果のコラム名が entity マッピング内で宣言されている名前と同じ場合"
+"は、このメカニズムが 機能するには全ての entity コラムが返される必要がありま"
+"す。)"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:139
@@ -492,6 +679,22 @@
 "item = (Item) q.getSingleResult(); //from a class columns names match the "
 "mapping"
 msgstr ""
+"@SqlResultSetMapping(name=\"getItem\", entities = \n"
+"        @EntityResult(entityClass=org.hibernate.ejb.test.Item.class, fields= "
+"{\n"
+"            @FieldResult(name=\"name\", column=\"itemname\"),\n"
+"            @FieldResult(name=\"descr\", column=\"itemdescription\")\n"
+"        })\n"
+")\n"
+"\n"
+"Query q = em.createNativeQuery(\"select name as itemname, descr as "
+"itemdescription from Item\", \n"
+"    \"getItem\");\n"
+"item = (Item) q.getSingleResult(); //from a resultset\n"
+"\n"
+"Query q = em.createNativeQuery(\"select * from Item\", Item.class);\n"
+"item = (Item) q.getSingleResult(); //from a class columns names match the "
+"mapping"
 
 #. Tag: para
 #: Entitymanagerapi.xml:141
@@ -500,12 +703,14 @@
 "For more information about scalar support in named queries, please refers to "
 "the Hibenate Annotations documentation"
 msgstr ""
+"named クエリ内の scalar サポートについての詳細情報には、Hibenate Annotations "
+"の ドキュメントを参照して下さい。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:148
 #, no-c-format
 msgid "Query hints"
-msgstr ""
+msgstr "クエリのヒント"
 
 #. Tag: para
 #: Entitymanagerapi.xml:149
@@ -517,42 +722,47 @@
 "(Native)Query(hints)</literal> annotation Note that these are not SQL query "
 "hints! The Hibernate EJB3 implementation offers the following query hints:"
 msgstr ""
+"クエリのヒント(通常はパフォーマンス最適化のため)は実装特定のものです。 ヒン"
+"トは <methodname>query.setHint(文字列名、オブジェクト値)</methodname>  メソッ"
+"ドを使用して宣言されるか、あるいは <literal>@Named(Native)Query(hints)</"
+"literal> アノテーションを介して宣言されます。これらは SQL ヒントではないこと"
+"に注意して下さい。Hibernate EJB3 実装は以下のような クエリヒントを提供します:"
 
 #. Tag: title
 #: Entitymanagerapi.xml:153
 #, no-c-format
 msgid "Hibernate query hints"
-msgstr ""
+msgstr "Hibernate クエリのヒント"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:159
 #, no-c-format
 msgid "Hint"
-msgstr ""
+msgstr "ヒント"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:162
 #, no-c-format
 msgid "Description"
-msgstr ""
+msgstr "説明"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:169
 #, no-c-format
 msgid "org.hibernate.timeout"
-msgstr ""
+msgstr "org.hibernate.timeout"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:172
 #, no-c-format
 msgid "Query timeout in seconds ( eg. new Integer(10) )"
-msgstr ""
+msgstr "秒数でのクエリタイムアウト(例:新規整数(10))"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:177
 #, no-c-format
 msgid "org.hibernate.fetchSize"
-msgstr ""
+msgstr "org.hibernate.fetchSize"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:180
@@ -561,12 +771,14 @@
 "Number of rows fetched by the JDBC driver per roundtrip ( eg. new Integer"
 "(50) )"
 msgstr ""
+"ラウンドトリップ毎に JDBC ドライバーによってフェッチされる列の数量(例:新規"
+"整数(50))"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:185
 #, no-c-format
 msgid "org.hibernate.comment"
-msgstr ""
+msgstr "org.hibernate.comment"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:188
@@ -575,12 +787,14 @@
 "Add a comment to the SQL query, useful for the DBA ( e.g. new String(\"fetch "
 "all orders in 1 statement\") )"
 msgstr ""
+"DBA に役に立つ コメントを SQL クエリに追加(例:新規文字列(\"fetch all "
+"orders in 1 statement\"))"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:193
 #, no-c-format
 msgid "org.hibernate.cacheable"
-msgstr ""
+msgstr "org.hibernate.cacheable"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:196
@@ -589,36 +803,38 @@
 "Whether or not a query is cacheable ( eg. new Boolean(true) ), defaults to "
 "false"
 msgstr ""
+"クエリがキャッシュ可能かどうか(例:新規ブーリアン値(true))、 デフォルトは "
+"false"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:201 Entitymanagerapi.xml:233
 #, no-c-format
 msgid "org.hibernate.cacheMode"
-msgstr ""
+msgstr "org.hibernate.cacheMode"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:204
 #, no-c-format
 msgid "Override the cache mode for this query ( eg. CacheMode.REFRESH )"
-msgstr ""
+msgstr "このクエリ用のキャッシュモードを上書き(例:CacheMode.REFRESH)"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:209
 #, no-c-format
 msgid "org.hibernate.cacheRegion"
-msgstr ""
+msgstr "org.hibernate.cacheRegion"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:212
 #, no-c-format
 msgid "Cache region of this query ( eg. new String(\"regionName\") )"
-msgstr ""
+msgstr "このクエリ用のキャッシュ領域(例:新規文字列(\"regionName\"))"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:217
 #, no-c-format
 msgid "org.hibernate.readOnly"
-msgstr ""
+msgstr "org.hibernate.readOnly"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:220
@@ -628,24 +844,27 @@
 "Hibernate will never dirty-check them or make changes persistent ( eg. new "
 "Boolean(true) ), default to false"
 msgstr ""
+"このクエリによって取り込まれた Entity は、読み込み専用でロードされて、 "
+"Hibernate は決してその不純性をチェックしたり、変更を永続化したりしません "
+"(例:新規ブーリアン値(true))、デフォルトは false"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:225
 #, no-c-format
 msgid "org.hibernate.flushMode"
-msgstr ""
+msgstr "org.hibernate.flushMode"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:228
 #, no-c-format
 msgid "Flush mode used for this query"
-msgstr ""
+msgstr "このクエリ用に使用するフラッシュモード"
 
 #. Tag: entry
 #: Entitymanagerapi.xml:236
 #, no-c-format
 msgid "Cache mode used for this query"
-msgstr ""
+msgstr "このクエリ用の使用するキャッシュモード"
 
 #. Tag: para
 #: Entitymanagerapi.xml:243
@@ -653,12 +872,13 @@
 msgid ""
 "Please refer to the Hibernate reference documentation for more information."
 msgstr ""
+"詳細情報については Hibernate のリファレンスドキュメントを参照して下さい。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:253
 #, no-c-format
 msgid "Modifying persistent objects"
-msgstr ""
+msgstr "永続化オプジェクトの修正"
 
 #. Tag: para
 #: Entitymanagerapi.xml:254
@@ -673,6 +893,13 @@
 "methodname> it, and then manipulate it directly, while the persistence "
 "context is open:"
 msgstr ""
+"トランザクション的に管理したインスタンス(entity manager によりロード済み、保"
+"存済み、作成済み、又は クエリ済みのオブジェクト)は、アプリケーションで操作で"
+"きて、永続化状態への変更はいずれも Entity manager が フラッシュされた時点で永"
+"続化されます(この章の後半で説明)。変更を永続化するのに特定のメソッドを呼び"
+"出す 必要はありません。entity インスタンスの状態を更新する簡単な方法は、"
+"<methodname>find()</methodname> を実行して、それから永続化コンテキストが開い"
+"ている間に直接それを操作することです。"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:257
@@ -682,6 +909,9 @@
 "cat.setName(\"PK\");\n"
 "em.flush();  // changes to cat are automatically detected and persisted"
 msgstr ""
+"Cat cat = em.find( Cat.class, new Long(69) );\n"
+"cat.setName(\"PK\");\n"
+"em.flush();  // changes to cat are automatically detected and persisted"
 
 #. Tag: para
 #: Entitymanagerapi.xml:258
@@ -692,12 +922,16 @@
 "state) in the same session. Therefore Hibernate offers an alternate "
 "approach, using detached instances."
 msgstr ""
+"SQL SELECT(オブジェクトロードのため)と SQL UPDATE(その更新状態を永続される"
+"ため)の 両方を同じセッション内に必要とするため、時々、このプログラミングモデ"
+"ルは不十分なことが あります。その為、Hibernate は分離されたインスタンスを使用"
+"してその代わりとなるアプローチを 提供します。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:264
 #, no-c-format
 msgid "Modifying detached objects"
-msgstr ""
+msgstr "分離したオブジェクトの修正"
 
 #. Tag: para
 #: Entitymanagerapi.xml:265
@@ -710,6 +944,12 @@
 "concurrency environment usually use versioned data to ensure isolation for "
 "the \"long\" unit of work."
 msgstr ""
+"多くのアプリケーションが1つのトランザクションでオブジェクトを取り込んで、 そ"
+"れを操作の為にプレゼンテーションレイヤーに送り、後でその変更を新しい 別のトラ"
+"ンザクションで保存する必要があります。これらの両方のトランザクションの 間には"
+"ユーザーが思考し、待つためのかなりの時間がある可能性があります。高い 並行性環"
+"境内でのこのようなアプローチを使用するアプリケーションは通常、\"長い\" 作業単"
+"位のために隔離を保証するのにバージョン化したデータを使用します。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:268
@@ -719,6 +959,9 @@
 "persistence of modifications made to detached instances using the "
 "<methodname>EntityManager.merge()</methodname> method:"
 msgstr ""
+"EJB3 使用は、この開発モデルをサポートするのに <methodname>EntityManager.merge"
+"()</methodname> メソッドを使って、作成された修正の永続化を分離されたインスタ"
+"ンスに提供します。"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:271
@@ -736,6 +979,17 @@
 "secondEntityManager.merge(cat);  // update cat\n"
 "secondEntityManager.merge(mate); // update mate"
 msgstr ""
+"// in the first entity manager\n"
+"Cat cat = firstEntityManager.find(Cat.class, catId);\n"
+"Cat potentialMate = new Cat();\n"
+"firstEntityManager.persist(potentialMate);\n"
+"\n"
+"// in a higher layer of the application\n"
+"cat.setMate(potentialMate);\n"
+"\n"
+"// later, in a new entity manager\n"
+"secondEntityManager.merge(cat);  // update cat\n"
+"secondEntityManager.merge(mate); // update mate"
 
 #. Tag: para
 #: Entitymanagerapi.xml:272
@@ -752,12 +1006,22 @@
 "using transitive persistence, see <xref linkend=\"Working_with_objects-"
 "Transitive_persistence\"/>."
 msgstr ""
+"<literal>merge()</literal> メソッドは、分離されたインスタンスになされた修正"
+"を、 永続化コンテキストがある場合にはその状態を考慮しないで、対応する管理され"
+"たインスタンスに マージします。すなわち、マージされたオブジェクトの状態は、永"
+"続化コンテキスト内に永続化 entity の状態がすでに存在する場合は、それを上書き"
+"します。アプリケーションは 個別に、アプリケーションがその状態を永続化したい場"
+"合のみに、該当する分離されたインスタンスから 到達できる分離されたインスタンス"
+"を <methodname>merge()</methodname> する必要があります。 これは、遷移的な永続"
+"化を使用して、関連付けのある entity と collection へカスケードすることが でき"
+"ます。<xref linkend=\"Working_with_objects-Transitive_persistence\"/> を参照"
+"してください。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:278
 #, no-c-format
 msgid "Automatic state detection"
-msgstr ""
+msgstr "自動状態検出"
 
 #. Tag: para
 #: Entitymanagerapi.xml:279
@@ -769,6 +1033,11 @@
 "not a detached instance) to <literal>merge()</literal>, the entity manager "
 "will figure this out for you:"
 msgstr ""
+"マージオペレーションは、分離されたインスタンスのマージングが、挿入又は更新と"
+"なる 必要があるかどうかを自動的に検出するだけの機能性を持ちます。言い替える"
+"と、ユーザーは (分離したインスタンスではない)新規のインスタンスを "
+"<literal>merge()</literal> に渡すことを 考える必要がないと言うことです。"
+"entity manager がユーザーに代わってこれを判定します:"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:282
@@ -785,6 +1054,16 @@
 "secondEntityManager.merge(cat);   // update existing state\n"
 "secondEntityManager.merge(mate);  // save the new instance"
 msgstr ""
+"// In the first entity manager\n"
+"Cat cat = firstEntityManager.find(Cat.class, catID);\n"
+"\n"
+"// In a higher layer of the application, detached\n"
+"Cat mate = new Cat();\n"
+"cat.setMate(mate);\n"
+"\n"
+"// Later, in a new entity manager\n"
+"secondEntityManager.merge(cat);   // update existing state\n"
+"secondEntityManager.merge(mate);  // save the new instance"
 
 #. Tag: para
 #: Entitymanagerapi.xml:283
@@ -796,6 +1075,11 @@
 "need to use <methodname>merge()</methodname> at all. Some whole applications "
 "will never use this method."
 msgstr ""
+"<literal>merge()</literal> の使用とセマンティクスは、慣れないユーザーには混乱"
+"し易いように 見えます。先ず、1つの entity manager にロードされたオブジェクト"
+"をもう1つの新しい entity manager で 使用する試みをしていない限りは "
+"<methodname>merge()</methodname> を使用する必要は全くありません。 一部のアプ"
+"リケーション全域は、全くこのメソッドを使用しません。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:286
@@ -803,30 +1087,32 @@
 msgid ""
 "Usually <methodname>merge()</methodname> is used in the following scenario:"
 msgstr ""
+"通常は、<methodname>merge()</methodname> は以下のようなシナリオで使用されま"
+"す:"
 
 #. Tag: para
 #: Entitymanagerapi.xml:291
 #, no-c-format
 msgid "the application loads an object in the first entity manager"
-msgstr ""
+msgstr "アプリケーションが最初の entity manager にオブジェクトをロードします"
 
 #. Tag: para
 #: Entitymanagerapi.xml:296
 #, no-c-format
 msgid "the object is passed up to the presentation layer"
-msgstr ""
+msgstr "そのオブジェクトはプレゼンテーションレイヤーへ渡されます"
 
 #. Tag: para
 #: Entitymanagerapi.xml:301
 #, no-c-format
 msgid "some modifications are made to the object"
-msgstr ""
+msgstr "そのオブジェクトにいくらかの修正がなされます"
 
 #. Tag: para
 #: Entitymanagerapi.xml:306
 #, no-c-format
 msgid "the object is passed back down to the business logic layer"
-msgstr ""
+msgstr "オブジェクトはビジネスロジックレイヤーに降ろし戻されます"
 
 #. Tag: para
 #: Entitymanagerapi.xml:311
@@ -835,12 +1121,15 @@
 "the application persists these modifications by calling <methodname>merge()</"
 "methodname> in a second entity manager"
 msgstr ""
+"アプリケーションは、2つめの entity manager 内の <methodname>merge()</"
+"methodname> を呼び込んでこれらの修正を永続化します"
 
 #. Tag: para
 #: Entitymanagerapi.xml:316
 #, no-c-format
 msgid "Here is the exact semantic of <methodname>merge()</methodname>:"
 msgstr ""
+"ここに実際の <methodname>merge()</methodname> のセマンティクスを示します:"
 
 #. Tag: para
 #: Entitymanagerapi.xml:321
@@ -850,6 +1139,9 @@
 "with the persistence context, copy the state of the given object onto the "
 "managed instance"
 msgstr ""
+"現在、永続化コンテキストと関連付けのある同じ識別子を利用する管理されたインス"
+"タンスが存在する場合は、 その該当オブジェクトの状態を管理しているインスタンス"
+"にコピーします"
 
 #. Tag: para
 #: Entitymanagerapi.xml:326
@@ -858,12 +1150,15 @@
 "if there is no managed instance currently associated with the persistence "
 "context, try to load it from the database, or create a new managed instance"
 msgstr ""
+"現在、永続化コンテキストに関連付けのある管理されたインスタンスが存在しない場"
+"合は、 データベースからそれをロードするか、あるいは、新規に管理されたインスタ"
+"ンスを作成します"
 
 #. Tag: para
 #: Entitymanagerapi.xml:331
 #, no-c-format
 msgid "the managed instance is returned"
-msgstr ""
+msgstr "管理されたインスタンスが返されます"
 
 #. Tag: para
 #: Entitymanagerapi.xml:336
@@ -872,12 +1167,14 @@
 "the given instance does not become associated with the persistence context, "
 "it remains detached and is usually discarded"
 msgstr ""
+"そのインスタンスは永続化コンテキストと関連付けされないで、分離されたままであ"
+"り、 通常は破棄されます。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:342
 #, no-c-format
 msgid "Merging vs. saveOrUpdate/saveOrUpdateCopy"
-msgstr ""
+msgstr "Merging  対  saveOrUpdate/saveOrUpdateCopy"
 
 #. Tag: para
 #: Entitymanagerapi.xml:343
@@ -889,12 +1186,17 @@
 "reattached with the persistence context, but a managed instance is returned "
 "by the <methodname>merge()</methodname> method."
 msgstr ""
+"EJB3 内のマージングはネイティブ Hibernate 内の <literal>saveOrUpdateCopy()</"
+"literal> メソッドに似ていますが、<literal>saveOrUpdate()</literal> メソッドと"
+"同じでは ありません。このインスタンスは永続化コンテキストと再接続されません"
+"が、管理された インスタンスが <methodname>merge()</methodname> メソッドにより"
+"返されます。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:350
 #, no-c-format
 msgid "Deleting managed objects"
-msgstr ""
+msgstr "管理されたオブジェクトの削除"
 
 #. Tag: para
 #: Entitymanagerapi.xml:351
@@ -906,18 +1208,23 @@
 "making a persistent instance new (aka transient) again. It is not detached, "
 "and a merge would result in an insertion."
 msgstr ""
+"<methodname>EntityManager.remove()</methodname> はデータベースからオブジェク"
+"トの 状態を削除します。もちろん、ユーザーのアプリケーションはそれでも削除され"
+"たオブジェクトへの 参照を維持することがあります。<methodname>remove()</"
+"methodname> とは、永続化インスタンスを 再度、新しくする(= 遷移的にする)こ"
+"とと考えられます。これは分離されずに、マージは結果として挿入に なります。 "
 
 #. Tag: title
 #: Entitymanagerapi.xml:357
 #, no-c-format
 msgid "Flush the persistence context"
-msgstr ""
+msgstr "永続化コンテキストのフラッシュ"
 
 #. Tag: title
 #: Entitymanagerapi.xml:359
 #, no-c-format
 msgid "In a transaction"
-msgstr ""
+msgstr "トランザクション内"
 
 #. Tag: para
 #: Entitymanagerapi.xml:360
@@ -928,12 +1235,16 @@
 "memory. This process, flush, occurs by default (this is Hibernate specific "
 "and not defined by the specification) at the following points:"
 msgstr ""
+"時には、entity manager は、 データストアをメモリー内にあるオブジェクトの状態"
+"と 同期化するのに必要となる SQL DML ステートメントを実行します。このプロセ"
+"ス、フラッシュは デフォルト(これは、Hibernate 特有で、仕様では定義はない)"
+"で、以下のポイントで発生します:"
 
 #. Tag: para
 #: Entitymanagerapi.xml:365
 #, no-c-format
 msgid "before query execution*"
-msgstr ""
+msgstr "クエリ実行前 *"
 
 #. Tag: para
 #: Entitymanagerapi.xml:370
@@ -941,24 +1252,25 @@
 msgid ""
 "from <methodname>javax.persistence.EntityTransaction.commit()*</methodname>"
 msgstr ""
+"<methodname>javax.persistence.EntityTransaction.commit()*</methodname> から"
 
 #. Tag: para
 #: Entitymanagerapi.xml:375
 #, no-c-format
 msgid "when <methodname>EntityManager.flush()</methodname> is called*"
-msgstr ""
+msgstr "<methodname>EntityManager.flush()</methodname> が呼び出される時"
 
 #. Tag: para
 #: Entitymanagerapi.xml:380
 #, no-c-format
 msgid "(*) if a transaction is active"
-msgstr ""
+msgstr "(*) トランザクションがアクティブの場合"
 
 #. Tag: para
 #: Entitymanagerapi.xml:383
 #, no-c-format
 msgid "The SQL statements are issued in the following order"
-msgstr ""
+msgstr "SQL ステートメントは以下の順序で発行されます"
 
 #. Tag: para
 #: Entitymanagerapi.xml:388
@@ -967,30 +1279,32 @@
 "all entity insertions, in the same order the corresponding objects were "
 "saved using <methodname>EntityManager.persist()</methodname>"
 msgstr ""
+"対応するオブジェクトが <methodname>EntityManager.persist()</methodname> を 使"
+"用して保存されたのと同じ順序で全ての entity の挿入"
 
 #. Tag: para
 #: Entitymanagerapi.xml:393
 #, no-c-format
 msgid "all entity updates"
-msgstr ""
+msgstr "全ての entity 更新"
 
 #. Tag: para
 #: Entitymanagerapi.xml:398
 #, no-c-format
 msgid "all collection deletions"
-msgstr ""
+msgstr "全てのコレクション削除"
 
 #. Tag: para
 #: Entitymanagerapi.xml:403
 #, no-c-format
 msgid "all collection element deletions, updates and insertions"
-msgstr ""
+msgstr "全てのコレクションエレメントの削除、更新、挿入"
 
 #. Tag: para
 #: Entitymanagerapi.xml:408
 #, no-c-format
 msgid "all collection insertions"
-msgstr ""
+msgstr "全てのコレクション挿入"
 
 #. Tag: para
 #: Entitymanagerapi.xml:413
@@ -999,6 +1313,8 @@
 "all entity deletions, in the same order the corresponding objects were "
 "deleted using <methodname>EntityManager.remove()</methodname>"
 msgstr ""
+"対応するオブジェクトが <methodname>EntityManager.remove()</methodname> を 使"
+"用して削除されたのと同じ順序で全ての entity の削除"
 
 #. Tag: para
 #: Entitymanagerapi.xml:418
@@ -1007,6 +1323,8 @@
 "(Exception: entity instances using application-assigned identifiers are "
 "inserted when they are saved.)"
 msgstr ""
+"(例外:アプリケーション割り当ての識別子を使用している entity インスタンスは "
+"それらが保存される時に挿入されます)"
 
 #. Tag: para
 #: Entitymanagerapi.xml:421
@@ -1019,6 +1337,12 @@
 "<methodname>Query.getSingleResult()</methodname> will never return stale "
 "data; nor will they return wrong data if executed in an active transaction."
 msgstr ""
+"明示的に <methodname>flush()</methodname> する時以外は、entity manager が "
+"JDBC 呼び出しを実行する時についての保証は絶対にありません。それらが実行される"
+"順番 だけです。しかし、アクティブなトランザクション内で実行された場合は、"
+"Hibernate は <methodname>Query.getResultList()</methodname>/"
+"<methodname>Query.getSingleResult()</methodname> が古くなったデータや 間違え"
+"たデータを返すことは決してないことを保証します。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:424
@@ -1030,6 +1354,11 @@
 "automatically using the explained routine unless <methodname>flush()</"
 "methodname> is called explicitly."
 msgstr ""
+"デフォルトの動作を変更してフラッシュが、より少ない頻度で発生するようにするこ"
+"とが 可能です。entity manager 用の <classname>FlushModeType</classname> は二"
+"つの 異なるモードを定義します:  コミットタイム時のみにフラッシュ、又は明示的"
+"に<methodname>flush()</methodname> が呼び出されない場合に説明されたルーチンを"
+"使用して自動的にフラッシュ。"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:427
@@ -1051,6 +1380,21 @@
 "...\n"
 "em.getTransaction().commit(); // flush occurs"
 msgstr ""
+"em = emf.createEntityManager();\n"
+"Transaction tx = em.getTransaction().begin();\n"
+"em.setFlushMode(FlushModeType.COMMIT); // allow queries to return stale "
+"state\n"
+"\n"
+"Cat izi = em.find(Cat.class, id);\n"
+"izi.setName(iznizi);\n"
+"\n"
+"// might return stale data\n"
+"em.createQuery(\"from Cat as cat left outer join cat.kittens kitten\")."
+"getResultList();\n"
+"\n"
+"// change to izi is not flushed!\n"
+"...\n"
+"em.getTransaction().commit(); // flush occurs"
 
 #. Tag: para
 #: Entitymanagerapi.xml:428
@@ -1059,6 +1403,8 @@
 "During flush, an exception might happen (e.g. if a DML operation violates a "
 "constraint). TODO: Add link to exception handling."
 msgstr ""
+"フラッシュしている間、例外が発生する可能性があります(例えば、DML オペレー"
+"ションが 制約条件に違反する場合)。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:431
@@ -1068,12 +1414,14 @@
 "specification. Please refer to the Hibernate core reference documentation "
 "for more informations."
 msgstr ""
+"Hibernate は、EJB3 仕様に説明されているものより多くのフラッシュモードを提供し"
+"ます。 詳細情報は、Hibernate コアリファレンスドキュメントでご覧下さい。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:437
 #, no-c-format
 msgid "Outside a transaction"
-msgstr ""
+msgstr "トランザクションの外部"
 
 #. Tag: para
 #: Entitymanagerapi.xml:438
@@ -1090,12 +1438,22 @@
 "transaction: <literal>flush()</literal>, <literal>lock()</literal>, and "
 "update/delete queries."
 msgstr ""
+"<literal>EXTENDED</literal> 永続化コンテキスト内では、entity manager の全て"
+"の 読み込み専用オペレーションはトランザクション(<literal>find()</literal>, "
+"<literal>getReference()</literal>, <literal>refresh()</literal>、及び読み込み"
+"クエリ)の外部で実行できます。一部の 修正オペレーションはトランザクションの外"
+"部で実行できますが、それらは永続化コンテキストが トランザクションに参入するま"
+"でキューに入ります。これが、<literal>persist()</literal>, "
+"<literal><literal>merge()</literal></literal>, <literal>remove()</literal> の"
+"ケースです。一部のオペレーションはトランザクションの外部では 呼び出しできませ"
+"ん: <literal>flush()</literal>, <literal>lock()</literal>, 及び 更新/削除クエ"
+"リ。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:446
 #, no-c-format
 msgid "Transitive persistence"
-msgstr ""
+msgstr "遷移的な永続化"
 
 #. Tag: para
 #: Entitymanagerapi.xml:447
@@ -1105,6 +1463,9 @@
 "especially if you deal with a graph of associated objects. A common case is "
 "a parent/child relationship. Consider the following example:"
 msgstr ""
+"関連したオブジェクトのグラフを扱う時には特に、個別オブジェクトの保存、 削除、"
+"あるいは再添付などはかなり手のかかることです。一般的なケースは、 親/子 関係で"
+"す。以下の例を考えてみて下さい:"
 
 #. Tag: para
 #: Entitymanagerapi.xml:450
@@ -1119,6 +1480,13 @@
 "child from the collection; Hibernate will detect this and, since value-typed "
 "objects can&#39;t have shared references, remove the child from the database."
 msgstr ""
+"親子関係の中の子が値タイプ(例えば、アドレス又は文字列の集合)の場合、 それら"
+"のライフサイクルは親に依存しており、状態変更に於ける便利なカスケーディング用"
+"には それ以上のアクションは必要ありません。親が永続化されている時、値タイプの"
+"子オブジェクトも 永続化されます。親が削除されると、子も削除されることになりま"
+"す。これは、集合から子を 削除するなどのオペレーションにも通用します。値タイプ"
+"のオブジェクトは 共有参照を 持つことができないため、Hibernate はこれを検出し"
+"て、データベースから子を削除します。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:453
@@ -1133,6 +1501,14 @@
 "reachability. It supports a more flexible model of transitive persistence, "
 "as first seen in Hibernate."
 msgstr ""
+"ここで、親と子のオブジェクトが entity であって、値タイプでない状態(例えば、"
+"カテゴリと項目、親と子の猫など)で 同じシナリオを考えてみましょう。entity は"
+"それ自身のライフサイクルを持ち、共有した参照(集合から entityを 移動するの"
+"は、削除できると言う意味にはなりません)をサポートして、デフォルトでは1つの "
+"entity から他の 関連した entity へ状態のカスケーディングはありません。EJB3 仕"
+"様は reachability (到達能力)による永続化は 必要としません。EJB3 仕様は "
+"Hibernate で最初に見られるような、遷移的永続化のより柔軟なモデルをサポート し"
+"ます。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:456
@@ -1146,18 +1522,25 @@
 "cascaded to associated entity (or collection of entities), you must indicate "
 "that in the association annotation:"
 msgstr ""
+"<methodname>persist()</methodname>, <methodname>merge()</methodname>, "
+"<methodname>remove()</methodname>, <methodname>refresh()</methodname> を 含"
+"む、entity manager のそれぞれの基本オペレーションには、それぞれに対応するカス"
+"ケードスタイルが 存在します。カスケードスタイルは PERSIST, MERGE, REMOVE, "
+"REFRESH とそれぞれ命名 されています。関連付けのある entity (又は、entity の"
+"集合)にカスケードする為のオペレーションを 持ちたい場合は、以下のようにして、"
+"関連付けのアノテーションの中でそれを示す必要があります:"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:459
 #, no-c-format
 msgid "@OneToOne(cascade=CascadeType.PERSIST)"
-msgstr ""
+msgstr "@OneToOne(cascade=CascadeType.PERSIST)"
 
 #. Tag: para
 #: Entitymanagerapi.xml:460
 #, no-c-format
 msgid "Cascading options can be combined:"
-msgstr ""
+msgstr "カスケーディングオプションは以下のように結合できます:"
 
 #. Tag: programlisting
 #: Entitymanagerapi.xml:463
@@ -1166,6 +1549,8 @@
 "@OneToOne(cascade= { CascadeType.PERSIST, CascadeType.REMOVE, CascadeType."
 "REFRESH } )"
 msgstr ""
+"@OneToOne(cascade= { CascadeType.PERSIST, CascadeType.REMOVE, CascadeType."
+"REFRESH } )"
 
 #. Tag: para
 #: Entitymanagerapi.xml:464
@@ -1175,6 +1560,9 @@
 "cascaded for a particular association. Remember that by default, no "
 "operation is cascaded."
 msgstr ""
+"CascadeType.ALL を使用することで、全てのオペレーションが特定の関連付けにカス"
+"ケードされる べきことを指定することもできます。デフォルトでは、オペレーション"
+"はカスケードされないことを 忘れないで下さい。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:467
@@ -1184,12 +1572,15 @@
 "Hibernate Annotations manual and the Hibernate reference guide for more "
 "informations."
 msgstr ""
+"Hibernate はネイティブのカスケーディングオプションをもっと提供します。詳細情"
+"報は、 Hibernate Annotations マニュアルと Hibernate リファレンスガイドでご覧"
+"下さい。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:470
 #, no-c-format
 msgid "Recommendations:"
-msgstr ""
+msgstr "推奨:"
 
 #. Tag: para
 #: Entitymanagerapi.xml:475
@@ -1200,6 +1591,10 @@
 "Cascade is often useful for <literal>@OneToOne</literal> and "
 "<literal>@OneToMany</literal> associations."
 msgstr ""
+"<literal>@ManyToOne</literal> や <literal>@ManyToMany</literal> の関連付けで "
+"カスケードを有効にすることは通常、あまり意味を持ちません。カスケードは多くの"
+"場合、 <literal>@OneToOne</literal> 及び <literal>@OneToMany</literal> の関連"
+"付けで 役に立ちます。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:480
@@ -1211,6 +1606,11 @@
 "CascadeType.DELETE_ORPHAN</literal> (please refer to the Hibernate reference "
 "guide for the semantics of orphan delete)"
 msgstr ""
+"子オブジェクトのライフスパンが、親オブジェクトのライフスパンで限界を設定 され"
+"ている場合、<literal>CascadeType.ALL</literal> と <literal>org.hibernate."
+"annotations.CascadeType.DELETE_ORPHAN</literal> を指定することにより、親を寿"
+"命いっぱいまでの オブジェクトにします。(orphan delete のセマンティクスについ"
+"ては Hibernate リファレンスガイドを 参照してください)"
 
 #. Tag: para
 #: Entitymanagerapi.xml:485
@@ -1222,12 +1622,16 @@
 "<code>cascade={PERSIST, MERGE}</code>. These options can even make sense for "
 "a many-to-many association."
 msgstr ""
+"そうでない場合は、カスケードは全く必要でないかも知れません。しかし、同じ トラ"
+"ンザクション内で親と子を一緒にして作業することが多くて、タイピング 労力をいく"
+"らか軽減したい場合は、<code>cascade={PERSIST, MERGE}</code> の 使用を考慮して"
+"下さい。このオプションは many-to-many の関連付けにさえ利便性が あります。"
 
 #. Tag: title
 #: Entitymanagerapi.xml:493
 #, no-c-format
 msgid "Locking"
-msgstr ""
+msgstr "ロッキング"
 
 #. Tag: para
 #: Entitymanagerapi.xml:494
@@ -1241,6 +1645,13 @@
 "methodname> method. Depending on the concurrency guaranties you requires, "
 "you choose a lock mode:"
 msgstr ""
+"EJB3 にあるデフォルトのロッキングシステムは多くの場合、optimistic ロッキング"
+"(例えば、 並行性問題をチェックするのにバージョンコラムを使用)をベースにして"
+"います。EJB3 は 並行性保証を増強するために追加のメカニズムを定義しています。"
+"<methodname>lock(Object entity)</methodname> メソッドを介して、任意の entity "
+"(<literal>LOCK</literal> がカスケードされている場合は その関連した entity 群"
+"も)上でロックを適用できます。必要とする並行性保証に応じて、以下のような ロッ"
+"クを選択します:"
 
 #. Tag: para
 #: Entitymanagerapi.xml:499
@@ -1249,6 +1660,8 @@
 "<literal>LockMode.READ</literal> prevents dirty-reads and non repeatable "
 "read on a given entity."
 msgstr ""
+"<literal>LockMode.READ</literal> は 任意の entity 上で不正な読み込みと 反復不"
+"可の読み込みを防止します。"
 
 #. Tag: para
 #: Entitymanagerapi.xml:504
@@ -1257,3 +1670,6 @@
 "<literal>LockMode.WRITE</literal> prevents dirty-reads and non repeatable "
 "read on a given entity and force an increase of the version number if any."
 msgstr ""
+"<literal>LockMode.WRITE</literal> は 任意の entity 上で不正な書き込みと 反復"
+"不可の書き込みを防止して、バージョン番号があれば、それを繰り上げるように 強制"
+"します。"

Added: projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Feedback.po
===================================================================
--- projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Feedback.po	                        (rev 0)
+++ projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Feedback.po	2008-08-11 03:26:42 UTC (rev 76879)
@@ -0,0 +1,46 @@
+# translation of Architecture.po to Japanese
+# Language /tmp/mike/JBEAP420/Entity translations for JBEAP package.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
+# Automatically generated, 2007.
+# Kiyoto Hashida <khashida at redhat.com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: Architecture\n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
+"POT-Creation-Date: 2008-08-11 03:22+0000\n"
+"PO-Revision-Date: 2008-08-08 11:07+1000\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Tag: title
+#: Feedback.xml:6
+#, no-c-format
+msgid "Feedback"
+msgstr "フィードバック"
+
+#. Tag: para
+#: Feedback.xml:7
+#, no-c-format
+msgid ""
+"If you spot a typo in this guide, or if you have thought of a way to make "
+"this manual better, we would love to hear from you! Submit a report in "
+"<ulink url=\"http://jira.jboss.com/jira/browse/JBPAPP\">JIRA</ulink> against "
+"the Product: JBoss Enterprise Application Platform, Version: "
+"<replaceable>&lt;version&gt;</replaceable>, Component: <emphasis>Doc</"
+"emphasis>. If you have a suggestion for improving the documentation, try to "
+"be as specific as possible. If you have found an error, include the section "
+"number and some of the surrounding text so we can find it easily."
+msgstr ""
+"このガイドで誤字や脱字を発見されたり、このマニュアルを改善する提案をお持ちの"
+"場合は、 弊社までご連絡ください。この製品: JBoss Enterprise Application "
+"Platform、バージョン: <replaceable>&lt;version&gt;</replaceable>、コンポーネ"
+"ント: <emphasis>Doc</emphasis> に 対して報告を <ulink url=\"http://jira."
+"jboss.com/jira/browse/JBPAPP\">JIRA</ulink> に提出して下さい。 ドキュメントの"
+"改善に関する提案をお持ちの場合は、できるだけ詳しく記述をして下さい。エラーを"
+"発見 された場合は、そのセクション番号と周辺の文章も含めて頂くと弊社で素早く発"
+"見できます。"

Modified: projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Listeners.po
===================================================================
--- projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Listeners.po	2008-08-11 03:18:06 UTC (rev 76878)
+++ projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Listeners.po	2008-08-11 03:26:42 UTC (rev 76879)
@@ -1,29 +1,33 @@
+# translation of Architecture.po to Japanese
 # Language /tmp/mike/JBEAP420/Entity translations for JBEAP package.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
 # Automatically generated, 2007.
-#
+# Kiyoto Hashida <khashida at redhat.com>, 2008.
 msgid ""
 msgstr ""
-"Project-Id-Version: JBEAP 420\n"
-"POT-Creation-Date: 2001-02-09 01:25+0100\n"
-"PO-Revision-Date: 2001-02-09 01:25+0100\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"Project-Id-Version: Architecture\n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
+"POT-Creation-Date: 2008-08-11 03:22+0000\n"
+"PO-Revision-Date: 2008-08-08 11:07+1000\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. Tag: title
 #: Listeners.xml:10
 #, no-c-format
 msgid "Entity listeners and Callback methods"
-msgstr ""
+msgstr "エンティティリスナ と コールバック の方法"
 
 #. Tag: title
 #: Listeners.xml:12
 #, no-c-format
 msgid "Definition"
-msgstr ""
+msgstr "定義"
 
 #. Tag: para
 #: Listeners.xml:13
@@ -34,6 +38,10 @@
 "kinds of generic functionality, and extension of built-in functionality. The "
 "EJB3 specification provides two related mechanisms for this purpose."
 msgstr ""
+"永続化メカニズム内部で発生する特定のイベントに反応するアプリケーションにとっ"
+"て 多くの場合これが役に立ちます。これを使用することにより汎用機能の一部の種類"
+"の 実装と、内蔵型機能の拡張を可能にします。EJB3 仕様はこの目的のために2つの"
+"関連した メカニズムを提供します。"
 
 #. Tag: para
 #: Listeners.xml:16
@@ -47,6 +55,14 @@
 "constructor. An entity listener is defined by annotating the entity class "
 "with the <literal>@EntityListeners</literal> annotation:"
 msgstr ""
+"このエンティティのメソッドは、特定のエンティティ ライフサイクルイベントの通知"
+"を 受信するためにコールバックメソッドとして命名してあります。コールバック メ"
+"ソッドはコールバックアノテーションによりアノテーションが付加されています。 エ"
+"ンティティ クラス内部で直接定義されているコールバックメソッドの代わりに、 エ"
+"ンティティリスナ クラスが使用されるように定義することもできます。いずれの エ"
+"ンティティリスナ も 引数なしのコンストラクタを利用するステートレスクラスで"
+"す。 エンティティリスナ は、エンティティクラスを <literal>@EntityListeners</"
+"literal> アノテーションでアノテーションを付加することにより定義します:"
 
 #. Tag: programlisting
 #: Listeners.xml:19
@@ -93,6 +109,46 @@
 "    }\n"
 "}"
 msgstr ""
+"@Entity \n"
+"@EntityListeners(class=Audit.class)\n"
+"public class Cat {\n"
+"    @Id private Integer id;\n"
+"    private String name;\n"
+"    private Calendar dateOfBirth;\n"
+"    @Transient private int age;\n"
+"    private Date lastUpdate;\n"
+"    //getters and setters\n"
+"\n"
+"    /**\n"
+"     * Set my transient property at load time based on a calculation,\n"
+"     * note that a native Hibernate formula mapping is better for this "
+"purpose.\n"
+"     */\n"
+"    @PostLoad\n"
+"    public void calculateAge() {\n"
+"        Calendar birth = new GregorianCalendar();\n"
+"        birth.setTime(dateOfBirth);\n"
+"        Calendar now = new GregorianCalendar();\n"
+"        now.setTime( new Date() );\n"
+"        int adjust = 0;\n"
+"        if ( now.get(Calendar.DAY_OF_YEAR) - birth.get(Calendar.DAY_OF_YEAR) "
+"&lt; 0) {\n"
+"            adjust = -1;\n"
+"        }\n"
+"        age = now.get(Calendar.YEAR) - birth.get(Calendar.YEAR) + adjust;\n"
+"    }\n"
+"}\n"
+"\n"
+"public class LastUpdateListener {\n"
+"    /**\n"
+"     * automatic property set before any database persistence\n"
+"     */\n"
+"    @PreUpdate\n"
+"    @PrePersist\n"
+"    public void setLastUpdate(Cat o) {\n"
+"        o.setLastUpdate( new Date() );\n"
+"    }\n"
+"}"
 
 #. Tag: para
 #: Listeners.xml:20
@@ -109,6 +165,17 @@
 "Object</literal> type (allowing sharing of listeners accross several "
 "entities.)"
 msgstr ""
+"同じコールバックメソッドか エンティティリスナ メソッドが複数のコールバック ア"
+"ノテーションでアノテーションを付加できます。任意の エンティティ には、それが"
+"コールバック メソッドであろうとエンティティリスナメソッドであろうと、同じコー"
+"ルバックアノテーションで 2つのメソッドをアノテーション付加することはできませ"
+"ん。コールバックメソッドは、 リターンタイプがなく、任意の名前を持つ 引数なし"
+"のメソッドです。エンティティリスナ は シグネチャ <code>void &lt;METHOD&gt;"
+"(Object)</code> を持っており、ここで Object とは、 実際のエンティティ タイプ"
+"のことです。( Hibernate Entity Manager はこの制約を緩めて、 <literal>java."
+"lang.Object</literal> タイプの <literal>Object</literal> を許可することに 注"
+"意してください。 いくつかの エンティティ 群全体に渡ってリスナ の共有が可能に"
+"なります。)"
 
 #. Tag: para
 #: Listeners.xml:23
@@ -118,30 +185,33 @@
 "current transaction, if any, must be rolled back. The following callbacks "
 "are defined:"
 msgstr ""
+"コールバックメソッドは <classname>RuntimeException</classname> を立ち上げま"
+"す。 現在のトランザクションがある場合、それはロールバックされる必要がありま"
+"す。以下の コールバックは次のように定義されています:"
 
 #. Tag: title
 #: Listeners.xml:27
 #, no-c-format
 msgid "Callbacks"
-msgstr ""
+msgstr "コールバック"
 
 #. Tag: entry
 #: Listeners.xml:33
 #, no-c-format
 msgid "Type"
-msgstr ""
+msgstr "タイプ"
 
 #. Tag: entry
 #: Listeners.xml:36
 #, no-c-format
 msgid "Description"
-msgstr ""
+msgstr "説明"
 
 #. Tag: entry
 #: Listeners.xml:43
 #, no-c-format
 msgid "@PrePersist"
-msgstr ""
+msgstr "@PrePersist"
 
 #. Tag: entry
 #: Listeners.xml:46
@@ -150,12 +220,15 @@
 "Executed before the entity manager persist operation is actually executed or "
 "cascaded. This call is synchronous with the persist operation."
 msgstr ""
+"エンティティマネージャ の永続化オペレーションが実際に実行されるか、キャスケー"
+"ドされる 前に実行されます。この呼び出しは永続化オペレーションと同期化していま"
+"す。 "
 
 #. Tag: entry
 #: Listeners.xml:51
 #, no-c-format
 msgid "@PreRemove"
-msgstr ""
+msgstr "@PreRemove"
 
 #. Tag: entry
 #: Listeners.xml:54
@@ -164,12 +237,15 @@
 "Executed before the entity manager remove operation is actually executed or "
 "cascaded. This call is synchronous with the remove operation."
 msgstr ""
+"エンティティマネージャの remove オペレーションが実際に実行されるか、キャス"
+"ケード される前に、実行されます。この呼び出しは remove オペレーションと同期化"
+"しています。"
 
 #. Tag: entry
 #: Listeners.xml:59
 #, no-c-format
 msgid "@PostPersist"
-msgstr ""
+msgstr "@PostPersist"
 
 #. Tag: entry
 #: Listeners.xml:62
@@ -178,12 +254,15 @@
 "Executed after the entity manager persist operation is actually executed or "
 "cascaded. This call is invoked after the database INSERT is executed."
 msgstr ""
+"エンティティマネージャの永続化オペレーションが実際に実行されるか、キャスケー"
+"ド された後で、実行されます。この呼び出しはデータベース  INSERT が実行された"
+"後で 呼び出されます。"
 
 #. Tag: entry
 #: Listeners.xml:67
 #, no-c-format
 msgid "@PostRemove"
-msgstr ""
+msgstr "@PostRemove"
 
 #. Tag: entry
 #: Listeners.xml:70
@@ -192,36 +271,39 @@
 "Executed after the entity manager remove operation is actually executed or "
 "cascaded. This call is synchronous with the remove operation."
 msgstr ""
+"エンティティマネージャの remove オペレーションが実際に実行されるか、キャス"
+"ケード された後に、実行されます。この呼び出しは remove オペレーションと同期化"
+"しています。"
 
 #. Tag: entry
 #: Listeners.xml:75
 #, no-c-format
 msgid "@PreUpdate"
-msgstr ""
+msgstr "@PreUpdate"
 
 #. Tag: entry
 #: Listeners.xml:78
 #, no-c-format
 msgid "Executed before the database UPDATE operation."
-msgstr ""
+msgstr "データベースの UPDATE オペレーション前に実行されます。"
 
 #. Tag: entry
 #: Listeners.xml:83
 #, no-c-format
 msgid "@PostUpdate"
-msgstr ""
+msgstr "@PostUpdate"
 
 #. Tag: entry
 #: Listeners.xml:86
 #, no-c-format
 msgid "Executed after the database UPDATE operation."
-msgstr ""
+msgstr "データベースの UPDATE オペレーション後に実行されます。"
 
 #. Tag: entry
 #: Listeners.xml:91
 #, no-c-format
 msgid "@PostLoad"
-msgstr ""
+msgstr "@PostLoad"
 
 #. Tag: entry
 #: Listeners.xml:94
@@ -230,6 +312,8 @@
 "Eexecuted after an entity has been loaded into the current persistence "
 "context or an entity has been refreshed."
 msgstr ""
+"エンティティが現在の永続化コンテキストにロードされるか、あるいはエンティティ"
+"が リフレッシュされた後に実行されます。"
 
 #. Tag: para
 #: Listeners.xml:101
@@ -238,12 +322,14 @@
 "A callback method must not invoke <classname>EntityManager</classname> or "
 "<classname>Query</classname> methods!"
 msgstr ""
+"コールバックメソッドは <classname>EntityManager</classname>、又は "
+"<classname>Query</classname> メソッドを呼び出すべきではありません。"
 
 #. Tag: title
 #: Listeners.xml:107
 #, no-c-format
 msgid "Callbacks and listeners inheritance"
-msgstr ""
+msgstr "コールバック と リスナ の継承"
 
 #. Tag: para
 #: Listeners.xml:108
@@ -254,12 +340,16 @@
 "hierarchy. But you cannot define two listeners for the same event in the "
 "same entity or the same entity listener."
 msgstr ""
+"エンティティ毎にいくつかの エンティティリスナ を階層の異なるレベルで定義する"
+"ことが できます。また、いくつかのコールバックを階層の異なるレベルで定義するこ"
+"とも できます。しかし、二つのリスナ を同じエンティティ内、 又は同じエンティ"
+"ティリスナ 内の 同じイベント用に定義することは出来ません。"
 
 #. Tag: para
 #: Listeners.xml:111
 #, no-c-format
 msgid "When an event is raised, the listeners are executed in this order:"
-msgstr ""
+msgstr "イベントがあがると、以下の順序でリスナが実行されます:"
 
 #. Tag: para
 #: Listeners.xml:116
@@ -268,30 +358,32 @@
 "<literal>@EntityListeners</literal> for a given entity or superclass in the "
 "array order"
 msgstr ""
+"任意のエンティティ又はスーパークラスの <literal>@EntityListeners</literal> 内"
+"での出現順"
 
 #. Tag: para
 #: Listeners.xml:121
 #, no-c-format
 msgid "Entity listeners for the superclasses (highest first)"
-msgstr ""
+msgstr "スーパークラス(最初に最上位クラス)用のエンティティリスナ"
 
 #. Tag: para
 #: Listeners.xml:126
 #, no-c-format
 msgid "Entity Listeners for the entity"
-msgstr ""
+msgstr "エンティティ用のエンティティリスナ"
 
 #. Tag: para
 #: Listeners.xml:131
 #, no-c-format
 msgid "Callbacks of the superclasses (highest first)"
-msgstr ""
+msgstr "スーパークラス(最初に最上位クラス)のコールバック"
 
 #. Tag: para
 #: Listeners.xml:136
 #, no-c-format
 msgid "Callbacks of the entity"
-msgstr ""
+msgstr "エンティティ の コールバック"
 
 #. Tag: para
 #: Listeners.xml:141
@@ -301,12 +393,15 @@
 "<literal>@ExcludeSuperclassListeners</literal>, all superclasses "
 "<literal>@EntityListeners</literal> will then be ignored."
 msgstr ""
+"エンティティリスナの継承は、<literal>@ExcludeSuperclassListeners</literal> "
+"を 使用することで停止できて、全てのスーパークラスの "
+"<literal>@EntityListeners</literal> は その後、無視されます。"
 
 #. Tag: title
 #: Listeners.xml:147
 #, no-c-format
 msgid "XML definition"
-msgstr ""
+msgstr "XML の定義"
 
 #. Tag: para
 #: Listeners.xml:148
@@ -316,6 +411,8 @@
 "descriptor. There is also an additional feature that can be useful: default "
 "event listeners."
 msgstr ""
+"EJB3 仕様により、EJB3 デプロイメント記述子を介してアノテーション上書きが 可能"
+"になります。また、役に立つ他の機能もあります: デフォルトのイベントリスナ"
 
 #. Tag: programlisting
 #: Listeners.xml:151
@@ -352,6 +449,36 @@
 "    &lt;/entity&gt;\n"
 "&lt;/entity-mappings&gt;"
 msgstr ""
+"&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n"
+"\n"
+"&lt;entity-mappings xmlns=\"http://java.sun.com/xml/ns/persistence/orm\"\n"
+"                 xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"
+"                 xsi:schemaLocation=\"http://java.sun.com/xml/ns/persistence/"
+"orm orm_1_0.xsd\"\n"
+"                 version=\"1.0\"\n"
+"        &gt;\n"
+"    &lt;persistence-unit-metadata&gt;\n"
+"        &lt;persistence-unit-defaults&gt;\n"
+"            &lt;entity-listeners&gt;\n"
+"                &lt;entity-listener class=\"org.hibernate.ejb.test.pack."
+"defaultpar.IncrementListener\"&gt;\n"
+"                    &lt;pre-persist method-name=\"increment\"/&gt;\n"
+"                &lt;/entity-listener&gt;\n"
+"            &lt;/entity-listeners&gt;\n"
+"        &lt;/persistence-unit-defaults&gt;\n"
+"    &lt;/persistence-unit-metadata&gt;\n"
+"    &lt;package&gt;org.hibernate.ejb.test.pack.defaultpar&lt;/package&gt;\n"
+"    &lt;entity class=\"ApplicationServer\"&gt;\n"
+"        &lt;entity-listeners&gt;\n"
+"            &lt;entity-listener class=\"OtherIncrementListener\"&gt;\n"
+"                &lt;pre-persist method-name=\"increment\"/&gt;\n"
+"            &lt;/entity-listener&gt;\n"
+"        &lt;/entity-listeners&gt;\n"
+"\n"
+"\n"
+"        &lt;pre-persist method-name=\"calculate\"/&gt;\n"
+"    &lt;/entity&gt;\n"
+"&lt;/entity-mappings&gt;"
 
 #. Tag: para
 #: Listeners.xml:152
@@ -362,6 +489,10 @@
 "call. You can also define event on the entity itself to describe the "
 "callbacks."
 msgstr ""
+"任意の エンティティ 上で エンティティリスナ 群を上書きすることができます。 1"
+"つのエンティティリスナ が1つの任意クラスに対応します。そして単数または、 複"
+"数イベントが任意メソッドを呼び出します。エンティティ 自身上でイベントを 定義"
+"して、コールバックを記述することもできます。"
 
 #. Tag: para
 #: Listeners.xml:155
@@ -373,3 +504,8 @@
 "default listeners, you can use @ExcludeDefaultListeners (or &lt;exclude-"
 "default-listeners/&gt;)."
 msgstr ""
+"最後になりますが、任意の永続化ユニットの全てのマップ済みエンティティの エン"
+"ティティリスナスタック上で最初に適用されるいくつかのデフォルトエンティティリ"
+"スナを 定義することができます。エンティティ がデフォルトのリスナを継承するこ"
+"とを希望しない 場合は、@ExcludeDefaultListeners (又は &lt;exclude-default-"
+"listeners/&gt;) を 使用することができます。"

Modified: projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Query_ejbql.po
===================================================================
--- projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Query_ejbql.po	2008-08-11 03:18:06 UTC (rev 76878)
+++ projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Query_ejbql.po	2008-08-11 03:26:42 UTC (rev 76879)
@@ -1,23 +1,27 @@
+# translation of Architecture.po to Japanese
 # Language /tmp/mike/JBEAP420/Entity translations for JBEAP package.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
 # Automatically generated, 2007.
-#
+# Kiyoto Hashida <khashida at redhat.com>, 2008.
 msgid ""
 msgstr ""
-"Project-Id-Version: JBEAP 420\n"
-"POT-Creation-Date: 2001-02-09 01:25+0100\n"
-"PO-Revision-Date: 2001-02-09 01:25+0100\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"Project-Id-Version: Architecture\n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
+"POT-Creation-Date: 2008-08-11 03:22+0000\n"
+"PO-Revision-Date: 2008-08-08 11:07+1000\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. Tag: title
 #: Query_ejbql.xml:10
 #, no-c-format
 msgid "EJB-QL: The Object Query Language"
-msgstr ""
+msgstr "EJB-QL: オブジェクトクエリ言語"
 
 #. Tag: para
 #: Query_ejbql.xml:11
@@ -30,12 +34,18 @@
 "HQL queries. Portable EJB3 applications however should stick to EJB-QL or "
 "similar vendor extensions are needed."
 msgstr ""
+"EJB3-QL はネイティブの Hibernate クエリ言語である HQL から多大な影響を受けて"
+"きました。したがって、両方とも非常に SQL に似ていますが、移植可能であり、デー"
+"タベーススキーマから独立しています。HQL の知識があるユーザーは EJB-QL を使用"
+"するのに問題がないはずです。実際には、EJB-QL クエリと HQL クエリでは同じクエ"
+"リ API を使用します。ただし、移植可能な EJB3 アプリケーションでは EJB-QL を使"
+"用すべきです。さもないと、類似のベンダー拡張が必要になります。"
 
 #. Tag: title
 #: Query_ejbql.xml:14
 #, no-c-format
 msgid "Case Sensitivity"
-msgstr ""
+msgstr "大文字と小文字の区別"
 
 #. Tag: para
 #: Query_ejbql.xml:15
@@ -47,6 +57,12 @@
 "eg.FOO</literal> is not <literal>org.hibernate.eg.Foo</literal> and "
 "<literal>foo.barSet</literal> is not <literal>foo.BARSET</literal>."
 msgstr ""
+"クエリでは大文字と小文字を区別します(Java クラスとプロパティの名前を除く)。し"
+"たがって、<literal>SeLeCT</literal> は  <literal>sELEct</literal> または "
+"<literal>SELECT</literal> と同じですが、<literal>org.hibernate.eg.FOO</"
+"literal> は <literal>org.hibernate.eg.Foo</literal> と同じではなく、"
+"<literal>foo.barSet</literal> は <literal>foo.BARSET</literal> と同じではあり"
+"ません。"
 
 #. Tag: para
 #: Query_ejbql.xml:18
@@ -56,24 +72,27 @@
 "uppercase keywords more readable, but we find this convention ugly when "
 "embedded in Java code."
 msgstr ""
+"このマニュアルでは、小文字の EJBQL キーワードを使用します。ユーザーによっては"
+"大文字のキーワードの方が見やすいかもしれませんが、Java コードで使用したときに"
+"大文字だと見栄えがよくないと判断しました。"
 
 #. Tag: title
 #: Query_ejbql.xml:21
 #, no-c-format
 msgid "The from clause"
-msgstr ""
+msgstr "from 節"
 
 #. Tag: para
 #: Query_ejbql.xml:22
 #, no-c-format
 msgid "The simplest possible EJB-QL query is of the form:"
-msgstr ""
+msgstr "最も単純な EJB-QL クエリは以下のとおりです。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:25
 #, no-c-format
 msgid "select c from eg.Cat c"
-msgstr ""
+msgstr "select c from eg.Cat c"
 
 #. Tag: para
 #: Query_ejbql.xml:26
@@ -85,12 +104,17 @@
 "the unqualified class name (<literal>@Entity</literal>). So we almost always "
 "just write:"
 msgstr ""
+"これにより、クラス <literal>eg.Cat</literal> のすべてのインスタンスが返されま"
+"す。HQL とは異なり、EJB-QL では select 節はオプションです。エンティティ名がデ"
+"フォルトで非修飾クラス名 (<literal>@Entity</literal>) に設定されるため、通常"
+"はクラス名を修飾する必要がありません。したがって、ほとんどいつでも以下のよう"
+"に記述します。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:29
 #, no-c-format
 msgid "select c from Cat c"
-msgstr ""
+msgstr "select c from Cat c"
 
 #. Tag: para
 #: Query_ejbql.xml:30
@@ -100,12 +124,15 @@
 "literal> keywork is optional. An alias allows you to refer to <literal>Cat</"
 "literal> in other parts of the query."
 msgstr ""
+"気付いたかもしれませんが、クラスにはエイリアスを割り当てることができます "
+"(<literal>as</literal> キーワードはオプションです)。エイリアスを使用すること"
+"によりクエリの他の部分で <literal>Cat</literal> を参照できるようになります。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:33 Query_ejbql.xml:163
 #, no-c-format
 msgid "select cat from Cat as cat"
-msgstr ""
+msgstr "select cat from Cat as cat"
 
 #. Tag: para
 #: Query_ejbql.xml:34
@@ -113,13 +140,13 @@
 msgid ""
 "Multiple classes may appear, resulting in a cartesian product or \"cross\" "
 "join."
-msgstr ""
+msgstr "複数のクラスが現れ、直積または「クロス」結合となる場合があります。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:37
 #, no-c-format
 msgid "select form, param from Formula as form, Parameter as param"
-msgstr ""
+msgstr "select form, param from Formula as form, Parameter as param"
 
 #. Tag: para
 #: Query_ejbql.xml:38
@@ -129,12 +156,15 @@
 "lowercase, consistent with Java naming standards for local variables (eg. "
 "<literal>domesticCat</literal>)."
 msgstr ""
+"イニシャル小文字を使用してクエリエイリアスに名前を付けることは、ローカル変数 "
+"(<literal>domesticCat</literal> など) の Java 命名規則と一致するため良い慣習"
+"だと考えられています。"
 
 #. Tag: title
 #: Query_ejbql.xml:41
 #, no-c-format
 msgid "Associations and joins"
-msgstr ""
+msgstr "関連付けと join"
 
 #. Tag: para
 #: Query_ejbql.xml:42
@@ -143,6 +173,8 @@
 "You may also assign aliases to associated entities, or even to elements of a "
 "collection of values, using a <literal>join</literal>."
 msgstr ""
+"<literal>join</literal> を使用すると、関連付けられたエンティティまたは値の集"
+"まりの要素にもエイリアスを割り当てることができます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:45
@@ -152,30 +184,33 @@
 "    inner join cat.mate as mate\n"
 "    left outer join cat.kittens as kitten"
 msgstr ""
+"select cat, mate, kitten from Cat as cat \n"
+"    inner join cat.mate as mate\n"
+"    left outer join cat.kittens as kitten"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:46
 #, no-c-format
 msgid "select cat from Cat as cat left join cat.mate.kittens as kittens"
-msgstr ""
+msgstr "select cat from Cat as cat left join cat.mate.kittens as kittens"
 
 #. Tag: para
 #: Query_ejbql.xml:47
 #, no-c-format
 msgid "The supported join types are borrowed from ANSI SQL"
-msgstr ""
+msgstr "サポートされる join の種類は ANSI SQL に基づいています。"
 
 #. Tag: literal
 #: Query_ejbql.xml:53
 #, no-c-format
 msgid "inner join"
-msgstr ""
+msgstr "inner join"
 
 #. Tag: literal
 #: Query_ejbql.xml:58
 #, no-c-format
 msgid "left outer join"
-msgstr ""
+msgstr "left outer join"
 
 #. Tag: para
 #: Query_ejbql.xml:62
@@ -184,6 +219,8 @@
 "The <literal>inner join</literal>, <literal>left outer join</literal> "
 "constructs may be abbreviated."
 msgstr ""
+"<literal>inner join</literal> と <literal>left outer join</literal> の構文は"
+"短縮できます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:65
@@ -193,6 +230,9 @@
 "    join cat.mate as mate\n"
 "    left join cat.kittens as kitten"
 msgstr ""
+"select cat, mate, kitten from Cat as cat \n"
+"    join cat.mate as mate\n"
+"    left join cat.kittens as kitten"
 
 #. Tag: para
 #: Query_ejbql.xml:66
@@ -205,6 +245,11 @@
 "metadata. See the Performance chapter of the Hibernate reference guide for "
 "more information."
 msgstr ""
+"また、「フェッチ」結合により、単独の select を使用して値の関連付けまたは集ま"
+"りをその親オブジェクトとともに初期化できるようになります。これは、特にコレク"
+"ションの場合に役に立ち、実質的に関連付けとコレクションのマッピングメタデータ"
+"のフェッチオプションよりも優先されることなります。詳細については、Hibernate "
+"リファレンスガイドの「パフォーマンス」の章を参照してください。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:69
@@ -214,6 +259,9 @@
 "    inner join fetch cat.mate\n"
 "    left join fetch cat.kittens"
 msgstr ""
+"select cat from Cat as cat \n"
+"    inner join fetch cat.mate\n"
+"    left join fetch cat.kittens"
 
 #. Tag: para
 #: Query_ejbql.xml:70
@@ -226,6 +274,12 @@
 "object. The only reason we might need an alias is if we are recursively join "
 "fetching a further collection:"
 msgstr ""
+"関連付けられたオブジェクトは <literal>where</literal> 節 (またはその他の節) "
+"で使用すべきでないためフェッチ結合は通常エイリアスを割り当てる必要がありませ"
+"ん。また、関連付けられたオブジェクトはクエリ結果で直接返されません。代わり"
+"に、これらのオブジェクトには親オブジェクトからアクセスできます。エイリアスが"
+"必要になることがあるのはコレクションをさらに再帰的に join フェッチする場合で"
+"す。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:73
@@ -236,6 +290,10 @@
 "    left join fetch cat.kittens child\n"
 "    left join fetch child.kittens"
 msgstr ""
+"select cat from Cat as cat \n"
+"    inner join fetch cat.mate\n"
+"    left join fetch cat.kittens child\n"
+"    left join fetch child.kittens"
 
 #. Tag: para
 #: Query_ejbql.xml:74
@@ -251,6 +309,15 @@
 "collection roles also sometimes gives unexpected results for bag mappings, "
 "so be careful about how you formulate your queries in this case."
 msgstr ""
+"<literal>fetch</literal> 構文は <literal>scroll()</literal> または "
+"<literal>iterate()</literal> を使用して呼び出されたクエリで使用できないことに"
+"注意してください。また、<literal>fetch</literal> は <literal>setMaxResults()"
+"</literal> または <literal>setFirstResult()</literal> とともに使用できませ"
+"ん。クエリの複数のコレクションに対して join フェッチを実行して直積を作成でき"
+"ます (上記の例のように)。この積の結果が予想したものよりも大きくないことに注意"
+"してください。また、複数のコレクションロールに対して join フェッチを実行する"
+"と Bag のマッピングで予期しない結果が生じることがあります。したがって、この場"
+"合にはクエリの書式に注意してください。"
 
 #. Tag: para
 #: Query_ejbql.xml:77
@@ -259,7 +326,7 @@
 "TODO: The last statement is useless and typical developer thinking, please "
 "elaborate. The word \"sometimes\" should never appear in any technical "
 "documentation."
-msgstr ""
+msgstr "  "
 
 #. Tag: para
 #: Query_ejbql.xml:80
@@ -270,12 +337,16 @@
 "properties immediately (in the first query) using <literal>fetch all "
 "properties</literal>. This is Hibernate specific option:"
 msgstr ""
+"プロパティレベルの遅延フェッチを (バイトコード書き換え操作で) 使用している場"
+"合は、<literal>fetch all properties</literal> を使用して Hibernate が遅延プロ"
+"パティをすぐに (最初のクエリ) フェッチするよう強制できます。これは Hibernate "
+"固有のオプションです。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:83
 #, no-c-format
 msgid "select doc from Document doc fetch all properties order by doc.name"
-msgstr ""
+msgstr "select doc from Document doc fetch all properties order by doc.name"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:84
@@ -284,12 +355,14 @@
 "select doc from Document doc fetch all properties where lower(doc.name) like "
 "&#39;%cats%&#39;"
 msgstr ""
+"select doc from Document doc fetch all properties where lower(doc.name) like "
+"&#39;%cats%&#39;"
 
 #. Tag: title
 #: Query_ejbql.xml:85
 #, no-c-format
 msgid "The select clause"
-msgstr ""
+msgstr "select 節"
 
 #. Tag: para
 #: Query_ejbql.xml:86
@@ -298,6 +371,8 @@
 "The <literal>select</literal> clause picks which objects and properties to "
 "return in the query result set. Consider:"
 msgstr ""
+"<literal>select</literal> 節を指定すると、クエリ結果のセットで返されるオブ"
+"ジェクトとプロパティが取得されます。以下の場合を考えてみてください。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:89
@@ -307,6 +382,9 @@
 "from Cat as cat \n"
 "    inner join cat.mate as mate"
 msgstr ""
+"select mate \n"
+"from Cat as cat \n"
+"    inner join cat.mate as mate"
 
 #. Tag: para
 #: Query_ejbql.xml:90
@@ -315,12 +393,14 @@
 "The query will select <literal>mate</literal>s of other <literal>Cat</"
 "literal>s. Actually, you may express this query more compactly as:"
 msgstr ""
+"クエリは他の <literal>Cat</literal> の <literal>mate</literal> を選択します。"
+"実際にはこのクエリを以下のように短縮して表すことができます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:93
 #, no-c-format
 msgid "select cat.mate from Cat cat"
-msgstr ""
+msgstr "select cat.mate from Cat cat"
 
 #. Tag: para
 #: Query_ejbql.xml:94
@@ -329,6 +409,8 @@
 "Queries may return properties of any value type including properties of "
 "component type:"
 msgstr ""
+"クエリはコンポーネントタイプのプロパティを含むどんな値タイプのプロパティでも"
+"返すことができます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:97
@@ -337,12 +419,14 @@
 "select cat.name from DomesticCat cat\n"
 "where cat.name like &#39;fri%&#39;"
 msgstr ""
+"select cat.name from DomesticCat cat\n"
+"where cat.name like &#39;fri%&#39;"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:98
 #, no-c-format
 msgid "select cust.name.firstName from Customer as cust"
-msgstr ""
+msgstr "select cust.name.firstName from Customer as cust"
 
 #. Tag: para
 #: Query_ejbql.xml:99
@@ -351,6 +435,8 @@
 "Queries may return multiple objects and/or properties as an array of type "
 "<literal>Object[]</literal>,"
 msgstr ""
+"クエリはタイプ <literal>Object[]</literal> の配列として複数のオプションまたは"
+"プロパティを返すことができます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:102
@@ -361,12 +447,18 @@
 "    inner join mother.mate as mate\n"
 "    left outer join mother.kittens as offspr"
 msgstr ""
+"select mother, offspr, mate.name \n"
+"from DomesticCat as mother\n"
+"    inner join mother.mate as mate\n"
+"    left outer join mother.kittens as offspr"
 
 #. Tag: para
 #: Query_ejbql.xml:103
 #, no-c-format
 msgid "or as a <literal>List</literal> (HQL specific feature)"
 msgstr ""
+"または、以下のように <literal>List</literal> (HQL 固有の機能) として返すこと"
+"ができます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:106
@@ -377,12 +469,18 @@
 "    inner join mother.mate as mate\n"
 "    left outer join mother.kittens as offspr"
 msgstr ""
+"select new list(mother, offspr, mate.name)\n"
+"from DomesticCat as mother\n"
+"    inner join mother.mate as mate\n"
+"    left outer join mother.kittens as offspr"
 
 #. Tag: para
 #: Query_ejbql.xml:107
 #, no-c-format
 msgid "or as an actual typesafe Java object,"
 msgstr ""
+"または、以下のように実際の typesafe Java オブジェクトとして返すことができま"
+"す。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:110
@@ -393,6 +491,10 @@
 "    join mother.mate as mate\n"
 "    left join mother.kittens as offspr"
 msgstr ""
+"select new Family(mother, mate, offspr)\n"
+"from DomesticCat as mother\n"
+"    join mother.mate as mate\n"
+"    left join mother.kittens as offspr"
 
 #. Tag: para
 #: Query_ejbql.xml:111
@@ -401,6 +503,8 @@
 "assuming that the class <literal>Family</literal> has an appropriate "
 "constructor."
 msgstr ""
+"クラス <literal>Family</literal> が適切なコンストラクタを持っていることを前提"
+"とします。"
 
 #. Tag: para
 #: Query_ejbql.xml:114
@@ -408,6 +512,8 @@
 msgid ""
 "You may assign aliases to selected expressions using <literal>as</literal>:"
 msgstr ""
+"<literal>as</literal> を使用して選択された式にエイリアスを割り当てることがで"
+"きます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:117
@@ -416,6 +522,8 @@
 "select max(bodyWeight) as max, min(bodyWeight) as min, count(*) as n\n"
 "from Cat cat"
 msgstr ""
+"select max(bodyWeight) as max, min(bodyWeight) as min, count(*) as n\n"
+"from Cat cat"
 
 #. Tag: para
 #: Query_ejbql.xml:118
@@ -424,6 +532,8 @@
 "This is most useful when used together with <literal>select new map</"
 "literal> (HQL specific feature):"
 msgstr ""
+"これは、<literal>select new map</literal> (HQL 固有の機能) とともに使用すると"
+"きに最も有効的です。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:121
@@ -433,6 +543,9 @@
 "n )\n"
 "from Cat cat"
 msgstr ""
+"select new map( max(bodyWeight) as max, min(bodyWeight) as min, count(*) as "
+"n )\n"
+"from Cat cat"
 
 #. Tag: para
 #: Query_ejbql.xml:122
@@ -440,19 +553,21 @@
 msgid ""
 "This query returns a <literal>Map</literal> from aliases to selected values."
 msgstr ""
+"このクエリは選択された値に対するエイリアスから <literal>Map</literal> を返し"
+"ます。"
 
 #. Tag: title
 #: Query_ejbql.xml:125
 #, no-c-format
 msgid "Aggregate functions"
-msgstr ""
+msgstr "集約関数"
 
 #. Tag: para
 #: Query_ejbql.xml:126
 #, no-c-format
 msgid ""
 "HQL queries may even return the results of aggregate functions on properties:"
-msgstr ""
+msgstr "HQL クエリは、集約関数の結果をプロパティに返すこともできます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:129
@@ -461,12 +576,14 @@
 "select avg(cat.weight), sum(cat.weight), max(cat.weight), count(cat)\n"
 "from Cat cat"
 msgstr ""
+"select avg(cat.weight), sum(cat.weight), max(cat.weight), count(cat)\n"
+"from Cat cat"
 
 #. Tag: para
 #: Query_ejbql.xml:130
 #, no-c-format
 msgid "The supported aggregate functions are"
-msgstr ""
+msgstr "サポートされている集約関数は以下のとおりです。"
 
 #. Tag: literal
 #: Query_ejbql.xml:136
@@ -474,18 +591,19 @@
 msgid ""
 "avg(...), avg(distinct ...), sum(...), sum(distinct ...), min(...), max(...)"
 msgstr ""
+"avg(...), avg(distinct ...), sum(...), sum(distinct ...), min(...), max(...)"
 
 #. Tag: literal
 #: Query_ejbql.xml:141
 #, no-c-format
 msgid "count(*)"
-msgstr ""
+msgstr "count(*)"
 
 #. Tag: literal
 #: Query_ejbql.xml:146
 #, no-c-format
 msgid "count(...), count(distinct ...), count(all...)"
-msgstr ""
+msgstr "count(...), count(distinct ...), count(all...)"
 
 #. Tag: para
 #: Query_ejbql.xml:150
@@ -495,6 +613,8 @@
 "functions in the select clause (dpending on configured dialect, HQL specific "
 "feature):"
 msgstr ""
+"select 節では算術演算子、連結、主な SQL 関数を使用できます (設定されたダイア"
+"レクト、HQL 固有の機能に応じます)。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:153
@@ -505,6 +625,10 @@
 "    join cat.kittens kitten\n"
 "group by cat.id, cat.weight"
 msgstr ""
+"select cat.weight + sum(kitten.weight) \n"
+"from Cat cat \n"
+"    join cat.kittens kitten\n"
+"group by cat.id, cat.weight"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:154
@@ -513,6 +637,8 @@
 "select firstName||&#39; &#39;||initial||&#39; &#39;||upper(lastName) from "
 "Person"
 msgstr ""
+"select firstName||&#39; &#39;||initial||&#39; &#39;||upper(lastName) from "
+"Person"
 
 #. Tag: para
 #: Query_ejbql.xml:155
@@ -521,6 +647,8 @@
 "The <literal>distinct</literal> and <literal>all</literal> keywords may be "
 "used and have the same semantics as in SQL."
 msgstr ""
+"<literal>distinct</literal> と <literal>all</literal> のキーワードを使用で"
+"き、これらは SQL と同じセマンティクスを持ちます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:158
@@ -530,18 +658,21 @@
 "\n"
 "select count(distinct cat.name), count(cat) from Cat cat"
 msgstr ""
+"select distinct cat.name from Cat cat\n"
+"\n"
+"select count(distinct cat.name), count(cat) from Cat cat"
 
 #. Tag: title
 #: Query_ejbql.xml:159
 #, no-c-format
 msgid "Polymorphic queries"
-msgstr ""
+msgstr "ポリモーフィッククエリ"
 
 #. Tag: para
 #: Query_ejbql.xml:160
 #, no-c-format
 msgid "A query like:"
-msgstr ""
+msgstr "以下のようなクエリがあるとします。"
 
 #. Tag: para
 #: Query_ejbql.xml:164
@@ -555,12 +686,19 @@
 "class or implement the interface. The following query would return all "
 "persistent objects:"
 msgstr ""
+"この場合、<literal>Cat</literal> だけでなく <literal>DomesticCat</literal> の"
+"ようなサブクラスのインスタンスも返されます。Hibernate クエリは<emphasis></"
+"emphasis> <literal>from</literal> 節でどんな Java クラスまたはインターフェー"
+"スでも指定できます (移植可能な EJB-QL クエリはマップされたエンティティのみを"
+"指定するべきです)。クエリは、クラスを拡張するか、インターフェースを実装するす"
+"べての永続クラスのインスタンスを返します。以下のクエリはすべての永続オブジェ"
+"クトを返します。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:167
 #, no-c-format
 msgid "from java.lang.Object o // HQL only"
-msgstr ""
+msgstr "from java.lang.Object o // HQL only"
 
 #. Tag: para
 #: Query_ejbql.xml:168
@@ -569,12 +707,14 @@
 "The interface <literal>Named</literal> might be implemented by various "
 "persistent classes:"
 msgstr ""
+"インターフェース <literal>Named</literal> はさまざまな永続クラスによって実装"
+"できます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:171
 #, no-c-format
 msgid "from Named n, Named m where n.name = m.name // HQL only"
-msgstr ""
+msgstr "from Named n, Named m where n.name = m.name // HQL only"
 
 #. Tag: para
 #: Query_ejbql.xml:172
@@ -585,12 +725,16 @@
 "clause does not correctly order the whole result set. (It also means you "
 "can&#39;t call these queries using <literal>Query.scroll()</literal>.)"
 msgstr ""
+"これらの最後の 2 つのクエリは複数の SQL <literal>SELECT</literal> を必要とす"
+"ることに注意してください。つまり、<literal>order by</literal> 節は結果セット"
+"全体を正しく要求しません (これは <literal>Query.scroll()</literal> を使用して"
+"これらのクエリを呼び出すことができないことも意味します)。"
 
 #. Tag: title
 #: Query_ejbql.xml:175
 #, no-c-format
 msgid "The where clause"
-msgstr ""
+msgstr "where 節"
 
 #. Tag: para
 #: Query_ejbql.xml:176
@@ -599,18 +743,23 @@
 "The <literal>where</literal> clause allows you to narrow the list of "
 "instances returned. If no alias exists, you may refer to properties by name:"
 msgstr ""
+"<literal>where</literal> 節により、返されるインスタンスのリストの範囲を狭める"
+"ことができます。エイリアスが存在しない場合は、プロパティを名前で参照できま"
+"す。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:179
 #, no-c-format
 msgid "select cat from Cat cat where cat.name=&#39;Fritz&#39;"
-msgstr ""
+msgstr "select cat from Cat cat where cat.name=&#39;Fritz&#39;"
 
 #. Tag: para
 #: Query_ejbql.xml:180
 #, no-c-format
 msgid "returns instances of <literal>Cat</literal> named &#39;Fritz&#39;."
 msgstr ""
+"この場合は、&#39;Fritz&#39; という名前の <literal>Cat</literal> のインスタン"
+"スが返されます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:183
@@ -620,6 +769,9 @@
 "from Foo foo, Bar bar\n"
 "where foo.startDate = bar.date"
 msgstr ""
+"select foo \n"
+"from Foo foo, Bar bar\n"
+"where foo.startDate = bar.date"
 
 #. Tag: para
 #: Query_ejbql.xml:184
@@ -631,12 +783,16 @@
 "<literal>Foo</literal>. Compound path expressions make the <literal>where</"
 "literal> clause extremely powerful. Consider:"
 msgstr ""
+"この場合は、<literal>Foo</literal> の <literal>startDate</literal> プロパティ"
+"に等しい <literal>date</literal> プロパティを持つ <literal>bar</literal> のイ"
+"ンスタンスが存在する <literal>Foo</literal> のすべてのインスタンスが返されま"
+"す。複合パス式により、<literal>where</literal> 節は非常に強力になります。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:187
 #, no-c-format
 msgid "select cat from Cat cat where cat.mate.name is not null"
-msgstr ""
+msgstr "select cat from Cat cat where cat.mate.name is not null"
 
 #. Tag: para
 #: Query_ejbql.xml:188
@@ -645,6 +801,8 @@
 "This query translates to an SQL query with a table (inner) join. If you were "
 "to write something like"
 msgstr ""
+"このクエリはテーブル (内部) 結合を持つ SQL クエリに変換されます。以下のような"
+"クエリを記述した場合、"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:191
@@ -653,13 +811,15 @@
 "select foo from Foo foo  \n"
 "where foo.bar.baz.customer.address.city is not null"
 msgstr ""
+"select foo from Foo foo  \n"
+"where foo.bar.baz.customer.address.city is not null"
 
 #. Tag: para
 #: Query_ejbql.xml:192
 #, no-c-format
 msgid ""
 "you would end up with a query that would require four table joins in SQL."
-msgstr ""
+msgstr "SQL で 4 つのテーブル結合を必要とするクエリが得られます。"
 
 #. Tag: para
 #: Query_ejbql.xml:195
@@ -668,12 +828,14 @@
 "The <literal>=</literal> operator may be used to compare not only "
 "properties, but also instances:"
 msgstr ""
+"プロパティだけではなくインスタンスも比較する場合は <literal>=</literal> 演算"
+"子を使用できます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:198
 #, no-c-format
 msgid "select cat, rival from Cat cat, Cat rival where cat.mate = rival.mate"
-msgstr ""
+msgstr "select cat, rival from Cat cat, Cat rival where cat.mate = rival.mate"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:199
@@ -683,6 +845,9 @@
 "from Cat cat, Cat mate\n"
 "where cat.mate = mate"
 msgstr ""
+"select cat, mate \n"
+"from Cat cat, Cat mate\n"
+"where cat.mate = mate"
 
 #. Tag: para
 #: Query_ejbql.xml:200
@@ -692,6 +857,9 @@
 "reference the unique identifier of an object. (You may also use its mapped "
 "identifer property name.). Note that this keyword is specific to HQL."
 msgstr ""
+"オブジェクトの一意の ID を参照するには特殊なプロパティ (小文字) <literal>id</"
+"literal> を使用できます (また、マップされた ID プロパティ名を使用することもで"
+"きます)。このキーワードは HQL に固有であることに注意してください。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:203
@@ -701,12 +869,15 @@
 "\n"
 "select cat from Cat as cat where cat.mate.id = 69"
 msgstr ""
+"select cat from Cat as cat where cat.id = 123\n"
+"\n"
+"select cat from Cat as cat where cat.mate.id = 69"
 
 #. Tag: para
 #: Query_ejbql.xml:204
 #, no-c-format
 msgid "The second query is efficient. No table join is required!"
-msgstr ""
+msgstr "2 つの目のクエリは効率的です。テーブル結合は必要ありません。"
 
 #. Tag: para
 #: Query_ejbql.xml:207
@@ -716,6 +887,9 @@
 "<literal>Person</literal> has a composite identifier consisting of "
 "<literal>country</literal> and <literal>medicareNumber</literal>."
 msgstr ""
+"複合 ID のプロパティを使用することもできます。<literal>Person</literal> が "
+"<literal>country</literal> と <literal>medicareNumber</literal> から構成され"
+"る複合 ID を持っているとします。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:210
@@ -725,6 +899,9 @@
 "where person.id.country = &#39;AU&#39; \n"
 "    and person.id.medicareNumber = 123456"
 msgstr ""
+"select person from bank.Person person\n"
+"where person.id.country = &#39;AU&#39; \n"
+"    and person.id.medicareNumber = 123456"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:211
@@ -734,12 +911,15 @@
 "where account.owner.id.country = &#39;AU&#39; \n"
 "    and account.owner.id.medicareNumber = 123456"
 msgstr ""
+"select account from bank.Account account\n"
+"where account.owner.id.country = &#39;AU&#39; \n"
+"    and account.owner.id.medicareNumber = 123456"
 
 #. Tag: para
 #: Query_ejbql.xml:212
 #, no-c-format
 msgid "Once again, the second query requires no table join."
-msgstr ""
+msgstr "この場合も 2 つ目のクエリはテーブル結合を必要としません。"
 
 #. Tag: para
 #: Query_ejbql.xml:215
@@ -750,12 +930,15 @@
 "Java class name embedded in the where clause will be translated to its "
 "discriminator value. Once again, this is specific to HQL."
 msgstr ""
+"同様に、特殊なプロパティ <literal>class</literal> はポリモーフィックな永続性"
+"の場合にインスタンスの判別値にアクセスします。where 節で指定された Java クラ"
+"ス名は判別値に変換されます。この場合も HQL に固有です。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:218
 #, no-c-format
 msgid "select cat from Cat cat where cat.class = DomesticCat"
-msgstr ""
+msgstr "select cat from Cat cat where cat.class = DomesticCat"
 
 #. Tag: para
 #: Query_ejbql.xml:219
@@ -767,6 +950,11 @@
 "component). For example, if <literal>store.owner</literal> is an entity with "
 "a component <literal>address</literal>"
 msgstr ""
+"また、コンポーネントまたは複合ユーザータイプ (コンポーネントのコンポーネント"
+"など) のプロパティを指定することもできます。コンポーネントタイプのプロパティ"
+"で終了するパス式は使用しないでください (コンポーネントのプロパティの場合とは"
+"反対です)。たとえば、以下のように <literal>store.owner</literal> がコンポーネ"
+"ント <literal>address</literal> を持つエンティティであるとします。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:222
@@ -775,6 +963,8 @@
 "store.owner.address.city    // okay\n"
 "store.owner.address         // error!"
 msgstr ""
+"store.owner.address.city    // 成功\n"
+"store.owner.address         // エラー発生!"
 
 #. Tag: para
 #: Query_ejbql.xml:223
@@ -786,6 +976,11 @@
 "<literal>&lt;any&gt;</literal>). <literal>Any</literal> is specific to "
 "Hibernate"
 msgstr ""
+"この場合、どんなタイプでも特殊なプロパティ <literal>id</literal> と "
+"<literal>class</literal> を持つことになり、以下のように結合を表すことができる"
+"ようになります (ここで、<literal>AuditLog.item</literal> は<literal>&lt;"
+"any&gt;</literal> とマップされたプロパティです)。<literal>Any</literal> は "
+"Hibernate に固有です。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:226
@@ -794,6 +989,8 @@
 "from AuditLog log, Payment payment \n"
 "where log.item.class = &#39;Payment&#39; and log.item.id = payment.id"
 msgstr ""
+"from AuditLog log, Payment payment \n"
+"where log.item.class = &#39;Payment&#39; and log.item.id = payment.id"
 
 #. Tag: para
 #: Query_ejbql.xml:227
@@ -803,12 +1000,15 @@
 "literal> would refer to the values of completely different database columns "
 "in the above query."
 msgstr ""
+"<literal>log.item.class</literal> と <literal>payment.class</literal> は、上"
+"記のクエリとは完全に異なるデータベースカラムの値を参照することに注意してくだ"
+"さい。"
 
 #. Tag: title
 #: Query_ejbql.xml:230
 #, no-c-format
 msgid "Expressions"
-msgstr ""
+msgstr "式"
 
 #. Tag: para
 #: Query_ejbql.xml:231
@@ -817,12 +1017,14 @@
 "Expressions allowed in the <literal>where</literal> clause include most of "
 "the kind of things you could write in SQL:"
 msgstr ""
+"<literal>where</literal> 節で許可される式には SQL で記述できるほとんどのもの"
+"が含まれます。"
 
 #. Tag: para
 #: Query_ejbql.xml:236
 #, no-c-format
 msgid "mathematical operators <literal>+, -, *, /</literal>"
-msgstr ""
+msgstr "算術演算子 <literal>+, -, *, /</literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:241
@@ -831,18 +1033,21 @@
 "binary comparison operators <literal>=, &gt;=, &lt;=, &lt;&gt;, !=, like</"
 "literal>"
 msgstr ""
+"バイナリ比較演算子 <literal>=, &gt;=, &lt;=, &lt;&gt;, !=, like</literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:246
 #, no-c-format
 msgid "logical operations <literal>and, or, not</literal>"
 msgstr ""
+"論理演算子 <literal>and</literal>、<literal>or</literal>、<literal>not</"
+"literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:251
 #, no-c-format
 msgid "Parentheses <literal>( )</literal>, indicating grouping"
-msgstr ""
+msgstr "括弧 <literal>( )</literal>、グルーピングを示す"
 
 #. Tag: para
 #: Query_ejbql.xml:256
@@ -853,6 +1058,10 @@
 "<literal>is empty</literal>, <literal>is not empty</literal>, "
 "<literal>member of</literal> and <literal>not member of</literal>"
 msgstr ""
+"<literal>in</literal>、<literal>not in</literal>、<literal>between</"
+"literal>、<literal>is null</literal>、<literal>is not null</literal>、"
+"<literal>is empty</literal>、<literal>is not empty</literal>、"
+"<literal>member of</literal>、および <literal>not member of</literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:261
@@ -862,6 +1071,9 @@
 "and \"searched\" case, <literal>case when ... then ... else ... end "
 "(specific to HQL)</literal>"
 msgstr ""
+"「単純な」分岐 <literal>case ... when ... then ... else ... end</literal> と"
+"「検索された」分岐 <literal>case when ... then ... else ... end (HQL に固有)"
+"</literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:266
@@ -870,6 +1082,8 @@
 "string concatenation <literal>...||...</literal> or <literal>concat(...,...) "
 "(use concat() for portable EJB-QL queries)</literal>"
 msgstr ""
+"文字列連結 <literal>...||...</literal> または <literal>concat(...,...) (移植"
+"可能な EJB-QL クエリには concat() を使用)</literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:271
@@ -878,6 +1092,8 @@
 "<literal>current_date()</literal>, <literal>current_time()</literal>, "
 "<literal>current_timestamp()</literal>"
 msgstr ""
+"<literal>current_date()</literal>、<literal>current_time()</literal>、"
+"<literal>current_timestamp()</literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:276
@@ -887,6 +1103,9 @@
 "(...)</literal>, <literal>day(...)</literal>, <literal>month(...)</literal>, "
 "<literal>year(...)</literal>, (specific to HQL)"
 msgstr ""
+"<literal>second(...)</literal>、<literal>minute(...)</literal>、<literal>hour"
+"(...)</literal>、<literal>day(...)</literal>、<literal>month(...)</literal>、"
+"<literal>year(...)</literal> (HQL に固有)"
 
 #. Tag: para
 #: Query_ejbql.xml:281
@@ -896,12 +1115,17 @@
 "(), lower(), upper(), length(), locate(), abs(), sqrt(), bit_length()</"
 "literal>"
 msgstr ""
+"EJB-QL 3.0 で定義されたすべての関数または演算子: <literal>substring()</"
+"literal>、<literal>trim()</literal>、<literal>lower()</literal>、"
+"<literal>upper()</literal>、<literal>length()</literal>、<literal>locate()</"
+"literal>、<literal>abs()</literal>、<literal>sqrt()</literal>、"
+"<literal>bit_length()</literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:286
 #, no-c-format
 msgid "<literal>coalesce()</literal> and <literal>nullif()</literal>"
-msgstr ""
+msgstr "<literal>coalesce()</literal> and <literal>nullif()</literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:291
@@ -912,6 +1136,10 @@
 "<literal>cast()</literal> and <literal>extract()</literal> is supported by "
 "the underlying database"
 msgstr ""
+"<literal>cast(... as ...)</literal>。ここで、2 つ目の引数は Hibernate タイプ"
+"の名前であり、基礎となるデータベースで ANSI <literal>cast()</literal> と "
+"<literal>extract()</literal> がサポートされている場合は <literal>extract(... "
+"from ...)</literal> となる"
 
 #. Tag: para
 #: Query_ejbql.xml:296
@@ -921,12 +1149,15 @@
 "<literal>trunc()</literal>, <literal>rtrim()</literal>, <literal>sin()</"
 "literal>"
 msgstr ""
+"<literal>sign()</literal>、<literal>trunc()</literal>、<literal>rtrim()</"
+"literal>、<literal>sin()</literal> などのデータベースでサポートされている "
+"SQL スカラ関数"
 
 #. Tag: para
 #: Query_ejbql.xml:301
 #, no-c-format
 msgid "JDBC IN parameters <literal>?</literal>"
-msgstr ""
+msgstr "JDBC IN パラメータ <literal>?</literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:306
@@ -935,6 +1166,8 @@
 "named parameters <literal>:name</literal>, <literal>:start_date</literal>, "
 "<literal>:x1</literal>"
 msgstr ""
+"名前付きパラメータ <literal>:name</literal>、<literal>:start_date</literal>、"
+"<literal>:x1</literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:311
@@ -943,6 +1176,8 @@
 "SQL literals <literal>&#39;foo&#39;</literal>, <literal>69</literal>, "
 "<literal>&#39;1970-01-01 10:00:01.0&#39;</literal>"
 msgstr ""
+"SQL リテラル <literal>&#39;foo&#39;</literal>、<literal>69</literal>、"
+"<literal>&#39;1970-01-01 10:00:01.0&#39;</literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:316
@@ -951,6 +1186,8 @@
 "Java <literal>public static final</literal> constants <literal>eg.Color."
 "TABBY</literal>"
 msgstr ""
+"Java <literal>public static final</literal> 定数 <literal>eg.Color.TABBY</"
+"literal>"
 
 #. Tag: para
 #: Query_ejbql.xml:321
@@ -958,6 +1195,8 @@
 msgid ""
 "<literal>in</literal> and <literal>between</literal> may be used as follows:"
 msgstr ""
+"<literal>in</literal> と <literal>between</literal> は以下のように使用できま"
+"す。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:324
@@ -966,6 +1205,8 @@
 "select cat from DomesticCat cat where cat.name between &#39;A&#39; and &#39;"
 "B&#39;"
 msgstr ""
+"select cat from DomesticCat cat where cat.name between &#39;A&#39; and &#39;"
+"B&#39;"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:325
@@ -974,12 +1215,14 @@
 "select cat from DomesticCat cat where cat.name in ( &#39;Foo&#39;, &#39;"
 "Bar&#39;, &#39;Baz&#39; )"
 msgstr ""
+"select cat from DomesticCat cat where cat.name in ( &#39;Foo&#39;, &#39;"
+"Bar&#39;, &#39;Baz&#39; )"
 
 #. Tag: para
 #: Query_ejbql.xml:326
 #, no-c-format
 msgid "and the negated forms may be written"
-msgstr ""
+msgstr "否定形は以下のように記述します。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:329
@@ -988,6 +1231,8 @@
 "select cat from DomesticCat cat where cat.name not between &#39;A&#39; and "
 "&#39;B&#39;"
 msgstr ""
+"select cat from DomesticCat cat where cat.name not between &#39;A&#39; and "
+"&#39;B&#39;"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:330
@@ -996,6 +1241,8 @@
 "select cat from DomesticCat cat where cat.name not in ( &#39;Foo&#39;, &#39;"
 "Bar&#39;, &#39;Baz&#39; )"
 msgstr ""
+"select cat from DomesticCat cat where cat.name not in ( &#39;Foo&#39;, &#39;"
+"Bar&#39;, &#39;Baz&#39; )"
 
 #. Tag: para
 #: Query_ejbql.xml:331
@@ -1004,6 +1251,8 @@
 "Likewise, <literal>is null</literal> and <literal>is not null</literal> may "
 "be used to test for null values."
 msgstr ""
+"同様に、null 値をテストするために <literal>is null</literal> と <literal>is "
+"not null</literal> を使用できます。"
 
 #. Tag: para
 #: Query_ejbql.xml:334
@@ -1012,12 +1261,14 @@
 "Booleans may be easily used in expressions by declaring HQL query "
 "substitutions in Hibernate configuration:"
 msgstr ""
+"ブール値は Hibernate 設定で HQL クエリ置換を宣言することにより式で簡単に使用"
+"できます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:337
 #, no-c-format
 msgid "hibernate.query.substitutions true 1, false 0"
-msgstr ""
+msgstr "hibernate.query.substitutions true 1, false 0"
 
 #. Tag: para
 #: Query_ejbql.xml:338
@@ -1027,12 +1278,15 @@
 "literal> with the literals <literal>1</literal> and <literal>0</literal> in "
 "the translated SQL from this HQL:"
 msgstr ""
+"これにより、この HQL から変換された SQL でキーワード <literal>true</literal> "
+"と <literal>false</literal> がリテラル <literal>1</literal> and <literal>0</"
+"literal> に置換されます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:341
 #, no-c-format
 msgid "select cat from Cat cat where cat.alive = true"
-msgstr ""
+msgstr "select cat from Cat cat where cat.alive = true"
 
 #. Tag: para
 #: Query_ejbql.xml:342
@@ -1042,18 +1296,20 @@
 "<literal>size</literal>, or the special <literal>size()</literal> function "
 "(HQL specific feature)."
 msgstr ""
+"コレクションのサイズは特殊なプロパティ <literal>size</literal> または特殊な "
+"<literal>size()</literal> 関数 (HQL 固有の機能) を使用して確認できます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:345
 #, no-c-format
 msgid "select cat from Cat cat where cat.kittens.size &gt; 0"
-msgstr ""
+msgstr "select cat from Cat cat where cat.kittens.size &gt; 0"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:346
 #, no-c-format
 msgid "select cat from Cat cat where size(cat.kittens) &gt; 0"
-msgstr ""
+msgstr "select cat from Cat cat where size(cat.kittens) &gt; 0"
 
 #. Tag: para
 #: Query_ejbql.xml:347
@@ -1065,6 +1321,11 @@
 "of basic type using the <literal>minelement</literal> and "
 "<literal>maxelement</literal> functions. These are HQL specific features."
 msgstr ""
+"インデックス化されたコレクションの場合は、<literal>minindex</literal> 関数と "
+"<literal>maxindex</literal> 関数を使用して最小インデックスと最大インデックス"
+"を参照できます。同様に、基本タイプのコレクションの最小要素と最大要素は "
+"<literal>minelement</literal> 関数と <literal>maxelement</literal> 関数を使用"
+"して参照できます。これらは HQL 固有の機能です。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:350
@@ -1072,18 +1333,19 @@
 msgid ""
 "select cal from Calendar cal where maxelement(cal.holidays) &gt; current date"
 msgstr ""
+"select cal from Calendar cal where maxelement(cal.holidays) &gt; current date"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:351
 #, no-c-format
 msgid "select order from Order order where maxindex(order.items) &gt; 100"
-msgstr ""
+msgstr "select order from Order order where maxindex(order.items) &gt; 100"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:352
 #, no-c-format
 msgid "select order from Order order where minelement(order.items) &gt; 10000"
-msgstr ""
+msgstr "select order from Order order where minelement(order.items) &gt; 10000"
 
 #. Tag: para
 #: Query_ejbql.xml:353
@@ -1096,6 +1358,13 @@
 "QL, <literal>elements</literal> and <literal>indices</literal> are specific "
 "HQL features."
 msgstr ""
+"コレクション (<literal>elements</literal> 関数と <literal>indices</literal> "
+"関数) の要素またはインデックスセットが渡されたとき、またはサブクエリの結果 "
+"(下記参照)、SQL 関数 <literal>any</literal>、<literal>some</literal>、"
+"<literal>all</literal>、<literal>exists</literal>、<literal>in</literal> がサ"
+"ポートされます。サブクエリは EJB-QL によってサポートされますが、"
+"<literal>elements</literal> と <literal>indices</literal> は HQL 固有の機能で"
+"す。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:356
@@ -1104,6 +1373,8 @@
 "select mother from Cat as mother, Cat as kit\n"
 "where kit in elements(foo.kittens)"
 msgstr ""
+"select mother from Cat as mother, Cat as kit\n"
+"where kit in elements(foo.kittens)"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:357
@@ -1112,24 +1383,26 @@
 "select p from NameList list, Person p\n"
 "where p.name = some elements(list.names)"
 msgstr ""
+"select p from NameList list, Person p\n"
+"where p.name = some elements(list.names)"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:358
 #, no-c-format
 msgid "select cat from Cat cat where exists elements(cat.kittens)"
-msgstr ""
+msgstr "select cat from Cat cat where exists elements(cat.kittens)"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:359
 #, no-c-format
 msgid "select cat from Player p where 3 &gt; all elements(p.scores)"
-msgstr ""
+msgstr "select cat from Player p where 3 &gt; all elements(p.scores)"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:360
 #, no-c-format
 msgid "select cat from Show show where &#39;fizard&#39; in indices(show.acts)"
-msgstr ""
+msgstr "select cat from Show show where &#39;fizard&#39; in indices(show.acts)"
 
 #. Tag: para
 #: Query_ejbql.xml:361
@@ -1141,6 +1414,10 @@
 "<literal>maxelement</literal> - may only be used in the where clause in "
 "Hibernate3."
 msgstr ""
+"Hibernate3 では、<literal>size</literal>、<literal>elements</literal>、"
+"<literal>indices</literal>、<literal>minindex</literal>、<literal>maxindex</"
+"literal>、<literal>minelement</literal>、<literal>maxelement</literal> などの"
+"構文は where 節でのみ使用できます。"
 
 #. Tag: para
 #: Query_ejbql.xml:364
@@ -1149,12 +1426,14 @@
 "In HQL, elements of indexed collections (arrays, lists, maps) may be "
 "referred to by index (in a where clause only):"
 msgstr ""
+"HQL ではインデックス化されたコレクション (配列、リスト、マップ) の要素はイン"
+"デックスによって参照できます (where 節のみ)。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:367
 #, no-c-format
 msgid "select order from Order order where order.items[0].id = 1234"
-msgstr ""
+msgstr "select order from Order order where order.items[0].id = 1234"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:368
@@ -1164,6 +1443,9 @@
 "where calendar.holidays[&#39;national day&#39;] = person.birthDay\n"
 "    and person.nationality.calendar = calendar"
 msgstr ""
+"select person from Person person, Calendar calendar\n"
+"where calendar.holidays[&#39;national day&#39;] = person.birthDay\n"
+"    and person.nationality.calendar = calendar"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:369
@@ -1172,6 +1454,8 @@
 "select item from Item item, Order order\n"
 "where order.items[ order.deliveredItemIndices[0] ] = item and order.id = 11"
 msgstr ""
+"select item from Item item, Order order\n"
+"where order.items[ order.deliveredItemIndices[0] ] = item and order.id = 11"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:370
@@ -1180,6 +1464,8 @@
 "select item from Item item, Order order\n"
 "where order.items[ maxindex(order.items) ] = item and order.id = 11"
 msgstr ""
+"select item from Item item, Order order\n"
+"where order.items[ maxindex(order.items) ] = item and order.id = 11"
 
 #. Tag: para
 #: Query_ejbql.xml:371
@@ -1187,7 +1473,7 @@
 msgid ""
 "The expression inside <literal>[]</literal> may even be an arithmetic "
 "expression."
-msgstr ""
+msgstr "<literal>[]</literal> 内部の式として算術式を使用することもできます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:374
@@ -1196,6 +1482,8 @@
 "select item from Item item, Order order\n"
 "where order.items[ size(order.items) - 1 ] = item"
 msgstr ""
+"select item from Item item, Order order\n"
+"where order.items[ size(order.items) - 1 ] = item"
 
 #. Tag: para
 #: Query_ejbql.xml:375
@@ -1204,6 +1492,8 @@
 "HQL also provides the built-in <literal>index()</literal> function, for "
 "elements of a one-to-many association or collection of values."
 msgstr ""
+"また、HQL では、1 対多の関連付けの要素や値のコレクションに対して組み込みの "
+"<literal>index()</literal> 関数が提供されます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:378
@@ -1213,12 +1503,16 @@
 "    join order.items item\n"
 "where index(item) &lt; 5"
 msgstr ""
+"select item, index(item) from Order order \n"
+"    join order.items item\n"
+"where index(item) &lt; 5"
 
 #. Tag: para
 #: Query_ejbql.xml:379
 #, no-c-format
 msgid "Scalar SQL functions supported by the underlying database may be used"
 msgstr ""
+"基礎となるデータベースでサポートされているスカラ SQL 関数を使用できます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:382
@@ -1226,6 +1520,7 @@
 msgid ""
 "select cat from DomesticCat cat where upper(cat.name) like &#39;FRI%&#39;"
 msgstr ""
+"select cat from DomesticCat cat where upper(cat.name) like &#39;FRI%&#39;"
 
 #. Tag: para
 #: Query_ejbql.xml:383
@@ -1234,6 +1529,8 @@
 "If you are not yet convinced by all this, think how much longer and less "
 "readable the following query would be in SQL:"
 msgstr ""
+"HQL の便利さを実感するために以下のクエリを SQL で記述した場合、どれだけ冗長で"
+"理解しにくくなるか考えてください。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:386
@@ -1247,12 +1544,19 @@
 "    and store.location.name in ( &#39;Melbourne&#39;, &#39;Sydney&#39; )\n"
 "    and prod = all elements(cust.currentOrder.lineItems)"
 msgstr ""
+"select cust\n"
+"from Product prod,\n"
+"    Store store\n"
+"    inner join store.customers cust\n"
+"where prod.name = &#39;widget&#39;\n"
+"    and store.location.name in ( &#39;Melbourne&#39;, &#39;Sydney&#39; )\n"
+"    and prod = all elements(cust.currentOrder.lineItems)"
 
 #. Tag: para
 #: Query_ejbql.xml:387
 #, no-c-format
 msgid "<emphasis>Hint:</emphasis> something like"
-msgstr ""
+msgstr "<emphasis>ヒント:</emphasis> SQL では以下のようになります。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:390
@@ -1276,12 +1580,29 @@
 "            AND cust.current_order = o.id\n"
 "    )"
 msgstr ""
+"SELECT cust.name, cust.address, cust.phone, cust.id, cust.current_order\n"
+"FROM customers cust,\n"
+"    stores store,\n"
+"    locations loc,\n"
+"    store_customers sc,\n"
+"    product prod\n"
+"WHERE prod.name = &#39;widget&#39;\n"
+"    AND store.loc_id = loc.id\n"
+"    AND loc.name IN ( &#39;Melbourne&#39;, &#39;Sydney&#39; )\n"
+"    AND sc.store_id = store.id\n"
+"    AND sc.cust_id = cust.id\n"
+"    AND prod.id = ALL(\n"
+"        SELECT item.prod_id\n"
+"        FROM line_items item, orders o\n"
+"        WHERE item.order_id = o.id\n"
+"            AND cust.current_order = o.id\n"
+"    )"
 
 #. Tag: title
 #: Query_ejbql.xml:391
 #, no-c-format
 msgid "The order by clause"
-msgstr ""
+msgstr "order by 節"
 
 #. Tag: para
 #: Query_ejbql.xml:392
@@ -1290,6 +1611,8 @@
 "The list returned by a query may be ordered by any property of a returned "
 "class or components:"
 msgstr ""
+"クエリによって返されるリストは、返されるクラスやコンポーネントの任意のプロパ"
+"ティによって順序づけることができます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:395
@@ -1298,6 +1621,8 @@
 "select cat from DomesticCat cat\n"
 "order by cat.name asc, cat.weight desc, cat.birthdate"
 msgstr ""
+"select cat from DomesticCat cat\n"
+"order by cat.name asc, cat.weight desc, cat.birthdate"
 
 #. Tag: para
 #: Query_ejbql.xml:396
@@ -1306,12 +1631,14 @@
 "The optional <literal>asc</literal> or <literal>desc</literal> indicate "
 "ascending or descending order respectively."
 msgstr ""
+"オプションの <literal>asc</literal> または <literal>desc</literal> は、それぞ"
+"れ昇順と降順を示します。"
 
 #. Tag: title
 #: Query_ejbql.xml:399
 #, no-c-format
 msgid "The group by clause"
-msgstr ""
+msgstr "group by 節"
 
 #. Tag: para
 #: Query_ejbql.xml:400
@@ -1320,6 +1647,8 @@
 "A query that returns aggregate values may be grouped by any property of a "
 "returned class or components:"
 msgstr ""
+"集約値を返すクエリは、返されるクラスまたはコンポーネントの任意のプロパティに"
+"よってグループに分けることができます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:403
@@ -1329,6 +1658,9 @@
 "from Cat cat\n"
 "group by cat.color"
 msgstr ""
+"select cat.color, sum(cat.weight), count(cat) \n"
+"from Cat cat\n"
+"group by cat.color"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:404
@@ -1338,12 +1670,15 @@
 "from Foo foo join foo.names name\n"
 "group by foo.id"
 msgstr ""
+"select foo.id, avg(name), max(name) \n"
+"from Foo foo join foo.names name\n"
+"group by foo.id"
 
 #. Tag: para
 #: Query_ejbql.xml:405
 #, no-c-format
 msgid "A <literal>having</literal> clause is also allowed."
-msgstr ""
+msgstr "<literal>having</literal> 節を使用することもできます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:408
@@ -1354,6 +1689,10 @@
 "group by cat.color \n"
 "having cat.color in (eg.Color.TABBY, eg.Color.BLACK)"
 msgstr ""
+"select cat.color, sum(cat.weight), count(cat) \n"
+"from Cat cat\n"
+"group by cat.color \n"
+"having cat.color in (eg.Color.TABBY, eg.Color.BLACK)"
 
 #. Tag: para
 #: Query_ejbql.xml:409
@@ -1363,6 +1702,9 @@
 "literal> and <literal>order by</literal> clauses, if supported by the "
 "underlying database (eg. not in MySQL)."
 msgstr ""
+"SQL 関数と集約関数は、<literal>having</literal> 節と <literal>order by</"
+"literal> 節で使用できます (基礎となるデータベースでサポートされている場合 (た"
+"とえば、MySQL では使用できません))。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:412
@@ -1375,6 +1717,12 @@
 "having avg(kitten.weight) &gt; 100\n"
 "order by count(kitten) asc, sum(kitten.weight) desc"
 msgstr ""
+"select cat\n"
+"from Cat cat\n"
+"    join cat.kittens kitten\n"
+"group by cat\n"
+"having avg(kitten.weight) &gt; 100\n"
+"order by count(kitten) asc, sum(kitten.weight) desc"
 
 #. Tag: para
 #: Query_ejbql.xml:413
@@ -1383,12 +1731,14 @@
 "Note that neither the <literal>group by</literal> clause nor the "
 "<literal>order by</literal> clause may contain arithmetic expressions."
 msgstr ""
+"<literal>group by</literal> 節と <literal>order by</literal> 節には算術式を含"
+"めることができることに注意してください。"
 
 #. Tag: title
 #: Query_ejbql.xml:416
 #, no-c-format
 msgid "Subqueries"
-msgstr ""
+msgstr "サブクエリ"
 
 #. Tag: para
 #: Query_ejbql.xml:417
@@ -1399,6 +1749,10 @@
 "aggregate function call). Even correlated subqueries (subqueries that refer "
 "to an alias in the outer query) are allowed."
 msgstr ""
+"副選択をサポートするデータベースの場合、EJB-QL はクエリ内でサブクエリをサポー"
+"トします。サブクエリは、括弧 (多くの場合、SQL 集約関数呼び出し) で囲む必要が"
+"あります。相関サブクエリ (外側のクエリのエイリアスを参照するサブクエリ) も使"
+"用できます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:420
@@ -1409,6 +1763,10 @@
 "    select avg(cat.weight) from DomesticCat cat \n"
 ")"
 msgstr ""
+"select fatcat from Cat as fatcat \n"
+"where fatcat.weight &gt; ( \n"
+"    select avg(cat.weight) from DomesticCat cat \n"
+")"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:421
@@ -1419,6 +1777,10 @@
 "    select name.nickName from Name as name \n"
 ")"
 msgstr ""
+"select cat from DomesticCat as cat \n"
+"where cat.name = some ( \n"
+"    select name.nickName from Name as name \n"
+")"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:422
@@ -1429,6 +1791,10 @@
 "    from Cat as mate where mate.mate = cat \n"
 ")"
 msgstr ""
+"select cat from Cat as cat \n"
+"where not exists ( \n"
+"    from Cat as mate where mate.mate = cat \n"
+")"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:423
@@ -1439,6 +1805,10 @@
 "    select name.nickName from Name as name \n"
 ")"
 msgstr ""
+"select cat from DomesticCat as cat \n"
+"where cat.name not in ( \n"
+"    select name.nickName from Name as name \n"
+")"
 
 #. Tag: para
 #: Query_ejbql.xml:424
@@ -1447,6 +1817,7 @@
 "For subqueries with more than one expression in the select list, you can use "
 "a tuple constructor:"
 msgstr ""
+"選択リストに複数の式があるサブクエリの場合は、タブル構文を使用できます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:427
@@ -1457,6 +1828,10 @@
 "    select cat.name, cat.color from DomesticCat cat \n"
 ")"
 msgstr ""
+"select cat from Cat as cat \n"
+"where not ( cat.name, cat.color ) in ( \n"
+"    select cat.name, cat.color from DomesticCat cat \n"
+")"
 
 #. Tag: para
 #: Query_ejbql.xml:428
@@ -1466,6 +1841,9 @@
 "constructors in other contexts, for example when querying components or "
 "composite user types:"
 msgstr ""
+"一部のデータベース (ただし、Oracle や HSQLDB 以外) では、コンポーネントまたは"
+"複合ユーザータイプを照会するときなどに他のコンテキストでタプルコンストラクタ"
+"を使用できます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:431
@@ -1474,12 +1852,14 @@
 "select cat from Person where name = (&#39;Gavin&#39;, &#39;A&#39;, &#39;"
 "King&#39;)"
 msgstr ""
+"select cat from Person where name = (&#39;Gavin&#39;, &#39;A&#39;, &#39;"
+"King&#39;)"
 
 #. Tag: para
 #: Query_ejbql.xml:432
 #, no-c-format
 msgid "Which is equivalent to the more verbose:"
-msgstr ""
+msgstr "これは、冗長な以下のコードと同じです。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:435
@@ -1488,6 +1868,8 @@
 "select cat from Person where name.first = &#39;Gavin&#39; and name.initial = "
 "&#39;A&#39; and name.last = &#39;King&#39;)"
 msgstr ""
+"select cat from Person where name.first = &#39;Gavin&#39; and name.initial = "
+"&#39;A&#39; and name.last = &#39;King&#39;)"
 
 #. Tag: para
 #: Query_ejbql.xml:436
@@ -1498,12 +1880,15 @@
 "query is now dependent upon the ordering of properties in the mapping "
 "document."
 msgstr ""
+"このようなコードを記述しない方がよい理由は 2 つあります。1 つは、データベース"
+"プラットフォーム間で完全に移植可能ではないこと、もう 1 つはクエリがマッピング"
+"ドキュメントでプロパティの順序に依存してしまうことです。"
 
 #. Tag: title
 #: Query_ejbql.xml:439
 #, no-c-format
 msgid "EJB-QL examples"
-msgstr ""
+msgstr "EJB-QL の例"
 
 #. Tag: para
 #: Query_ejbql.xml:440
@@ -1515,6 +1900,10 @@
 "on a recent project. Note that most queries you will write are much simpler "
 "than these!"
 msgstr ""
+"Hibernate クエリは、非常に強力で複雑です。実際には、強力なクエリ言語 (EJB-"
+"QL) は Hibernate の特長の 1 つです。ここでは、最近のプロジェクトで使用したク"
+"エリに非常によく似たクエリの例をいくつか示します。通常記述するほとんどのクエ"
+"リは、これらのクエリよりももっと単純であることに注意してください。"
 
 #. Tag: para
 #: Query_ejbql.xml:443
@@ -1528,6 +1917,12 @@
 "literal>, <literal>CATALOG</literal> and <literal>PRICE</literal> tables has "
 "four inner joins and an (uncorrelated) subselect."
 msgstr ""
+"以下のクエリは注文 ID、品数、特定の顧客のすべての未払い注文の合計金額、指定さ"
+"れた最小合計金額を返し、結果を合計金額でソートします。金額を決定するために現"
+"在のカタログを使用します。結果となる <literal>ORDER</literal>、"
+"<literal>ORDER_LINE</literal>、<literal>PRODUCT</literal>、<literal>CATALOG</"
+"literal>、および <literal>PRICE</literal> テーブルに対する SQL クエリは 4 つ"
+"の内部結合と 1 つの (非相関) 副選択を持ちます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:446
@@ -1552,6 +1947,24 @@
 "having sum(price.amount) &gt; :minAmount\n"
 "order by sum(price.amount) desc"
 msgstr ""
+"select order.id, sum(price.amount), count(item)\n"
+"from Order as order\n"
+"    join order.lineItems as item\n"
+"    join item.product as product,\n"
+"    Catalog as catalog\n"
+"    join catalog.prices as price\n"
+"where order.paid = false\n"
+"    and order.customer = :customer\n"
+"    and price.product = product\n"
+"    and catalog.effectiveDate &lt; sysdate\n"
+"    and catalog.effectiveDate &gt;= all (\n"
+"        select cat.effectiveDate \n"
+"        from Catalog as cat\n"
+"        where cat.effectiveDate &lt; sysdate\n"
+"    )\n"
+"group by order\n"
+"having sum(price.amount) &gt; :minAmount\n"
+"order by sum(price.amount) desc"
 
 #. Tag: para
 #: Query_ejbql.xml:447
@@ -1560,6 +1973,9 @@
 "What a monster! Actually, in real life, I&#39;m not very keen on subqueries, "
 "so my query was really more like this:"
 msgstr ""
+"EJB-QL が非常に強力であることがおわかりになったと思います。実際には、サブクエ"
+"リを使うことにそれほどこだわりがない場合は、以下のようなクエリを記述すること"
+"になると思います。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:450
@@ -1579,6 +1995,19 @@
 "having sum(price.amount) &gt; :minAmount\n"
 "order by sum(price.amount) desc"
 msgstr ""
+"select order.id, sum(price.amount), count(item)\n"
+"from Order as order\n"
+"    join order.lineItems as item\n"
+"    join item.product as product,\n"
+"    Catalog as catalog\n"
+"    join catalog.prices as price\n"
+"where order.paid = false\n"
+"    and order.customer = :customer\n"
+"    and price.product = product\n"
+"    and catalog = :currentCatalog\n"
+"group by order\n"
+"having sum(price.amount) &gt; :minAmount\n"
+"order by sum(price.amount) desc"
 
 #. Tag: para
 #: Query_ejbql.xml:451
@@ -1591,6 +2020,12 @@
 "<literal>PAYMENT</literal>, <literal>PAYMENT_STATUS</literal> and "
 "<literal>PAYMENT_STATUS_CHANGE</literal> tables."
 msgstr ""
+"以下のクエリは、最新のステータスの変更が現在のユーザーによって行われた "
+"<literal>AWAITING_APPROVAL</literal> ステータスのすべての支払いを除く各ステー"
+"タスの支払いの数を数えます。これは、<literal>PAYMENT</literal> テーブル、"
+"<literal>PAYMENT_STATUS</literal> テーブル、および "
+"<literal>PAYMENT_STATUS_CHANGE</literal> テーブルに対する 2 つの内部結合と 1 "
+"つの相関副選択を持つ SQL クエリに変換されます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:454
@@ -1612,6 +2047,21 @@
 "group by status.name, status.sortOrder\n"
 "order by status.sortOrder"
 msgstr ""
+"select count(payment), status.name \n"
+"from Payment as payment \n"
+"    join payment.currentStatus as status\n"
+"    join payment.statusChanges as statusChange\n"
+"where payment.status.name &lt;&gt; PaymentStatus.AWAITING_APPROVAL\n"
+"    or (\n"
+"        statusChange.timeStamp = ( \n"
+"            select max(change.timeStamp) \n"
+"            from PaymentStatusChange change \n"
+"            where change.payment = payment\n"
+"        )\n"
+"        and statusChange.user &lt;&gt; :currentUser\n"
+"    )\n"
+"group by status.name, status.sortOrder\n"
+"order by status.sortOrder"
 
 #. Tag: para
 #: Query_ejbql.xml:455
@@ -1620,6 +2070,8 @@
 "If I would have mapped the <literal>statusChanges</literal> collection as a "
 "list, instead of a set, the query would have been much simpler to write."
 msgstr ""
+"<literal>statusChanges</literal> コレクションをセットではなくリストとしてマッ"
+"プした場合は、クエリをもっと単純に記述することができます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:458
@@ -1634,12 +2086,20 @@
 "group by status.name, status.sortOrder\n"
 "order by status.sortOrder"
 msgstr ""
+"select count(payment), status.name \n"
+"from Payment as payment\n"
+"    join payment.currentStatus as status\n"
+"where payment.status.name &lt;&gt; PaymentStatus.AWAITING_APPROVAL\n"
+"    or payment.statusChanges[ maxIndex(payment.statusChanges) ].user &lt;"
+"&gt; :currentUser\n"
+"group by status.name, status.sortOrder\n"
+"order by status.sortOrder"
 
 #. Tag: para
 #: Query_ejbql.xml:459
 #, no-c-format
 msgid "However the query would have been HQL specific."
-msgstr ""
+msgstr "ただし、クエリは HQL 固有になります。"
 
 #. Tag: para
 #: Query_ejbql.xml:462
@@ -1653,6 +2113,13 @@
 "<literal>ACCOUNT_TYPE</literal>, <literal>ORGANIZATION</literal> and "
 "<literal>ORG_USER</literal> tables."
 msgstr ""
+"以下のクエリは、現在のユーザーが属する組織に対してすべてのアカウントと未払い"
+"を返す MS SQL Server <literal>isNull()</literal> 関数を使用します。これは、"
+"<literal>ACCOUNT</literal>、<literal>PAYMENT</literal>、"
+"<literal>PAYMENT_STATUS</literal>、<literal>ACCOUNT_TYPE</literal>、"
+"<literal>ORGANIZATION</literal>、および <literal>ORG_USER</literal> テーブル"
+"に対する 3 つの内部結合、1 つの外部結合、および 1 つの副選択を持つ SQL クエリ"
+"に変換されます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:465
@@ -1667,12 +2134,20 @@
 "PaymentStatus.UNPAID)\n"
 "order by account.type.sortOrder, account.accountNumber, payment.dueDate"
 msgstr ""
+"select account, payment\n"
+"from Account as account\n"
+"    join account.holder.users as user\n"
+"    left outer join account.payments as payment\n"
+"where :currentUser = user\n"
+"    and PaymentStatus.UNPAID = isNull(payment.currentStatus.name, "
+"PaymentStatus.UNPAID)\n"
+"order by account.type.sortOrder, account.accountNumber, payment.dueDate"
 
 #. Tag: title
 #: Query_ejbql.xml:466
 #, no-c-format
 msgid "Bulk UPDATE &amp; DELETE Statements"
-msgstr ""
+msgstr "Bulk UPDATE &amp; DELETE ステートメント"
 
 #. Tag: para
 #: Query_ejbql.xml:467
@@ -1681,18 +2156,21 @@
 "Hibernate now supports UPDATE and DELETE statements in HQL/EJB-QL. See <xref "
 "linkend=\"Batch_processing-Bulk_updatedelete\"/> for details."
 msgstr ""
+"Hibernate は HQL/EJB-QL で UPDATE ステートメントと DELETE ステートメントをサ"
+"ポートするようになりました。詳細については、<xref linkend=\"Batch_processing-"
+"Bulk_updatedelete\"/> を参照してください。"
 
 #. Tag: title
 #: Query_ejbql.xml:470
 #, no-c-format
 msgid "Tips &amp; Tricks"
-msgstr ""
+msgstr "ヒント"
 
 #. Tag: para
 #: Query_ejbql.xml:471
 #, no-c-format
 msgid "To order a result by the size of a collection, use the following query:"
-msgstr ""
+msgstr "コレクションのサイズで結果をソートするには、以下のクエリを使用します。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:474
@@ -1704,6 +2182,11 @@
 "group by usr.id, usr.name\n"
 "order by count(msg)"
 msgstr ""
+"select usr.id, usr.name\n"
+"from User as usr \n"
+"    left join usr.messages as msg\n"
+"group by usr.id, usr.name\n"
+"order by count(msg)"
 
 #. Tag: para
 #: Query_ejbql.xml:475
@@ -1712,19 +2195,21 @@
 "If your database supports subselects, you can place a condition upon "
 "selection size in the where clause of your query:"
 msgstr ""
+"データベースが副選択をサポートする場合は、クエリの where 節に選択サイズの条件"
+"を指定できます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:478
 #, no-c-format
 msgid "from User usr where size(usr.messages) &gt;= 1"
-msgstr ""
+msgstr "from User usr where size(usr.messages) &gt;= 1"
 
 #. Tag: para
 #: Query_ejbql.xml:479
 #, no-c-format
 msgid ""
 "If your database doesn&#39;t support subselects, use the following query:"
-msgstr ""
+msgstr "データベースが副選択をサポートしない場合は、以下のクエリを使用します。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:482
@@ -1736,6 +2221,11 @@
 "group by usr.id, usr.name\n"
 "having count(msg) &gt;= 1"
 msgstr ""
+"select usr.id, usr.name\n"
+"from User usr.name\n"
+"    join usr.messages msg\n"
+"group by usr.id, usr.name\n"
+"having count(msg) &gt;= 1"
 
 #. Tag: para
 #: Query_ejbql.xml:483
@@ -1744,6 +2234,8 @@
 "As this solution can&#39;t return a <literal>User</literal> with zero "
 "messages because of the inner join, the following form is also useful:"
 msgstr ""
+"このソリューションは、内部結合のためゼロメッセージとともに <literal>User</"
+"literal> を返すことができないため、以下のように記述することもできます。"
 
 #. Tag: programlisting
 #: Query_ejbql.xml:486
@@ -1755,3 +2247,8 @@
 "group by usr.id, usr.name\n"
 "having count(msg) = 0"
 msgstr ""
+"select usr.id, usr.name\n"
+"from User as usr\n"
+"    left join usr.messages as msg\n"
+"group by usr.id, usr.name\n"
+"having count(msg) = 0"

Modified: projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Query_native.po
===================================================================
--- projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Query_native.po	2008-08-11 03:18:06 UTC (rev 76878)
+++ projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Query_native.po	2008-08-11 03:26:42 UTC (rev 76879)
@@ -1,23 +1,27 @@
+# translation of Architecture.po to Japanese
 # Language /tmp/mike/JBEAP420/Entity translations for JBEAP package.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
 # Automatically generated, 2007.
-#
+# Kiyoto Hashida <khashida at redhat.com>, 2008.
 msgid ""
 msgstr ""
-"Project-Id-Version: JBEAP 420\n"
-"POT-Creation-Date: 2001-02-09 01:25+0100\n"
-"PO-Revision-Date: 2001-02-09 01:25+0100\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"Project-Id-Version: Architecture\n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
+"POT-Creation-Date: 2008-08-11 03:22+0000\n"
+"PO-Revision-Date: 2008-08-08 11:07+1000\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. Tag: title
 #: Query_native.xml:10
 #, no-c-format
 msgid "Native query"
-msgstr ""
+msgstr "ネイティブクエリ"
 
 #. Tag: para
 #: Query_native.xml:11
@@ -31,12 +35,19 @@
 "procedures) for all create, update, delete, and load operations (please "
 "refer to the reference guide for more information.)"
 msgstr ""
+"使用しているデータベースのネイティブ SQL ダイアレクトでクエリを表現すること"
+"も できます。これは、クエリヒントや Oracle 内の CONNECT BY オプションなどの "
+"データベース特定の機能を活用したい時に便利になります。それはまた、ダイレクト "
+"SQL/JDBC ベースのアプリケーションから Hibernate へのクリーンな移行パスも 提供"
+"します。Hibernate3 は、全ての作成、更新、削除、及びロードオペレーション用に "
+"手書きの SQL(ストアドプロシージャも含む) を指定できるようにします。(詳細に"
+"は リファレンスガイドを参照して下さい)"
 
 #. Tag: title
 #: Query_native.xml:14
 #, no-c-format
 msgid "Expressing the resultset"
-msgstr ""
+msgstr "resultset の表現"
 
 #. Tag: para
 #: Query_native.xml:15
@@ -48,6 +59,13 @@
 "literal> annotation. Each <literal>@SqlResultSetMapping </literal>has a name "
 "wich is used when creating a SQL query on <literal>EntityManager</literal>."
 msgstr ""
+"SQL クエリを使用するには、SQL resultset を記述する必要があります。この 記述"
+"は 使用するコラムを entity プロパティにマップするために "
+"<literal>EntityManager</literal> を支援する ようになります。それは "
+"<literal>@SqlResultSetMapping</literal> アノテーションの使用により達成されま"
+"す。 各 <literal>@SqlResultSetMapping </literal> には名前が1つあり、これが "
+"<literal>EntityManager</literal> 上で SQL クエリを作成している時に使用されま"
+"す。"
 
 #. Tag: programlisting
 #: Query_native.xml:18
@@ -74,6 +92,26 @@
 "    entities=@EntityResult(name=\"org.hibernate.test.annotations.query."
 "SpaceShip\"))"
 msgstr ""
+"@SqlResultSetMapping(name=\"GetNightAndArea\", entities={\n"
+"    @EntityResult(name=\"org.hibernate.test.annotations.query.Night\", "
+"fields = {\n"
+"        @FieldResult(name=\"id\", column=\"nid\"),\n"
+"        @FieldResult(name=\"duration\", column=\"night_duration\"),\n"
+"        @FieldResult(name=\"date\", column=\"night_date\"),\n"
+"        @FieldResult(name=\"area\", column=\"area_id\")\n"
+"    }),\n"
+"    @EntityResult(name=\"org.hibernate.test.annotations.query.Area\", fields "
+"= {\n"
+"        @FieldResult(name=\"id\", column=\"aid\"),\n"
+"        @FieldResult(name=\"name\", column=\"name\")\n"
+"    })\n"
+"    }\n"
+")\n"
+"\n"
+"//or\n"
+"@SqlResultSetMapping(name=\"defaultSpaceShip\",\n"
+"    entities=@EntityResult(name=\"org.hibernate.test.annotations.query."
+"SpaceShip\"))"
 
 #. Tag: para
 #: Query_native.xml:19
@@ -82,6 +120,8 @@
 "You can also define scalar results and even mix entity results and scalar "
 "results"
 msgstr ""
+"スカラ結果の定義付けをして、エンティティ結果とスカラ結果を混合することもでき"
+"ます。"
 
 #. Tag: programlisting
 #: Query_native.xml:22
@@ -107,6 +147,25 @@
 "    }\n"
 ")"
 msgstr ""
+"@SqlResultSetMapping(name=\"ScalarAndEntities\", \n"
+"    entities={\n"
+"        @EntityResult(name=\"org.hibernate.test.annotations.query.Night\", "
+"fields = {\n"
+"            @FieldResult(name=\"id\", column=\"nid\"),\n"
+"            @FieldResult(name=\"duration\", column=\"night_duration\"),\n"
+"            @FieldResult(name=\"date\", column=\"night_date\"),\n"
+"            @FieldResult(name=\"area\", column=\"area_id\")\n"
+"        }),\n"
+"        @EntityResult(name=\"org.hibernate.test.annotations.query.Area\", "
+"fields = {\n"
+"            @FieldResult(name=\"id\", column=\"aid\"),\n"
+"            @FieldResult(name=\"name\", column=\"name\")\n"
+"        })\n"
+"    },\n"
+"    columns={\n"
+"        @ColumnResult(name=\"durationInSec\")\n"
+"    }\n"
+")"
 
 #. Tag: para
 #: Query_native.xml:23
@@ -115,6 +174,8 @@
 "The SQL query will then have to return a column alias "
 "<literal>durationInSec</literal>."
 msgstr ""
+"SQL クエリはそれから、コラムエイリアス <literal>durationInSec</literal> を 返"
+"す必要があります。"
 
 #. Tag: para
 #: Query_native.xml:26
@@ -123,18 +184,20 @@
 "Please refer to the Hibernate Annotations reference guide for more "
 "information about <literal>@SqlResultSetMapping.</literal>"
 msgstr ""
+"<literal>@SqlResultSetMapping.</literal> についての詳細情報には、 Hibernate "
+"アノテーション リファレンスガイドを参照して下さい。"
 
 #. Tag: title
 #: Query_native.xml:29
 #, no-c-format
 msgid "Using native SQL Queries"
-msgstr ""
+msgstr "ネイティブ SQL クエリの使用"
 
 #. Tag: para
 #: Query_native.xml:30
 #, no-c-format
 msgid "TODO: This sounds like a dupe..."
-msgstr ""
+msgstr "TODO: これは騙しのように聞こえますが。。。 "
 
 #. Tag: para
 #: Query_native.xml:33
@@ -147,6 +210,13 @@
 "the same names as the one used in the mapping). A third one (not yet "
 "supported by Hibernate entity manager), returns pure scalar results."
 msgstr ""
+"これで、結果セットが記述されたので、ネイティブの SQL クエリを実行することが "
+"できるようになりました。<literal>EntityManager</literal> は全ての 必要な API "
+"を提供します。1つめの方法は SQL resultset の名前を使用してバインディングを "
+"することです。2つめの方法は entity デフォルトマッピングを使用することです。"
+"(返された コラムはマッピングで使用したものと同じ名前を持つ必要があります。)"
+"3つめの方法は (Hibernate entity manager でまだサポートがありませんが)純粋"
+"なスカラー結果を返します。"
 
 #. Tag: programlisting
 #: Query_native.xml:36
@@ -161,6 +231,14 @@
 "q.setParameter( 1, expectedDuration );\n"
 "q.getResultList();"
 msgstr ""
+"String sqlQuery = \"select night.id nid, night.night_duration, night."
+"night_date, area.id aid, \"\n"
+"    + \"night.area_id, area.name from Night night, Area area where night."
+"area_id = area.id \"\n"
+"    + \"and night.night_duration &gt;= ?\";\n"
+"Query q = entityManager.createNativeQuery(sqlQuery, \"GetNightAndArea\");\n"
+"q.setParameter( 1, expectedDuration );\n"
+"q.getResultList();"
 
 #. Tag: para
 #: Query_native.xml:37
@@ -169,6 +247,8 @@
 "This native query returns nights and area based on the "
 "<literal>GetNightAndArea</literal> result set."
 msgstr ""
+"このネイティブクエリは、<literal>GetNightAndArea</literal> の 結果セットを基"
+"にして夜とエリアを返します。"
 
 #. Tag: programlisting
 #: Query_native.xml:40
@@ -179,6 +259,10 @@
 "q.setParameter( 1, \"Han\" );\n"
 "q.getResultList();"
 msgstr ""
+"String sqlQuery = \"select * from tbl_spaceship where owner = ?\";\n"
+"Query q = entityManager.createNativeQuery(sqlQuery, SpaceShip.class);\n"
+"q.setParameter( 1, \"Han\" );\n"
+"q.getResultList();"
 
 #. Tag: para
 #: Query_native.xml:41
@@ -187,12 +271,14 @@
 "The second version is useful when your SQL query returns one entity reusing "
 "the same columns as the ones mapped in metadata."
 msgstr ""
+"2つめのバージョンは、使用中の SQL クエリがメタデータ内にマップしてある もの"
+"と同じコラムを再使用して1つの entity を返す時に役に立ちます。"
 
 #. Tag: title
 #: Query_native.xml:44
 #, no-c-format
 msgid "Named queries"
-msgstr ""
+msgstr "Named クエリ"
 
 #. Tag: para
 #: Query_native.xml:45
@@ -202,6 +288,9 @@
 "Your code doesn&#39;t need to know the difference between the two. This is "
 "very useful for migration from SQL to EJB-QL:"
 msgstr ""
+"ネイティブの named クエリは、EJB-QL named クエリではなく、同じ呼び出しの API "
+"を共有します。ご使用のコードはこの二者間の相違を認識する必要はありません。 こ"
+"のことは SQL から EJB-QL へ移行のために便利になります。"
 
 #. Tag: programlisting
 #: Query_native.xml:48
@@ -211,3 +300,6 @@
 "q.setParameter( 1, name );\n"
 "Season season = (Season) q.getSingleResult();"
 msgstr ""
+"Query q = entityManager.createNamedQuery(\"getSeasonByNativeQuery\");\n"
+"q.setParameter( 1, name );\n"
+"Season season = (Season) q.getSingleResult();"

Modified: projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Transactions.po
===================================================================
--- projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Transactions.po	2008-08-11 03:18:06 UTC (rev 76878)
+++ projects/docs/enterprise/4.3/Hibernate/Entity_Manager_User_Guide/ja-JP/Transactions.po	2008-08-11 03:26:42 UTC (rev 76879)
@@ -1,23 +1,27 @@
+# translation of Architecture.po to Japanese
 # Language /tmp/mike/JBEAP420/Entity translations for JBEAP package.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
 # Automatically generated, 2007.
-#
+# Kiyoto Hashida <khashida at redhat.com>, 2008.
 msgid ""
 msgstr ""
-"Project-Id-Version: JBEAP 420\n"
-"POT-Creation-Date: 2001-02-09 01:25+0100\n"
-"PO-Revision-Date: 2001-02-09 01:25+0100\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"Project-Id-Version: Architecture\n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
+"POT-Creation-Date: 2008-08-11 03:22+0000\n"
+"PO-Revision-Date: 2008-08-08 11:07+1000\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. Tag: title
 #: Transactions.xml:10
 #, no-c-format
 msgid "Transactions and Concurrency"
-msgstr ""
+msgstr "トランザクションと並行性"
 
 #. Tag: para
 #: Transactions.xml:11
@@ -33,6 +37,14 @@
 "database transactions. Basically, use Hibernate Entity Manager like you "
 "would use direct JDBC (or JTA/CMT) with your database resources."
 msgstr ""
+"Hibernate Entity Manager と並行性制御に関する最も重要な点はその理解のしやすさ"
+"です。Hibernate Entity Manager は、追加のロック動作を伴わずに JDBC 接続と "
+"JTA リソースを直接使用します。JDBC、ANSI、使用しているデータベース管理システ"
+"ムのトランザクション分離の仕様について調べることをお薦めします。Hibernate "
+"Entity Manager は自動バージョン管理のみを追加し、メモリ内のオブジェクトをロッ"
+"クしたり、使用しているデータベーストランザクションの分離レベルを変更したりし"
+"ません。基本的に、使用しているデータベースリソースで直接 JDBC (または JTA/"
+"CMT) を使用する場合と同様に Hibernate Entity Manager を使用してください。"
 
 #. Tag: para
 #: Transactions.xml:14
@@ -43,6 +55,9 @@
 "<literal>EntityManager</literal>, as well as database transactions and long "
 "units of work.."
 msgstr ""
+"Hibernate での並行性制御に関して、まず <literal>EntityManagerFactory</"
+"literal> と <literal>EntityManager</literal> の細分性、およびデータベーストラ"
+"ンザクションと長い作業単位について説明します。"
 
 #. Tag: para
 #: Transactions.xml:17
@@ -57,12 +72,20 @@
 "entity manager. Please refer to <xref linkend=\"EJB_container_environment-"
 "Persistence_context_scope\"/> for more information."
 msgstr ""
+"この章では、特に明示的に示されてない限り、エンティティマネージャと永続コンテ"
+"キストの概念を同じものとして扱います。一方は API とプログラミングオブジェクト"
+"であり、もう一方はスコープの定義ですが、基本的な違いがあります。通常、永続コ"
+"ンテキストは Java EE で JTA トランザクションにバインドされ、拡張されたエン"
+"ティティマネージャを使用しない限り永続コンテキストはトランザクション境界 (ト"
+"ランザクションスコープ) で開始および終了します。詳細については、<xref "
+"linkend=\"EJB_container_environment-Persistence_context_scope\"/> を参照して"
+"ください。"
 
 #. Tag: title
 #: Transactions.xml:20
 #, no-c-format
 msgid "Entity manager and transaction scopes"
-msgstr ""
+msgstr "エンティティマネージャとトランザクションスコープ"
 
 #. Tag: para
 #: Transactions.xml:21
@@ -72,6 +95,9 @@
 "threadsafe object intended to be shared by all application threads. It is "
 "created once, usually on application startup."
 msgstr ""
+"<literal>EntityManagerFactory</literal> はすべてのアプリケーションスレッドに"
+"より共有することが目的の作成にコストがかかるスレッドセーフオブジェクトです。"
+"通常は、アプリケーション起動時に 1 度だけ作成されます。"
 
 #. Tag: para
 #: Transactions.xml:24
@@ -87,6 +113,14 @@
 "soon as you are implementing some of the following patterns using request "
 "interception.)"
 msgstr ""
+"<literal>EntityManager</literal> は、単一のビジネスプロセスと単一の作業単位に"
+"対して 1 度だけ使用し、破棄するコストがかからない非スレッドセーフオブジェクト"
+"です。<literal>EntityManager</literal> は必要でない限り JDBC "
+"<literal>Connection</literal> (または、<literal>Datasource</literal>) を取得"
+"しないため、特定の要求に対応するためにデータアクセスが必要かどうかわからない"
+"場合でも <literal>EntityManager</literal> を安全にオープンまたはクローズでき"
+"ます (これは、要求インターセプトを使用して以下の一部のパターンを実装する場合"
+"に重要になります)。"
 
 #. Tag: para
 #: Transactions.xml:27
@@ -97,6 +131,10 @@
 "contention in the database. Long database transactions will prevent your "
 "application from scaling to highly concurrent load."
 msgstr ""
+"これを実現するには、データベーストランザクションについても考える必要がありま"
+"す。データベーストランザクションはできるだけ短くし、データベースでロックが競"
+"合する可能性を減らす必要があります。データベーストランザクションが長いと、ア"
+"プリケーションが高い並行性を持つロードにスケーリングされなくなります。"
 
 #. Tag: para
 #: Transactions.xml:30
@@ -108,12 +146,17 @@
 "<literal>Session</literal> and how do you demarcate the database transaction "
 "boundaries?"
 msgstr ""
+"作業単位のスコープはなんですか? 単一の Hibernate <literal>EntityManager</"
+"literal> が複数のデータベーストランザクションに対応できますか、あるいはこれは"
+"スコープの 1 対 1 の関係ですか? いつ <literal>Session</literal> をオープンお"
+"よびクローズすべきですか、また、データベーストランザクション境界をどのように"
+"設定しますか?"
 
 #. Tag: title
 #: Transactions.xml:33
 #, no-c-format
 msgid "Unit of work"
-msgstr ""
+msgstr "作業単位"
 
 #. Tag: para
 #: Transactions.xml:34
@@ -128,6 +171,14 @@
 "is useless in an application, this mode is intended for ad-hoc SQL console "
 "work.)"
 msgstr ""
+"最初に、<emphasis>entitymanager-per-operation</emphasis> アンチパターンを使用"
+"しないでください。つまり、単一のスレッドで各データベース呼び出しに対して "
+"<literal>EntityManager</literal> をオープンおよびクローズしないでください。当"
+"然、データベーストランザクションの場合も同様です。アプリケーションのデータ"
+"ベース呼び出しは、計画された順序で行われ、アトミックな作業単位を使用してグ"
+"ループ分けされます (これは、各 SQL ステートメント実行後の自動コミットがアプリ"
+"ケーションで必要ないことを意味します。このモードは一時的な SQL コンソールでの"
+"作業に向いています)。"
 
 #. Tag: para
 #: Transactions.xml:37
@@ -144,6 +195,15 @@
 "clients request. The relationship between the two is one-to-one and this "
 "model is a perfect fit for many applications."
 msgstr ""
+"マルチユーザークライアント/サーバーアプリケーションでの最も一般的なパターン"
+"は <emphasis>entitymanager-per-request</emphasis> です。このモデルでは、クラ"
+"イアントからの要求がサーバー (EJB3 永続レイヤーが稼働しているサーバー) に送信"
+"され、新しい <literal>EntityManager</literal> がオープンし、この作業単位です"
+"べてのデータベース操作が実行されます。作業が終了すると (クライアントへの応答"
+"が準備されると)、永続コンテキストとエンティティマネージャがフラッシュされク"
+"ローズされます。また、クライアント要求に答える単一のデータベーストランザク"
+"ションも使用できます。これら 2 つの関係は 1 対 1 であり、このモデルは多くのア"
+"プリケーションに完全に適合します。"
 
 #. Tag: para
 #: Transactions.xml:40
@@ -156,6 +216,12 @@
 "that anymore and just see data access through entity manager and demaraction "
 "of transaction scope on session beans as completely orthogonal."
 msgstr ""
+"これは、Java EE 環境のデフォルトの EJB3 永続モデルです (JTA バインド、トラン"
+"ザクションスコープ永続コンテキスト)。挿入された (または検索された) エンティ"
+"ティマネージャは特定の JTA トランザクションに対して同じ永続コンテキストを共有"
+"します。EJB3 の利点は、このことを気にせずに、エンティティマネージャからのデー"
+"タアクセスとセッション bean のトランザクションスコープの境界設定を完全な直交"
+"としてみなすだけでよいことです。"
 
 #. Tag: para
 #: Transactions.xml:43
@@ -184,12 +250,33 @@
 "again, remember that your first choice is naturally an EJB3 container - "
 "preferably a light and modular one such as JBoss application server."
 msgstr ""
+"EJB3 コンテナ外部にこの (および他の) 動作を実装することは困難です。"
+"<literal>EntityManager</literal> とリソースローカルトランザクションを正常に起"
+"動および終了する必要があるだけでなく、これらがデータアクセス操作でアクセス可"
+"能である必要があります。作業単位の境界は、理想的には要求が非 EJB3 コンテナ"
+"サーバーに到達し、応答が送信される前に実行されるインターセプタを使用して実装"
+"されます (たとえば、スタンドアロンサーブレットコンテナを使用している場合は "
+"<literal>ServletFilter</literal>)。<literal>ThreadLocal</literal> 変数を使用"
+"し、要求に答えるスレッドに <literal>EntityManager</literal> をバインドするこ"
+"とをお薦めします。これにより、このスレッドで実行されるすべてのコードでアクセ"
+"スを (静的変数にアクセスするように) 簡単に行えるようになります。選択したデー"
+"タベーストランザクション境界メカニズムに応じて、トランザクションコンテキスト"
+"を <literal>ThreadLocal</literal> 変数に保持することもできます。これに対する"
+"実装パターンは Hibernate コミュニティでは <emphasis>ThreadLocal Session</"
+"emphasis> と <emphasis>Open Session in View</emphasis> として知られています。"
+"このパターンを実装するために、Hibernate リファレンスドキュメントに示されてい"
+"る <literal>HibernateUtil</literal> を簡単に拡張できます。外部ソフトウェアは"
+"必要ありません (実際にはこのことは重要ではありません)。当然のことながら、イン"
+"ターセプタを実装し、自分の環境で設定する方法を見つける必要があります。ヒント"
+"と例については、Hibernate の Web サイトを参照してください。もう一度いいます"
+"が、最初は当然 EJB3 コンテナ (理想的には JBoss アプリケーションサーバーなどの"
+"単純でモジュール形式のもの) を選択してください。"
 
 #. Tag: title
 #: Transactions.xml:46
 #, no-c-format
 msgid "Long units of work"
-msgstr ""
+msgstr "長い作業単位"
 
 #. Tag: para
 #: Transactions.xml:47
@@ -202,6 +289,12 @@
 "span a user interaction with possibly long waiting time between requests. "
 "Consider the following example:"
 msgstr ""
+"1 つの要求あたり 1 つのエンティティマネージャのパターンは、作業単位を設計する"
+"のに使用できる唯一の役に立つコンセプトではありません。多くのビジネスプロセス"
+"は、データベースアクセスを介したユーザーとの一連の対話を必要とします。Web と"
+"エンタープライズアプリケーションでは、データベーストランザクションで、場合に"
+"よっては要求と要求の間に長い待機時間を伴うユーザーとの対話は許容されません。"
+"以下の例を考えてください。"
 
 #. Tag: para
 #: Transactions.xml:52
@@ -211,6 +304,9 @@
 "loaded in a particular <literal>EntityManager</literal> and resource-local "
 "transaction. The user is free to modify the detached objects."
 msgstr ""
+"ダイアログの最初の画面が表示され、ユーザーが参照するデータが特定の "
+"<literal>EntityManager</literal> とリソースローカルトランザクションにロードさ"
+"れます。ユーザーは接続解除されたオブジェクトを自由に変更できます。"
 
 #. Tag: para
 #: Transactions.xml:57
@@ -220,6 +316,9 @@
 "made persistent; he also expects that he was the only person editing this "
 "information and that no conflicting modification can occur."
 msgstr ""
+"5 分後にユーザーが \"Save\" をクリックし、変更内容が反映されるようにします。"
+"また、ユーザーはこの情報を編集しているのがユーザーだけであり、変更の競合が発"
+"生しないことを期待します。"
 
 #. Tag: para
 #: Transactions.xml:62
@@ -229,6 +328,9 @@
 "running <emphasis>application transaction</emphasis>. There are many ways "
 "how you can implement this in your application."
 msgstr ""
+"これは、ユーザーの観点からは作業単位 (長く実行されているアプリケーショントラ"
+"ンザクション) と呼ばれます。これをアプリケーションに実装するには多くの方法が"
+"あります。"
 
 #. Tag: para
 #: Transactions.xml:65
@@ -241,6 +343,12 @@
 "lock contention would not allow the application to scale with the number of "
 "concurrent users."
 msgstr ""
+"経験がない場合は、最初に、ユーザーが考えてる間 <literal>EntityManager</"
+"literal> とデータベーストランザクションをオープンの状態にするよう実装してしま"
+"うかもしれません。この場合は、変更が同時に行われることを防ぎ、分離と原子性を"
+"保証するためにデータベースにロックがかかります。これは、ロックの競合によりア"
+"プリケーションがたくさんの同時ユーザーに対応できないため、当然アンチパターン"
+"で悲観的なアプローチです。"
 
 #. Tag: para
 #: Transactions.xml:68
@@ -256,6 +364,15 @@
 "implement than it might sound, especially if you use EJB3 entity manager and "
 "persistence context features:"
 msgstr ""
+"当然、アプリケーショントランザクションを実装するには複数のデータベーストラン"
+"ザクションを使用する必要があります。この場合、アプリケーション層は部分的にビ"
+"ジネスプロセスの分離に責任があります。通常、1 つのアプリケーショントランザク"
+"ションには、複数のデータベーストランザクションが関係します。これらのデータ"
+"ベーストランザクションの 1 つ (最後のトランザクション) が更新されたデータを格"
+"納する場合に、他のすべてのトランザクションが単にデータを読み取る (たとえば、"
+"複数の要求/応答サイクルに関係するウィザード形式のダイアログで行う) 場合は、原"
+"子性があるといえます。これは、特に EJB3 エンティティマネージャと永続コンテキ"
+"スト機能を使用している場合は考えているよりも簡単に実装できます。"
 
 #. Tag: para
 #: Transactions.xml:73
@@ -267,6 +384,11 @@
 "by comparing version numbers or timestamps when updating the data in the "
 "final resource-local transaction)."
 msgstr ""
+"<emphasis>自動バージョン管理</emphasis> - エンティティマネージャには自動オプ"
+"ティミスティック並行性制御が含まれます。エンティティマネージャは、ユーザーが"
+"考えているときに同時変更が行われたかどうかを自動的に検出します (通常は、最後"
+"のリソースローカルトランザクションでのデータの更新時にバージョン番号またはタ"
+"イムスタンプを比較します)。"
 
 #. Tag: para
 #: Transactions.xml:78
@@ -280,6 +402,13 @@
 "with-detached-entities</emphasis>. Automatic versioning is used to isolate "
 "concurrent modifications."
 msgstr ""
+"<emphasis>接続解除されたエンティティ</emphasis> - すでに説明した "
+"<emphasis>entity-per-request</emphasis> パターンを使用する場合、ロードされた"
+"すべてのインスタンスはユーザーが考えている時間は接続解除された状態になりま"
+"す。エンティティマネージャでは、接続解除された (変更された) 状態をマージし、"
+"変更を永続化できます。このパターンは <emphasis>entitymanager-per-request-"
+"with-detached-entities</emphasis> と呼ばれます。自動バージョン管理は同時変更"
+"を分離するために使用されます。"
 
 #. Tag: para
 #: Transactions.xml:83
@@ -296,6 +425,15 @@
 "queued modifications. Automatic versioning is used to isolate concurrent "
 "modifications."
 msgstr ""
+"<emphasis>拡張 Entity Manager</emphasis> - Hibernate Entity Manager は、2 つ"
+"のクライアント呼び出しの間に基礎となる JDBC 接続から接続解除し、新しいクライ"
+"アント要求が発生したときに再び接続できます。このパターンは "
+"<emphasis>entitymanager-per-application-transaction</emphasis> と呼ばれ、マー"
+"ジは不必要になります。拡張された永続コンテキストはトランザクション外で行われ"
+"たすべての変更 (永続化、マージ、削除) を収集および保持します。アクティブなト"
+"ランザクション内で次のクライアント呼び出しが発生すると (通常はユーザー対話の"
+"最後の操作)、キューで待機状態のすべての変更が実行されます。自動バージョン管理"
+"は、同時変更を分離するために使用されます。"
 
 #. Tag: para
 #: Transactions.xml:88
@@ -306,18 +444,22 @@
 "advantages and disadvantages, we discuss them later in this chapter in the "
 "context of optimistic concurrency control."
 msgstr ""
+"<emphasis>entitymanager-per-request-with-detached-objects</emphasis> と "
+"<emphasis>entitymanager-per-application-transaction</emphasis> には、利点と欠"
+"点があります。このことについては、この章のオプティミスティック並行性制御に関"
+"する記述で説明します。"
 
 #. Tag: para
 #: Transactions.xml:91
 #, no-c-format
 msgid "TODO: This note should probably come later."
-msgstr ""
+msgstr "  "
 
 #. Tag: title
 #: Transactions.xml:94
 #, no-c-format
 msgid "Considering object identity"
-msgstr ""
+msgstr "オブジェクト ID の考慮"
 
 #. Tag: para
 #: Transactions.xml:95
@@ -328,30 +470,34 @@
 "never shared between two persistence contexts. Hence there are two different "
 "notions of identity:"
 msgstr ""
+"アプリケーションは 2 つの異なる永続コンテキストの同じ永続ステータスに同時にア"
+"クセスできます。ただし、管理されたクラスのインスタンスは 2 つの永続コンテキス"
+"ト間では共有されません。したがって、ID の表記には以下の 2 つの種類がありま"
+"す。"
 
 #. Tag: term
 #: Transactions.xml:100
 #, no-c-format
 msgid "Database Identity"
-msgstr ""
+msgstr "データベース ID"
 
 #. Tag: literal
 #: Transactions.xml:103
 #, no-c-format
 msgid "foo.getId().equals( bar.getId() )"
-msgstr ""
+msgstr "foo.getId().equals( bar.getId() )"
 
 #. Tag: term
 #: Transactions.xml:108
 #, no-c-format
 msgid "JVM Identity"
-msgstr ""
+msgstr "JVM ID"
 
 #. Tag: literal
 #: Transactions.xml:111
 #, no-c-format
 msgid "foo==bar"
-msgstr ""
+msgstr "foo==bar"
 
 #. Tag: para
 #: Transactions.xml:116
@@ -366,6 +512,13 @@
 "\"different\" (JVM identity). Conflicts are resolved using (automatic "
 "versioning) at flush/commit time, using an optimistic approach."
 msgstr ""
+"<emphasis></emphasis>特定の永続コンテキスト (<literal>EntityManager</"
+"literal> のスコープ内) に接続されたオブジェクトの場合、2 つの表記は同じにな"
+"り、データベース ID に対する JVM ID は Hibernate Entity Manager によって保証"
+"されます。ただし、アプリケーションが 2 つの異なる永続コンテキストの「同じ」 "
+"(永続 ID) ビジネスオブジェクトに同時にアクセスできる一方で、実際には2 つのイ"
+"ンスタンスは異なります (JVM ID)。コンフリクトはフラッシュ/コミット時にオプ"
+"ティミスティックアプローチを使用して解決されます (自動バージョン管理を使用)。"
 
 #. Tag: para
 #: Transactions.xml:119
@@ -379,6 +532,13 @@
 "<literal>EntityManager</literal>. Within a persistence context, the "
 "application may safely use <literal>==</literal> to compare entities."
 msgstr ""
+"このアプローチでは、並行性については Hibernate とデータベースに任せることにな"
+"ります。また、単一のスレッド化された作業単位で ID を保証するにはコストがかか"
+"るロックまたは他の同期の手段が必要となるため、最良のスケーラビリティが提供さ"
+"れます。1 つの <literal>EntityManager</literal> に対して 1 つのスレッドを使用"
+"する限り、アプリケーションはどのビジネスオブジェクトでも同期する必要がありま"
+"せん。永続コンテキスト内で、アプリケーションはエンティティを比較する"
+"「<literal>==</literal>」を安全に使用できます。"
 
 #. Tag: para
 #: Transactions.xml:122
@@ -405,12 +565,32 @@
 "that this is not a Hibernate issue, but simply how Java object identity and "
 "equality has to be implemented."
 msgstr ""
+"ただし、永続コンテキストの外部で「<literal>==</literal>」を使用するアプリケー"
+"ションでは予期しない結果が起こることがあります。これは、一部の予期しない場合"
+"にも起こります。たとえば、2 つの接続解除されたインスタンスを同じ "
+"<literal>Set</literal> に格納した場合などです。両方とも同じデータベース ID を"
+"持ちますが (つまり、同じ行を表す)、JVM ID は定義により接続解除された状態のイ"
+"ンスタンスに対して保証されません。開発者は永続クラスで <literal>equals()</"
+"literal> メソッドと <literal>hashCode()</literal> メソッドをオーバライドし、"
+"オブジェクト等価性の独自の表記を実装する必要があります。ここで注意すべきこと"
+"は、等価性を実装するためにデータベース ID を使用せず、ビジネスキー (通常は変"
+"更されない一意の属性の組み合わせ) を使用することです。データベース ID は、一"
+"時エンティティが永続化された場合に変わります (<literal>persist()</literal> 操"
+"作のコントラクトを参照)。一時インスタンス (通常は接続解除されたインスタンスと"
+"ともに使用) が <literal>Set</literal> に格納される場合は、ハッシュコードを変"
+"更すると<literal>Set</literal> のコントラクトが破壊されます。優れたビジネス"
+"キーの属性はデータベースのプライマリキーほど安定的である必要はありません。オ"
+"ブジェクトが同じ <literal>Set</literal> に含まれる場合にのみ安定性を保証する"
+"必要があります。この問題の詳細については、Hibernate の Web サイトを参照してく"
+"ださい。また、これは Hibernate の問題ではなく、単に Java オブジェクト ID と等"
+"価性をどのように実装しなければならないかという問題であることに注意してくださ"
+"い。"
 
 #. Tag: title
 #: Transactions.xml:125
 #, no-c-format
 msgid "Common concurrency control issues"
-msgstr ""
+msgstr "一般的な並行性制御の問題"
 
 #. Tag: para
 #: Transactions.xml:126
@@ -424,6 +604,12 @@
 "appear with the recommended patterns, make sure you understand the "
 "implications before making a design decision:"
 msgstr ""
+"アンチパターン <emphasis>entitymanager-per-user-session</emphasis> または "
+"<emphasis>entitymanager-per-application</emphasis> を使用しないでください (当"
+"然、このルールには例外があります。たとえば、永続コンテキストを手動でフラッ"
+"シュして entitymanager-per-application をデスクトップアプリケーションで使用可"
+"能にする場合など)。また、推奨されたパターンで以下の問題がいくつか生じることが"
+"あります。設計に関する決定を下す前にその影響について理解してください。"
 
 #. Tag: para
 #: Transactions.xml:131
@@ -439,6 +625,15 @@
 "concurrently running threads. You will very likely have provisions for this "
 "case already in place, for other non-threadsafe but session-scoped objects."
 msgstr ""
+"エンティティマネージャはスレッドセーフではありません。"
+"<literal>EntityManager</literal> インスタンスを共有する場合は、HTTP 要求、"
+"セッション Bean、Swing ワーカーなどの同時に動作するものにより、競合が発生しま"
+"す。Hibernate <literal>EntityManager</literal> を <literal>HttpSession</"
+"literal> (後述) に保持する場合は、Http セッションへのアクセスを同期することを"
+"考慮する必要があります。そもないと、リロードを素早くクリックしたユーザーが同"
+"じ 2 つの同時実行スレッドで同じ <literal>EntityManager</literal>を使用するこ"
+"とがあります。他の非スレッドセーフでセッションスコープのオブジェクトの場合"
+"は、すでにこれに該当している可能性が高くなります。"
 
 #. Tag: para
 #: Transactions.xml:136
@@ -455,6 +650,14 @@
 "recoverable and you have to start over your unit of work after rollback "
 "anyway."
 msgstr ""
+"Entity Manager によってスローされた例外は、データベーストランザクションをロー"
+"ルバックし、<literal>EntityManager</literal> をすぐに閉じなければならないこと"
+"を意味します (後述)。<literal>EntityManager</literal> がアプリケーションにバ"
+"インドされる場合は、アプリケーションを停止する必要があります。データベースト"
+"ランザクションをロールバックすると、ビジネスオブジェクトがトランザクションの"
+"開始時の状態に戻りません。つまり、データベースの状態とビジネスオブジェクトが"
+"同期されません。例外は復元可能ではなく、ロールバック後は作業単位をやり直す必"
+"要があるため、通常これは問題になりません。"
 
 #. Tag: para
 #: Transactions.xml:141
@@ -472,12 +675,23 @@
 "probability of stale data, which you have to know about and control "
 "appropriately."
 msgstr ""
+"永続コンテキストは、管理された状態にある各オブジェクトをキャッシュします "
+"(Hibernate がダーティな状態を監視およびチェックします)。これは、長い間オープ"
+"ンにしたり、非常にたくさんのデータを単にロードしたりした場合に "
+"<classname>OutOfMemoryException</classname> が発生するまで引き続きデータが大"
+"きくなることを意味します。この問題の 1 つの解決策は永続コンテキストの定期的な"
+"フラッシュの一種のバッチ処理ですが、大量のデータ処理が必要な場合は、データ"
+"ベースのストアドプロシージャの使用を検討してください。この問題の解決策のいく"
+"つかは <xref linkend=\"Batch_processing\"/> に示されています。また、ユーザー"
+"セッションの間永続コンテキストをオープンにしたままだと、不整合なデータが発生"
+"する可能性が高くなります (この問題について調べ、適切に対処する必要がありま"
+"す)。"
 
 #. Tag: title
 #: Transactions.xml:146
 #, no-c-format
 msgid "Database transaction demarcation"
-msgstr ""
+msgstr "データベーストランザクションの境界"
 
 #. Tag: para
 #: Transactions.xml:147
@@ -493,6 +707,14 @@
 "transaction, though, when you&#39;ll need to retain modifications in an "
 "<literal>EXTENDED</literal> persistence context."
 msgstr ""
+"データベース (またはシステム) トランザクション境界は常に必要です。データベー"
+"ストランザクションの外部ではデータベースとの通信を行うことができません (多く"
+"の開発者は自動コミットモードに慣れているため混乱します)。読み取り専用操作の場"
+"合であっても常に明確なトランザクション境界を使用してください。分離レベルと"
+"データベースの機能に応じて、これは必要にならない場合もありますが、常にトラン"
+"ザクションの境界を明示的に設定しても問題ありません。<literal>EXTENDED</"
+"literal> 永続コンテキストで変更を保持する必要がある場合は、トランザクションの"
+"外部で操作を実行する必要があります。"
 
 #. Tag: para
 #: Transactions.xml:150
@@ -509,12 +731,22 @@
 "Programmatic transaction demarcation is then no longer necessary, even "
 "flushing the <literal>EntityManager</literal> is done automatically."
 msgstr ""
+"EJB3 アプリケーションは、管理されてない (スタンドアロン、単純な Web アプリ"
+"ケーション、または Swing アプリケーション) J2EE 環境と管理された J2EE 環境で"
+"実行できます。管理されていない環境では、通常 <literal>EntityManagerFactory</"
+"literal> が独自のデータベース接続プールを処理します。アプリケーション開発者"
+"は、手動でトランザクション境界を設定する必要があります。つまり、自分でデータ"
+"ベーストランザクションの開始、コミット、またはロールバックを実行する必要があ"
+"ります。管理された環境は通常コンテナ管理トランザクションを提供し、トランザク"
+"ションアセンブリが EJB セッション Bean などのアノテーションを介して宣言されま"
+"す。プログラムによるトランザクション境界設定は、<literal>EntityManager</"
+"literal> のフラッシュが自動的に行われた場合であっても必要なくなります。"
 
 #. Tag: para
 #: Transactions.xml:153
 #, no-c-format
 msgid "Usually, ending a unit of work involves four distinct phases:"
-msgstr ""
+msgstr "通常、作業単位の終了には 4 つの明確な段階があります。"
 
 #. Tag: para
 #: Transactions.xml:158
@@ -523,6 +755,8 @@
 "commit the (resource-local or JTA) transaction (this automatically flushes "
 "the entity manager and persistence context)"
 msgstr ""
+"(リソースローカルまたは JTA) トランザクションのコミット (エンティティマネー"
+"ジャと永続コンテキストが自動的にフラッシュされます)"
 
 #. Tag: para
 #: Transactions.xml:163
@@ -530,12 +764,14 @@
 msgid ""
 "close the entity manager (if using an application-managed entity manager)"
 msgstr ""
+"エンティティマネージャのクローズ (アプリケーション管理エンティティマネージャ"
+"を使用している場合)"
 
 #. Tag: para
 #: Transactions.xml:168
 #, no-c-format
 msgid "handle exceptions"
-msgstr ""
+msgstr "例外処理"
 
 #. Tag: para
 #: Transactions.xml:173
@@ -544,12 +780,14 @@
 "We&#39;ll now have a closer look at transaction demarcation and exception "
 "handling in both managed- and non-managed environments."
 msgstr ""
+"ここでは、管理された環境と管理されていない環境の両方でのトランザクション境界"
+"設定と例外処理について説明します。"
 
 #. Tag: title
 #: Transactions.xml:176
 #, no-c-format
 msgid "Non-managed environment"
-msgstr ""
+msgstr "管理されていない環境"
 
 #. Tag: para
 #: Transactions.xml:177
@@ -560,6 +798,9 @@
 "the scenes. The common entity manager and transaction handling idiom looks "
 "like this:"
 msgstr ""
+"EJB3 永続レイヤが管理されていない環境で実行されている場合、通常データベース接"
+"続は Hibernate のプーリングメカニズムによって自動的に処理されます。エンティ"
+"ティマネージャとトランザクション処理の一般的なコードは以下のようになります。"
 
 #. Tag: programlisting
 #: Transactions.xml:180
@@ -585,6 +826,25 @@
 "    em.close();\n"
 "}"
 msgstr ""
+"// Non-managed environment idiom\n"
+"EntityManager em = emf.createEntityManager();\n"
+"EntityTransaction tx = null;\n"
+"try {\n"
+"    tx = em.getTransaction();\n"
+"    tx.begin();\n"
+"\n"
+"    // 何らかの処理を行う\n"
+"    ...\n"
+"\n"
+"    tx.commit();\n"
+"}\n"
+"catch (RuntimeException e) {\n"
+"    if ( tx != null &amp;&amp; tx.isActive() ) tx.rollback();\n"
+"    throw e; // or display error message\n"
+"}\n"
+"finally {\n"
+"    em.close();\n"
+"}"
 
 #. Tag: para
 #: Transactions.xml:181
@@ -594,6 +854,9 @@
 "literal> explicitly - the call to <literal>commit()</literal> automatically "
 "triggers the synchronization."
 msgstr ""
+"<literal>EntityManager</literal> に対して明示的に <literal>flush()</literal> "
+"を実行する必要はありません。<literal>commit()</literal> の呼び出しにより同期"
+"が自動的にトリガされます。"
 
 #. Tag: para
 #: Transactions.xml:184
@@ -604,6 +867,9 @@
 "literal> is the release of resources - make sure you always close and never "
 "outside of guaranteed finally block."
 msgstr ""
+"<literal>close()</literal> を呼び出すと、<literal>EntityManager</literal> が"
+"終了します。<literal>close()</literal> の主な目的はリソースの解放です。常にク"
+"ローズし、保証された finally ブロックの外部に出ないようにしてください。"
 
 #. Tag: para
 #: Transactions.xml:187
@@ -618,12 +884,19 @@
 "container services whenever they are available. Exception handling is "
 "discussed later in this chapter."
 msgstr ""
+"通常のアプリケーションでは、ビジネスコードでこのイディオムが使用されることは"
+"ほとんどありません。重大な (システム) 例外は常に「上部」で捕捉しなければなり"
+"ません。つまり、エンティティマネージャ呼び出しを実行するコード (永続レイヤ) "
+"と <literal>RuntimeException</literal> を処理するコード (通常、その他にクリー"
+"ンアップと終了のみ実行できます) は異なるレイヤに存在します。これにより設計は"
+"困難になります。できるだけ J2EE/EJB コンテナサービスを使用してください。例外"
+"処理については、この章の後半で説明します。"
 
 #. Tag: title
 #: Transactions.xml:190
 #, no-c-format
 msgid "EntityTransaction"
-msgstr ""
+msgstr "EntityTransaction"
 
 #. Tag: para
 #: Transactions.xml:191
@@ -633,6 +906,9 @@
 "transaction in your environment. Simply use transaction declaration or the "
 "JTA APIs."
 msgstr ""
+"JTA 環境では、使用している環境のトランザクションと対話するために API を追加す"
+"る必要がありません。単にトランザクション宣言または JTA API を使用してくださ"
+"い。"
 
 #. Tag: para
 #: Transactions.xml:194
@@ -653,6 +929,20 @@
 "will try to rollback the transaction and raise a <literal>javax.transaction."
 "RollbackException</literal>."
 msgstr ""
+"<literal>RESOURCE_LOCAL</literal> エンティティマネージャを使用している場合"
+"は、<literal>EntityTransaction</literal> API を使用してトランザクション境界を"
+"設定する必要があります。<literal>EntityTransaction</literal> は "
+"<literal>entityManager.getTransaction()</literal> を介して取得できます。この "
+"<literal>EntityTransaction</literal> API は通常の <methodname>begin()</"
+"methodname> メソッド、<methodname>commit()</methodname> メソッド、"
+"<methodname>rollback()</methodname> メソッド、<methodname>isActive()</"
+"methodname> メソッドを提供します。また、この API を使用すると、トランザクショ"
+"ンをロールバックのみに指定し、トランザクションがロールバックすることを強制で"
+"きます。これは、JTA 操作 <methodname>setRollbackOnly()</methodname> に非常に"
+"似ています。<literal>commit()</literal> 操作が失敗した場合、またはトランザク"
+"ションが <literal>setRollbackOnly()</literal> として指定された場合は、"
+"<literal>commit()</literal> メソッドがトランザクションをロールバックしようと"
+"し、<literal>javax.transaction.RollbackException</literal> を発生させます。"
 
 #. Tag: para
 #: Transactions.xml:197
@@ -661,12 +951,14 @@
 "In a <literal>JTA</literal> entity manager, <literal>entityManager."
 "getTransaction()</literal> calls are not permitted."
 msgstr ""
+"<literal>JTA</literal> エンティティマネージャでは、<literal>entityManager."
+"getTransaction()</literal> 読み出しは許可されません。"
 
 #. Tag: title
 #: Transactions.xml:200
 #, no-c-format
 msgid "Using JTA"
-msgstr ""
+msgstr "JTA の使用"
 
 #. Tag: para
 #: Transactions.xml:201
@@ -677,6 +969,10 @@
 "entity manager will automatically be part of the global JTA transaction. "
 "Hibernate offers two strategies for this integration."
 msgstr ""
+"永続レイヤがアプリケーションサーバー (EJB3 セッション Bean の背後など) で実行"
+"する場合、エンティティマネージャによって内部的に取得された各データソース接続"
+"は自動的に JTA トランザクションの一部になります。この統合のために Hibernate "
+"では 2 つの方針が提供されます。"
 
 #. Tag: para
 #: Transactions.xml:204
@@ -684,6 +980,8 @@
 msgid ""
 "If you use bean-managed transactions (BMT), the code will look like this:"
 msgstr ""
+"Bean 管理トランザクション (BMT) を使用する場合は、以下のようなコードになりま"
+"す。"
 
 #. Tag: programlisting
 #: Transactions.xml:207
@@ -710,6 +1008,26 @@
 "    em.close();\n"
 "}"
 msgstr ""
+"// BMT イディオム\n"
+"@Resource public UserTransaction utx;\n"
+"@Resource public EntityManagerFactory factory;\n"
+"\n"
+"public void doBusiness() {\n"
+"    EntityManager em = factory.createEntityManager();\n"
+"    try {\n"
+"\n"
+"    // なんらかの処理を行う\n"
+"    ...\n"
+"\n"
+"    utx.commit();\n"
+"}\n"
+"catch (RuntimeException e) {\n"
+"    if (utx != null) utx.rollback();\n"
+"    throw e; // or display error message\n"
+"}\n"
+"finally {\n"
+"    em.close();\n"
+"}"
 
 #. Tag: para
 #: Transactions.xml:208
@@ -726,6 +1044,16 @@
 "<literal>RuntimeException</literal>s they will rollback the transaction as "
 "per the EJB specification (system exception vs. application exception)."
 msgstr ""
+"EJB3 コンテナで Container Managed Transactions (CMT) を使用すると、プログラム"
+"を使用せずにトランザクション境界をセッション Bean アノテーションまたはデプロ"
+"イメント記述子で設定できます。<literal>EntityManager</literal> はトランザク"
+"ションの完了時に自動的にフラッシュされます (<literal>EntityManager</literal> "
+"を挿入またはルックアップした場合は、自動的にクローズします)。"
+"<literal>EntityManager</literal> の使用時に例外が発生した場合、例外を捕捉しな"
+"いとトランザクションロールバックが自動的に実行されます。"
+"<literal>EntityManager</literal> 例外は <literal>RuntimeException</literal> "
+"であるため、EJB の仕様 (システム例外 vs アプリケーション例外) に基づいてトラ"
+"ンザクションがロールバックされます。"
 
 #. Tag: para
 #: Transactions.xml:211
@@ -736,6 +1064,10 @@
 "to also set <literal>org.hibernate.transaction.manager_lookup_class</"
 "literal>."
 msgstr ""
+"Hibernate EntityManager により <literal>hibernate.transaction.factory_class</"
+"literal> を定義することが重要です (つまり、この値をオーバーライドしないでくだ"
+"さい)。<literal>org.hibernate.transaction.manager_lookup_class</literal> を設"
+"定することにも注意してください。"
 
 #. Tag: para
 #: Transactions.xml:214
@@ -752,6 +1084,15 @@
 "new one and bind it (see <xref linkend=\"EJB_container_environment-"
 "Persistence_context_propagation\"/> .)"
 msgstr ""
+"CMT 環境で作業をする場合は、コードのさまざまな部分で同じエンティティマネー"
+"ジャを使用することもできます。通常、管理されていない環境では、エンティティマ"
+"ネージャを保持するために <literal>ThreadLocal</literal> 変数を使用しますが、"
+"単一の EJB 要求はさまざまスレッド (たとえば、別のセッション Bean を呼び出す"
+"セッション Bean など) で実行できます。EJB3 コンテナは、永続コンテキストを伝搬"
+"します。EJB3 コンテナは、挿入またはルックアップを使用してエンティティマネー"
+"ジャに JTA コンテキスト (存在する場合) にバインドされた同じ永続コンテキストを"
+"返すか、新しい永続コンテキストを作成し、バインドします (<xref linkend="
+"\"EJB_container_environment-Persistence_context_propagation\"/> を参照)。"
 
 #. Tag: para
 #: Transactions.xml:217
@@ -760,6 +1101,8 @@
 "Our entity manager/transaction management idiom for CMT and EJB3 container-"
 "use is reduced to this:"
 msgstr ""
+"CMT と EJB3 コンテナの使用に関するエンティティマネージャ/トランザクション管理"
+"イディオムは以下のように短縮されます。"
 
 #. Tag: programlisting
 #: Transactions.xml:220
@@ -768,6 +1111,8 @@
 "//CMT idiom through injection\n"
 "@PersistenceContext(name=\"sample\") EntityManager em;"
 msgstr ""
+"//挿入を伴う CMT イディオム\n"
+"@PersistenceContext(name=\"sample\") EntityManager em;"
 
 #. Tag: para
 #: Transactions.xml:221
@@ -780,13 +1125,18 @@
 "of the entity manager and persistence context is completely managed by the "
 "container."
 msgstr ""
+"つまり、管理された環境では、<literal>EntityManager</literal> を挿入し、データ"
+"アクセスの作業を行うだけでよく、残りの処理はコンテナに任せることができます。"
+"トランザクション境界は、セッション Bean のアノテーションまたはデプロイメント"
+"記述子で明示的に設定されます。エンティティマネージャと永続コンテキストのライ"
+"フサイクルはコンテナによって完全に管理されます。"
 
 #. Tag: para
 #: Transactions.xml:224
 #, no-c-format
 msgid ""
 "TODO: The following paragraph is very confusing, especially the beginning..."
-msgstr ""
+msgstr "  "
 
 #. Tag: para
 #: Transactions.xml:227
@@ -804,12 +1154,23 @@
 "easily avoid using <literal>scroll()</literal> or <literal>iterate()</"
 "literal> at all from the CMT code.)"
 msgstr ""
+"特定の Hibernate ネイティブ API を使用する場合、<literal>after_statement</"
+"literal> 接続解除モードが重要になります。JTA の仕様の制限により、Hibernate で"
+"クローズされていない <literal>ScrollableResults</literal> や <literal>scroll"
+"()</literal> または <literal>iterate()</literal> によって返された "
+"<literal>Iterator</literal> インスタンスを自動的にクリーンアップすることがで"
+"きません。<emphasis></emphasis>基礎となるデータベースカーソルは、"
+"<literal>finally</literal> ブロックから明示的に <literal>ScrollableResults."
+"close()</literal> または <literal>Hibernate.close(Iterator)</literal> を呼び"
+"出すことにより解放する必要があります (当然、ほとんどのアプリケーションでは、"
+"CMT コードから <literal>scroll()</literal> または <literal>iterate()</"
+"literal> を使用することを簡単に回避できます)。"
 
 #. Tag: title
 #: Transactions.xml:230
 #, no-c-format
 msgid "Exception handling"
-msgstr ""
+msgstr "例外処理"
 
 #. Tag: para
 #: Transactions.xml:231
@@ -828,6 +1189,18 @@
 "managed entity manager will do that for you. You just have to let the "
 "RuntimeException propagate up to the container."
 msgstr ""
+"<literal>EntityManager</literal> が例外 (任意の <literal>SQLException</"
+"literal> を含む) をスローした場合、データベーストランザクションをすぐにロール"
+"バックし、<literal>EntityManager.close()</literal> "
+"(<methodname>createEntityManager()</methodname> が呼び出された場合) を呼び出"
+"して、<literal>EntityManager</literal> インスタンスを破棄する必要があります。"
+"<literal>EntityManager</literal> の特定のメソッドは、永続コンテキストを一定の"
+"状態に保ちません。エンティティマネージャによって例外がスローされない場合は、"
+"回復可能であるとみなされます。<literal>finally</literal> ブロックで "
+"<literal>close()</literal> を呼び出して <literal>EntityManager</literal> がク"
+"ローズされるようにしてください。ただし、この処理はコンテナ管理エンティティマ"
+"ネージャによって行われます。他に必要なことは RuntimeException がコンテナに伝"
+"搬するようにするだけです。"
 
 #. Tag: para
 #: Transactions.xml:234
@@ -837,12 +1210,15 @@
 "the Hibernate core exception. Common exceptions raised by the "
 "<literal>EntityManager</literal> API are"
 msgstr ""
+"通常、Hibernate エンティティマネージャは、Hibernate の中核的な例外をカプセル"
+"化する例外を発生させます。<literal>EntityManager</literal> API によって発生す"
+"る一般的な例外は以下のとおりです。"
 
 #. Tag: para
 #: Transactions.xml:239
 #, no-c-format
 msgid "IllegalArgumentException: something wrong happen"
-msgstr ""
+msgstr "IllegalArgumentException: 何らかのエラーが発生"
 
 #. Tag: para
 #: Transactions.xml:244
@@ -851,18 +1227,21 @@
 "EntityNotFoundException: an entity was expected but none match the "
 "requirement"
 msgstr ""
+"EntityNotFoundException: エンティティが期待されたが要件を満たすものがなかった"
 
 #. Tag: para
 #: Transactions.xml:249
 #, no-c-format
 msgid "TransactionRequiredException: this operation has to be in a transaction"
 msgstr ""
+"TransactionRequiredException: この処理はトランザクションで行わなければならな"
+"い"
 
 #. Tag: para
 #: Transactions.xml:254
 #, no-c-format
 msgid "IllegalStateException: the entity manager is used in a wrong way"
-msgstr ""
+msgstr "IllegalStateException: エンティティマネージャの使用方法が間違っている"
 
 #. Tag: para
 #: Transactions.xml:259
@@ -874,6 +1253,11 @@
 "not a <literal>HibernateException</literal>. These are, again, not "
 "recoverable and appropriate action should be taken."
 msgstr ""
+"Hibernate 永続レイヤで発生するほとんどのエラーをラップする "
+"<literal>HibernateException</literal> は、チェックされない例外です。"
+"Hibernate は、<literal>HibernateException</literal> でない他の未チェックの例"
+"外もスローできることに注意してください。繰り返しますが、これらは回復不可能な"
+"ので、適切な処置を講じる必要があります。"
 
 #. Tag: para
 #: Transactions.xml:262
@@ -894,6 +1278,19 @@
 "class for details). The standard <literal>JDBCException</literal> subtypes "
 "are:"
 msgstr ""
+"Hibernate は、<literal>JDBCException</literal> でデータベースと対話していると"
+"きにスローされる <literal>SQLException</literal> をラップします。実際には、"
+"Hibernate はこの例外を <literal>JDBCException</literal> の意味があるサブクラ"
+"スに変換しようとします。基礎となる <literal>SQLException</literal> は常に "
+"<literal>JDBCException.getCause()</literal> で利用できます。Hibernate は、"
+"<literal>SessionFactory</literal> に接続された "
+"<literal>SQLExceptionConverter</literal> を使用して <literal>SQLException</"
+"literal> を適切な <literal>JDBCException</literal> サブクラスに変換します。デ"
+"フォルトでは、<literal>SQLExceptionConverter</literal> は設定されたダイアレク"
+"トにより定義されますが、カスタム実装を組み込むこともできます (詳細について"
+"は、<literal>SQLExceptionConverterFactory</literal> クラスの javadoc を参照し"
+"てください)。標準的な <literal>JDBCException</literal> サブタイプは以下のとお"
+"りです。"
 
 #. Tag: para
 #: Transactions.xml:267
@@ -902,6 +1299,8 @@
 "<literal>JDBCConnectionException</literal> - indicates an error with the "
 "underlying JDBC communication."
 msgstr ""
+"<literal>JDBCConnectionException</literal> - 基礎となる JDBC 通信でエラーが発"
+"生したことを示します。"
 
 #. Tag: para
 #: Transactions.xml:272
@@ -910,6 +1309,8 @@
 "<literal>SQLGrammarException</literal> - indicates a grammar or syntax "
 "problem with the issued SQL."
 msgstr ""
+"<literal>SQLGrammarException</literal> - 発行された SQL で文法または構文のエ"
+"ラーが発生したことを示します。"
 
 #. Tag: para
 #: Transactions.xml:277
@@ -918,6 +1319,8 @@
 "<literal>ConstraintViolationException</literal> - indicates some form of "
 "integrity constraint violation."
 msgstr ""
+"<literal>ConstraintViolationException</literal> - 何らかの整合性の制約違反が"
+"発生したことを示します。"
 
 #. Tag: para
 #: Transactions.xml:282
@@ -926,6 +1329,8 @@
 "<literal>LockAcquisitionException</literal> - indicates an error acquiring a "
 "lock level necessary to perform the requested operation."
 msgstr ""
+"<literal>LockAcquisitionException</literal> - 要求した操作を実行するのに必要"
+"なロックレベルの取得エラーを示します。"
 
 #. Tag: para
 #: Transactions.xml:287
@@ -934,12 +1339,14 @@
 "<literal>GenericJDBCException</literal> - a generic exception which did not "
 "fall into any of the other categories."
 msgstr ""
+"<literal>GenericJDBCException</literal> - 他のどのカテゴリにも属さない一般的"
+"な例外を示します。"
 
 #. Tag: title
 #: Transactions.xml:292
 #, no-c-format
 msgid "EXTENDED Persistence Context"
-msgstr ""
+msgstr "EXTENDED 永続コンテキスト"
 
 #. Tag: para
 #: Transactions.xml:293
@@ -951,6 +1358,11 @@
 "should then understand what happens to operations made outside the scope of "
 "a transaction."
 msgstr ""
+"すべてのアプリケーション管理エンティティマネージャとそのように定義されたコン"
+"テナ管理永続コンテキストは <literal>EXTENDED</literal> になります。これは、永"
+"続コンテキストタイプがトランザクションライフサイクルよりも拡張されることを意"
+"味します。この場合、トランザクションのスコープ範囲外で行われた操作に何が起こ"
+"るのかを理解する必要があります。"
 
 #. Tag: para
 #: Transactions.xml:296
@@ -967,12 +1379,21 @@
 "transaction: <literal>flush()</literal>, <literal>lock()</literal>, and "
 "update/delete queries."
 msgstr ""
+"<literal>EXTENDED</literal> 永続コンテキストでは、エンティティマネージャの読"
+"み取り専用操作 (<literal>find()</literal>、<literal>getReference()</"
+"literal>、<literal>refresh()</literal>、および読み取りクエリ) のすべてをトラ"
+"ンザクションの外部で実行できます。一部の変更操作 (<literal>persist()</"
+"literal>、<literal><literal>merge()</literal></literal>、<literal>remove()</"
+"literal>) はトランザクションの外部で実行できますが、永続コンテキストがトラン"
+"ザクションに参加するまでキューに格納されます。一部の操作 (<literal>flush()</"
+"literal>、<literal>lock()</literal>、および更新/削除クエリ) はトランザクショ"
+"ンの外部で呼び出すことができません。"
 
 #. Tag: title
 #: Transactions.xml:299
 #, no-c-format
 msgid "Container Managed Entity Manager"
-msgstr ""
+msgstr "コンテナ管理エンティティマネージャ"
 
 #. Tag: para
 #: Transactions.xml:300
@@ -984,6 +1405,11 @@
 "a transaction, modifications operations (persist, merge, remove) are queued "
 "in the persistence context and not executed to the database."
 msgstr ""
+"コンテナ管理エンティティマネージャで EXTENDED 永続コンテキストを使用する場合"
+"は、永続コンテキストのライフサイクルがステートフルセッション Bean のライフサ"
+"イクルにバインドされます。また、エンティティマネージャがトランザクションの外"
+"部で作成されると、変更操作 (永続化、マージ、削除) は永続コンテキストのキュー"
+"に格納され、データベースに対して実行されません。"
 
 #. Tag: para
 #: Transactions.xml:303
@@ -994,6 +1420,10 @@
 "queued operation will then be executed to synchronize the persistence "
 "context."
 msgstr ""
+"関連するステートフルセッション Bean またはトランザクションを開始するステート"
+"フルセッション Bean のメソッドが後で呼び出されると、エンティティマネージャが"
+"トランザクションに参加します。この結果、永続コンテキストを同期するために"
+"キューに格納されたすべての操作が実行されます。"
 
 #. Tag: para
 #: Transactions.xml:306
@@ -1009,12 +1439,20 @@
 "look at JBoss Seam. Jboss Seam emphasizes the concept of conversation and "
 "entity manager lifecycle and bind EJB3 and JSF together."
 msgstr ""
+"これは、<literal>entitymanager-per-conversation</literal> パターンを実装する"
+"のに適しています。ステートフルセッション Bean は対話の実装を表します。中間的"
+"なすべての対話処理はトランザクションに関係しないメソッドで行われます。対話の"
+"終了は <literal>JTA</literal> トランザクションの内部で処理されます。したがっ"
+"て、キューに格納されたすべての操作は、データベースに対して実行され、コミット"
+"されます。アプリケーション内の対話の表記法に興味がある場合は、JBoss Seam を調"
+"べてください。Jboss Seam は対話とエンティティマネージャライフサイクルのコンセ"
+"プトに基づき、EJB3 と JSF を統合します。"
 
 #. Tag: title
 #: Transactions.xml:309
 #, no-c-format
 msgid "Application Managed Entity Manager"
-msgstr ""
+msgstr "アプリケーション管理エンティティマネージャ"
 
 #. Tag: para
 #: Transactions.xml:310
@@ -1026,6 +1464,11 @@
 "outside a transaction, the entity manager will queue the modification "
 "operations. When"
 msgstr ""
+"アプリケーション管理エンティティマネージャは、常に <literal>EXTENDED</"
+"literal> となります。トランザクションの内部でエンティティマネージャを作成する"
+"場合、エンティティマネージャは自動的に現在のトランザクションに参加します。エ"
+"ンティティマネージャがトランザクションの外部で作成されると、エンティティマ"
+"ネージャは変更操作をキューに格納します。"
 
 #. Tag: para
 #: Transactions.xml:315
@@ -1034,6 +1477,9 @@
 "<methodname>entityManager.joinTransaction()</methodname> is called when a "
 "JTA transaction is active for a <literal>JTA</literal> entity manager"
 msgstr ""
+"<methodname>entityManager.joinTransaction()</methodname> は、JTA トランザク"
+"ションが <literal>JTA</literal> エンティティマネージャに対して有効である場合"
+"に呼び出されます。"
 
 #. Tag: para
 #: Transactions.xml:320
@@ -1042,6 +1488,9 @@
 "<literal>entityManager.getTransaction().begin()</literal> is called for a "
 "<literal>RESOURCE_LOCAL</literal> entity manager"
 msgstr ""
+"<literal>entityManager.getTransaction().begin()</literal> は、"
+"<literal>RESOURCE_LOCAL</literal> エンティティマネージャに対して呼び出されま"
+"す。"
 
 #. Tag: para
 #: Transactions.xml:325
@@ -1050,6 +1499,8 @@
 "the entity manager join the transaction and all the queued operations will "
 "then be executed to synchronize the persistence context."
 msgstr ""
+"エンティティマネージャはトランザクションに参加し、永続コンテキストを同期する"
+"ためにキューに格納されたすべての操作が実行されます。"
 
 #. Tag: para
 #: Transactions.xml:328
@@ -1058,12 +1509,14 @@
 "It is not legal to call <methodname>entityManager.joinTransaction()</"
 "methodname> if no JTA transaction is involved."
 msgstr ""
+"JTA トランザクションが関係しない場合に <methodname>entityManager."
+"joinTransaction()</methodname> を呼び出すことは不正です。"
 
 #. Tag: title
 #: Transactions.xml:331
 #, no-c-format
 msgid "Optimistic concurrency control"
-msgstr ""
+msgstr "オプティミスティック並行性制御"
 
 #. Tag: para
 #: Transactions.xml:332
@@ -1078,12 +1531,20 @@
 "version checking also has the benefit of preventing lost updates in single "
 "database transactions."
 msgstr ""
+"高い並行性と高いスケーラビリティを実現する唯一の方法は、バージョン管理ととも"
+"にオプティミスティック並行性制御を使用することです。バージョンの確認では、競"
+"合する更新を検出するために (および、更新の損失を防ぐために) バージョン番号ま"
+"たはタイムスタンプを使用します。Hibernate では、オプティミスティック並行性を"
+"使用するアプリケーションコードを記述するために 3 つの方法が用意されています。"
+"ここで示す使用例では、長いアプリケーショントランザクションを前提としています"
+"が、バージョンの確認には、単一のデータベーストランザクションで更新の損失を防"
+"ぐ利点もあります。"
 
 #. Tag: title
 #: Transactions.xml:335
 #, no-c-format
 msgid "Application version checking"
-msgstr ""
+msgstr "アプリケーションバージョンの確認"
 
 #. Tag: para
 #: Transactions.xml:336
@@ -1097,6 +1558,13 @@
 "transaction isolation. This approach is the least efficient in terms of "
 "database access. It is the approach most similar to EJB2 entities:"
 msgstr ""
+"永続メカニズムをそんなに使用できない実装では、データベースとの各対話が新しい "
+"<literal>EntityManager</literal> で行われ、開発者はすべての永続インスタンスを"
+"処理する前にデータベースからインスタンスをリロードする必要があります。このア"
+"プローチにより、アプリケーショントランザクションの分離を保証するためにアプリ"
+"ケーションは強制的に独自のバージョン確認を実行するようになります。このアプ"
+"ローチはデータベースアクセスという点で最も非効率であり、EJB2 エンティティに最"
+"も似ています。"
 
 #. Tag: programlisting
 #: Transactions.xml:339
@@ -1115,6 +1583,18 @@
 "t.commit();\n"
 "em.close();"
 msgstr ""
+"// foo は以前のエンティティマネージャによりロードされたインスタンス\n"
+"em = factory.createEntityManager();\n"
+"EntityTransaction t = em.getTransaction();\n"
+"t.begin();\n"
+"int oldVersion = foo.getVersion();\n"
+"Foo dbFoo = em.find( foo.getClass(), foo.getKey() ); // load the current "
+"state\n"
+"if ( dbFoo.getVersion()!=foo.getVersion ) throw new StaleObjectStateException"
+"();\n"
+"dbFoo.setProperty(\"bar\");\n"
+"t.commit();\n"
+"em.close();"
 
 #. Tag: para
 #: Transactions.xml:340
@@ -1124,6 +1604,9 @@
 "literal>, and the entity manager will automatically increment it during "
 "flush if the entity is dirty."
 msgstr ""
+"<literal>version</literal> プロパティは、<literal>@Version</literal> を使用し"
+"てマップされ、エンティティがダーティな場合はエンティティマネージが自動的に値"
+"をインクリメントします。"
 
 #. Tag: para
 #: Transactions.xml:343
@@ -1137,6 +1620,12 @@
 "experience lost updates without error messages or a chance to merge "
 "conflicting changes."
 msgstr ""
+"当然、低いデータ並行性の環境で稼働し、バージョン確認を必要としない場合は、こ"
+"のアプローチを使用してバージョン確認を省略できます。この場合、長いアプリケー"
+"ショントランザクションで<emphasis></emphasis>「最後のコミットが優先される」こ"
+"とがデフォルトになります。これにより、エラーメッセージが表示されなかったり、"
+"競合する変更をマージする機会が与えられずに更新が失われたりすることがあるの"
+"で、アプリケーションのユーザーが混乱する場合があることに注意してください。"
 
 #. Tag: para
 #: Transactions.xml:346
@@ -1148,12 +1637,18 @@
 "Hibernate offers automatic version checking with either detached instances "
 "or an extended entity manager and persistence context as the design paradigm."
 msgstr ""
+"明らかなことは手動でのバージョン確認は非常に限られた状況でのみ現実的であり、"
+"ほとんどのアプリケーションでは現実的ではありません。多くの場合、単一のインス"
+"タンスだけでなく変更されたオブジェクトの完全なグラフも確認する必要がありま"
+"す。Hibernate は、設計パラダイムとして接続解除されたインスタンス、または拡張"
+"されたエンティティマネージャおよび永続コンテキストのいずれかを使用して自動的"
+"にバージョン確認を行います。"
 
 #. Tag: title
 #: Transactions.xml:349
 #, no-c-format
 msgid "Extended entity manager and automatic versioning"
-msgstr ""
+msgstr "拡張されたエンティティマネージャと自動バージョン管理"
 
 #. Tag: para
 #: Transactions.xml:350
@@ -1166,6 +1661,12 @@
 "opportunity for the user to merge his changes or to restart the business "
 "process with non-stale data)."
 msgstr ""
+"単一の永続コンテキストは、アプリケーショントランザクション全体で使用されま"
+"す。エンティティマネージャはフラッシュ時にインスタンスバージョンを確認し、同"
+"時変更が検出されたら例外をスローします。この例外を捕捉し処理するのは開発者次"
+"第です (一般的な処理としては、ユーザーが変更内容をマージできるようにしたり、"
+"整合的なデータでビジネスプロセスを再開できるようにしたりすることなどがありま"
+"す)。"
 
 #. Tag: para
 #: Transactions.xml:353
@@ -1176,6 +1677,10 @@
 "persistence context is flushed when executed in an active transaction (at "
 "worse at commit time)."
 msgstr ""
+"<literal>EXTENDED</literal> 永続コンテキストでは、アクティブなトランザクショ"
+"ンの外部で行われたすべての操作はキューに格納されます。<literal>EXTENDED</"
+"literal> 永続コンテキストは、アクティブなトランザクションでの実行時 (最悪でも"
+"コミット時) にフラッシュされます。"
 
 #. Tag: para
 #: Transactions.xml:356
@@ -1195,6 +1700,18 @@
 "is no performance impact. The following examples show the idiom in a non-"
 "managed environment:"
 msgstr ""
+"<literal>Entity Manager</literal> は、ユーザー対話の待機時に基礎となる JDBC "
+"接続から切断されます。これは、アプリケーション管理拡張エンティティマネージャ"
+"ではトランザクションの完了時に自動的に行われます。また、これはコンテナ管理拡"
+"張エンティティマネージャを保持するステートフルセッション Bean "
+"((<literal>@PersistenceContext(EXTENDED)</literal> というアノテーションを持"
+"つ SFSB など) では透過的に行われます。このアプローチは、データベースアクセス"
+"の観点から最も効率的であす。アプリケーションではバージョン確認や接続解除され"
+"たインスタンスのマージについて心配する必要がなく、各データベーストランザク"
+"ションでインスタンスをリロードする必要もありません。オープンおよびクローズす"
+"る接続の数が気になるかもしれませんが、接続プロバイダは接続プールでなければな"
+"らないことを思い出してください。したがって、パフォーマンスの影響はありませ"
+"ん。以下に、管理されていない環境でのイディオムの例を示します。"
 
 #. Tag: programlisting
 #: Transactions.xml:359
@@ -1206,6 +1723,12 @@
 "foo.setProperty(\"bar\");\n"
 "em.getTransaction().commit();  // End tx, flush and check version, disconnect"
 msgstr ""
+"// foo は拡張エンティティマネージャによってロードされたインスタンス\n"
+"em.getTransaction.begin(); // データストアへの新しい接続が取得され tx が開始"
+"される\n"
+"foo.setProperty(\"bar\");\n"
+"em.getTransaction().commit();  // tx を終了、バージョンをフラッシュおよび確"
+"認、接続解除"
 
 #. Tag: para
 #: Transactions.xml:360
@@ -1218,6 +1741,12 @@
 "will not only flush and check versions, but also disconnects the entity "
 "manager from the JDBC connection and return the connection to the pool."
 msgstr ""
+"<literal>foo</literal> オブジェクトはロードされた永続コンテキストを認識しま"
+"す。<literal>getTransaction.begin();</literal> により、エンティティマネージャ"
+"は新しい接続を取得し、永続コンテキストを再開します。メソッド "
+"<literal>getTransaction().commit()</literal> はバージョンをフラッシュし確認す"
+"るだけでなく、 エンティティマネージャから JDBC 接続を解除し、接続をプールに返"
+"します。"
 
 #. Tag: para
 #: Transactions.xml:363
@@ -1231,6 +1760,13 @@
 "few request/response cycles. This is indeed recommended, as the persistence "
 "context will soon also have stale data."
 msgstr ""
+"このパターンは、ユーザーの考えている時間に永続コンテキストが大きすぎて格納で"
+"きず、永続コンテキストを格納する場所がわからない場合に問題となります。たとえ"
+"ば、<literal>HttpSession</literal> はできるだけ小さくすべきです。永続コンテキ"
+"ストは第一レベル (必須) のキャッシュであり、ロードされたすべてのオブジェクト"
+"を含むため、多くの場合、このアプローチは少数の要求/応答サイクルに対してのみ使"
+"用できます。ただし、永続コンテキストはすぐに不整合なデータを持つため、実際に"
+"はこのアプローチが推奨されます。"
 
 #. Tag: para
 #: Transactions.xml:366
@@ -1243,12 +1779,18 @@
 "managed, two-tiered environment the <literal>HttpSession</literal> might "
 "indeed be the right place to store it."
 msgstr ""
+"要求時に拡張エンティティマネージャをどこに格納するかは自由に決めることができ"
+"ます。これは、EJB3 コンテナの内部で上記で説明したステートフルセッション Bean "
+"を使用するだけで行えます。拡張エンティティマネージャを Web レイヤに転送し (ま"
+"たは別のレイヤに対してシリアル化し)、<literal>HttpSession</literal> に格納し"
+"ないでください。管理されていない 2 つのレイヤ環境では、<literal>HttpSession</"
+"literal> が適切な保管場所になることもあります。"
 
 #. Tag: title
 #: Transactions.xml:369
 #, no-c-format
 msgid "Detached objects and automatic versioning"
-msgstr ""
+msgstr "接続解除されたオブジェクトと自動バージョン管理"
 
 #. Tag: para
 #: Transactions.xml:370
@@ -1260,6 +1802,11 @@
 "detached instances originally loaded in another persistence context and then "
 "merges the changes using <literal>EntityManager.merge()</literal>:"
 msgstr ""
+"このパラダイムでは、データストアとの各対話は新しい永続コンテキストで行われま"
+"す。ただし、データベースとの各対話に対しては同じ永続インスタンスが再利用され"
+"ます。アプリケーションは別の永続コンテキストに最初にロードされた接続解除され"
+"たインスタンスの状態を操作し、<literal>EntityManager.merge()</literal> を使用"
+"して変更をマージします。"
 
 #. Tag: programlisting
 #: Transactions.xml:373
@@ -1274,6 +1821,13 @@
 "entityManager.getTransaction().commit();\n"
 "entityManager.close();"
 msgstr ""
+"// foo は非拡張エンティティマネージャによりロードされたインスタンス\n"
+"foo.setProperty(\"bar\");\n"
+"entityManager = factory.createEntityManager();\n"
+"entityManager.getTransaction().begin();\n"
+"managedFoo = session.merge(foo); // foo を破棄し、今後は managedFoo を使用\n"
+"entityManager.getTransaction().commit();\n"
+"entityManager.close();"
 
 #. Tag: para
 #: Transactions.xml:374
@@ -1282,3 +1836,5 @@
 "Again, the entity manager will check instance versions during flush, "
 "throwing an exception if conflicting updates occured."
 msgstr ""
+"ここでも再び、エンティティマネージャはフラッシュ時にインスタンスバージョンを"
+"確認し、更新の競合が発生したら例外をスローします。"




More information about the jboss-cvs-commits mailing list