You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by kw...@apache.org on 2014/05/15 00:22:26 UTC
svn commit: r908837 [18/37] -
/websites/production/openjpa/content/builds/2.3.0/apache-openjpa/docs/
Added: websites/production/openjpa/content/builds/2.3.0/apache-openjpa/docs/manual.html
==============================================================================
--- websites/production/openjpa/content/builds/2.3.0/apache-openjpa/docs/manual.html (added)
+++ websites/production/openjpa/content/builds/2.3.0/apache-openjpa/docs/manual.html Wed May 14 22:22:23 2014
@@ -0,0 +1,41905 @@
+<html><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>Apache OpenJPA 2.3 User's Guide</title><link rel="stylesheet" type="text/css" href="css/docbook.css"><meta name="generator" content="DocBook XSL-NS Stylesheets V1.76.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="book" title="Apache OpenJPA 2.3 User's Guide" id="manual"><div class="titlepage"><div><div><h1 class="title">Apache OpenJPA 2.3 User's Guide</h1></div><div><p class="releaseinfo">Built from OpenJPA version revision 1540825.</p></div><div><p class="copyright">Copyright © 2006-2012 The Apache Software Foundation</p></div><div><p class="pubdate">Last updated on May 14, 2014 at 3:22 PM.</p></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="part"><a href="#introduction">1. Introduction</a></span></dt><dd><dl><dt><span class="chapter"><a href="#openjpa_intro">1.
+ About
+ </a></span></dt><dt><span class="chapter"><a href="#openjpa_legal">2.
+ Legal
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#openjpa_legal_license">1.
+ License
+ </a></span></dt><dt><span class="section"><a href="#openjpa_legal_notice">2.
+ Notice
+ </a></span></dt><dt><span class="section"><a href="#openjpa_legal_copyright">3.
+ Copyrights
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#openjpa_legal_copyright_apache">3.1. Apache</a></span></dt><dt><span class="section"><a href="#openjpa_legal_copyright_serp">3.2. Serp</a></span></dt><dt><span class="section"><a href="#openjpa_legal_copyright_sun">3.3. Sun</a></span></dt><dt><span class="section"><a href="#openjpa_legal_copyright_other">3.4. Other</a></span></dt></dl></dd></dl></dd></dl></dd><dt><span class="part"><a href="#jpa_overview">2. Java Persistence API</a></span></dt><dd><dl><dt><span class="chapter"><a href="#jpa_overview_intro">1.
+ Introduction
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_intro_audience">1.
+ Intended Audience
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_intro_transpers">2.
+ Lightweight Persistence
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#jpa_overview_why">2.
+ Why JPA?
+ </a></span></dt><dt><span class="chapter"><a href="#jpa_overview_arch">3.
+ Java Persistence API Architecture
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_arch_exceptions">1.
+ JPA Exceptions
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#jpa_overview_pc">4.
+ Entity
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_pc_restrict">1.
+ Restrictions on Persistent Classes
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_pc_no_arg">1.1.
+ Default or No-Arg Constructor
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_pc_final">1.2.
+ Final
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_pc_id">1.3.
+ Identity Fields
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_pc_version">1.4.
+ Version Field
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_pc_restrict_inheritance">1.5.
+ Inheritance
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_pc_restrict_fields">1.6.
+ Persistent Fields
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_pc_restrict_conclusion">1.7.
+ Conclusions
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_pc_identity">2.
+ Entity Identity
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_pc_identitycls">2.1.
+ Identity Class
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_pc_identity_hierarchy">2.1.1.
+ Identity Hierarchies
+ </a></span></dt></dl></dd></dl></dd><dt><span class="section"><a href="#jpa_overview_pc_callbacks">3.
+ Lifecycle Callbacks
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_pc_callbacks_methods">3.1.
+ Callback Methods
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_callbacks_using">3.2.
+ Using Callback Methods
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_entity_listeners_using">3.3.
+ Using Entity Listeners
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_entity_listeners_exclude">3.4.
+ Entity Listeners Hierarchy
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_pc_conclusion">4.
+ Conclusions
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#jpa_overview_meta">5.
+ Metadata
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_meta_class">1.
+ Class Metadata
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_meta_entity">1.1.
+ Entity
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_idclass">1.2.
+ Id Class
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_embeddablesuper">1.3.
+ Mapped Superclass
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_embeddable">1.4.
+ Embeddable
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_entity_listeners">1.5.
+ EntityListeners
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_classex">1.6.
+ Example
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_meta_field">2.
+ Field and Property Metadata
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_explicit_access">2.1.
+ Explicit Access
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_transient">2.2.
+ Transient
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_id">2.3.
+ Id
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_gen">2.4.
+ Generated Value
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_embedid">2.5.
+ Embedded Id
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_version">2.6.
+ Version
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_basic">2.7.
+ Basic
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_meta_fetch">2.7.1.
+ Fetch Type
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_meta_embedded">2.8.
+ Embedded
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_manytoone">2.9.
+ Many To One
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_meta_cascade">2.9.1.
+ Cascade Type
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_meta_onetomany">2.10.
+ One To Many
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_meta_mappedby">2.10.1.
+ Bidirectional Relations
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_meta_onetoone">2.11.
+ One To One
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_manytomany">2.12.
+ Many To Many
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_orderby">2.13.
+ Order By
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_mapkey">2.14.
+ Map Key
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_fielddefaults">2.15.
+ Persistent Field Defaults
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_meta_xml">3.
+ XML Schema
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_meta_complete">4.
+ Conclusion
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#jpa_overview_persistence">6.
+ Persistence
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_persistence_xml">1.
+ persistence.xml
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_persistence_use">2.
+ Non-EE Use
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#jpa_overview_emfactory">7.
+ EntityManagerFactory
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_emfactory_obtain">1.
+ Obtaining an EntityManagerFactory
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_emfactory_em">2.
+ Obtaining EntityManagers
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_emfactory_perscontext">3.
+ Persistence Context
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_emfactory_perscontext_trans">3.1.
+ Transaction Persistence Context
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_emfactory_perscontext_extend">3.2.
+ Extended Persistence Context
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_emf_properties">4.
+ Retrieving Properties Information
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_emfactory_close">5.
+ Closing the EntityManagerFactory
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_emfactory_puutil">6.
+ PersistenceUnitUtil
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#jpa_overview_em">8.
+ EntityManager
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_em_trans">1.
+ Transaction Association
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_em_lifecycle">2.
+ Entity Lifecycle Management
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_em_lifeexamples">3.
+ Lifecycle Examples
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_em_identity">4.
+ Entity Identity Management
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_em_cache">5.
+ Cache Management
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_em_query">6.
+ Query Factory
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_em_locking">7.
+ Entity Locking
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_em_properties">8.
+ Retrieving Properties Information
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_em_closing">9.
+ Closing
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#jpa_overview_trans">9.
+ Transaction
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_trans_types">1.
+ Transaction Types
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_trans_local">2.
+ The EntityTransaction Interface
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#jpa_overview_query">10.
+ JPA Query
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_query_api">1.
+ JPQL API
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_query_basic">1.1.
+ Query Basics
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_query_relations">1.2.
+ Relation Traversal
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_query_embeddables">1.3.
+ Embeddable Traversal
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_join_fetch">1.4.
+ Fetch Joins
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_query_functions">1.5.
+ JPQL Functions
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_query_inheritance">1.6.
+ Polymorphic Queries
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_query_params">1.7.
+ Query Parameters
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_query_hints">1.8.
+ Query Hints
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_hints_locking">1.8.1.
+ Locking Hints
+ </a></span></dt><dt><span class="section"><a href="#jpa_hints_locktimeout">1.8.2.
+ Lock Timeout Hint
+ </a></span></dt><dt><span class="section"><a href="#jpa_hints_querytimeout">1.8.3.
+ Query Timeout Hint
+ </a></span></dt><dt><span class="section"><a href="#jpa_hints_resultset">1.8.4.
+ Result Set Size Hint
+ </a></span></dt><dt><span class="section"><a href="#jpa_hints_isolation">1.8.5.
+ Isolation Level Hint
+ </a></span></dt><dt><span class="section"><a href="#jpa_hints_fetchplan">1.8.6.
+ Other Fetchplan Hints
+ </a></span></dt><dt><span class="section"><a href="#d5e3356">1.8.7.
+ Database-Specific Hints
+ </a></span></dt><dt><span class="section"><a href="#jpa_hints_named">1.8.8.
+ Named Query Hints
+ </a></span></dt><dt><span class="section"><a href="#multi-hints-handling">1.8.9.
+ Handling of Multiple Similar Query Hints
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_query_ordering">1.9.
+ Ordering
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_query_aggregates">1.10.
+ Aggregates
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_query_named">1.11.
+ Named Queries
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_query_delete">1.12.
+ Delete By Query
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_query_update">1.13.
+ Update By Query
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_langref">2.
+ JPQL Language Reference
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_langref_stmnttypes">2.1.
+ JPQL Statement Types
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_langref_select">2.1.1.
+ JPQL Select Statement
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_bulk">2.1.2.
+ JPQL Update and Delete Statements
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_langref_schematypes">2.2.
+ JPQL Abstract Schema Types and Query Domains
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_langref_schemanaming">2.2.1.
+ JPQL Entity Naming
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_schemaexample">2.2.2.
+ JPQL Schema Example
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_langref_fromclause">2.3.
+ JPQL FROM Clause and Navigational Declarations
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_langref_from_identifiers">2.3.1.
+ JPQL FROM Identifiers
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_from_vars">2.3.2.
+ JPQL Identification Variables
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_range">2.3.3.
+ JPQL Range Declarations
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_path">2.3.4.
+ JPQL Path Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_Joins">2.3.5.
+ JPQL Joins
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_langref_inner_joins">2.3.5.1.
+ JPQL Inner Joins (Relationship Joins)
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_outer_joins">2.3.5.2.
+ JPQL Outer Joins
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_fetch_joins">2.3.5.3.
+ JPQL Fetch Joins
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_langref_collection_dec">2.3.6.
+ JPQL Collection Member Declarations
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_from_clause_and_sql">2.3.7.
+ JPQL FROM Clause and SQL
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_polymorph">2.3.8.
+ JPQL Polymorphism
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_langref_where">2.4.
+ JPQL WHERE Clause
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_cond">2.5.
+ JPQL Conditional Expressions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_langref_lit">2.5.1.
+ JPQL Literals
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_idvar">2.5.2.
+ JPQL Identification Variables
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_path_exp">2.5.3.
+ JPQL Path Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_input_params">2.5.4.
+ JPQL Input Parameters
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_langref_pos_params">2.5.4.1.
+ JPQL Positional Parameters
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_named_params">2.5.4.2.
+ JPQL Named Parameters
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_langref_cond_comp">2.5.5.
+ JPQL Conditional Expression Composition
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_operators">2.5.6.
+ JPQL Operators and Operator Precedence
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_comparison_expressions">2.5.7.
+ JPQL Comparison Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_between">2.5.8.
+ JPQL Between Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_in_expressions">2.5.9.
+ JPQL In Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_like">2.5.10.
+ JPQL Like Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_null">2.5.11.
+ JPQL Null Comparison Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_empty_comp">2.5.12.
+ JPQL Empty Collection Comparison Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_collection_member">2.5.13.
+ JPQL Collection Member Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_exists">2.5.14.
+ JPQL Exists Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_all_any">2.5.15.
+ JPQL All or Any Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_subqueries">2.5.16.
+ JPQL Subqueries
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_langref_scalar_expressions">2.6.
+ JPQL Scalar Expressions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_langref_math_expressions">2.6.1.
+ Arithmetic Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_functional_expressions">2.6.2.
+ String, Arithmetic, and Datetime Functional Expressions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_langref_string_fun">2.6.2.1.
+ JPQL String Functions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_arithmetic">2.6.2.2.
+ JPQL Arithmetic Functions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_datetime">2.6.2.3.
+ JPQL Datetime Functions
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_langref_case_expressions">2.6.3.
+ Case Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_entity_type_expressions">2.6.4.
+ Entity Type Expressions
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_langref_group">2.7.
+ JPQL GROUP BY, HAVING
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_select_clause">2.8.
+ JPQL SELECT Clause
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_langref_resulttype">2.8.1.
+ JPQL Result Type of the SELECT Clause
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_constructor">2.8.2.
+ JPQL Constructor Expressions
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_null_select">2.8.3.
+ JPQL Null Values in the Query Result
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_embeddables">2.8.4.
+ JPQL Embeddables in the Query Result
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_aggregates">2.8.5.
+ JPQL Aggregate Functions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_langref_agg_examples">2.8.5.1.
+ JPQL Aggregate Examples
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_numeric_expressions_in_select">2.8.5.2.
+ JPQL Numeric Expressions in the SELECT Clause
+ </a></span></dt></dl></dd></dl></dd><dt><span class="section"><a href="#jpa_langref_orderby">2.9.
+ JPQL ORDER BY Clause
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_bulk_ops">2.10.
+ JPQL Bulk Update and Delete
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_null_values">2.11.
+ JPQL Null Values
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_equality">2.12.
+ JPQL Equality and Comparison Semantics
+ </a></span></dt><dt><span class="section"><a href="#jpa_langref_bnf">2.13.
+ JPQL BNF
+ </a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#jpa_overview_criteria">11.
+ JPA Criteria
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#d5e5247">1. Constructing a CriteriaQuery</a></span></dt><dt><span class="section"><a href="#d5e5264">2. Executing a CriteriaQuery</a></span></dt><dt><span class="section"><a href="#d5e5271">3. Extension to Criteria API</a></span></dt><dt><span class="section"><a href="#d5e5275">4. Generation of Canonical MetaModel classes</a></span></dt></dl></dd><dt><span class="chapter"><a href="#jpa_overview_sqlquery">12.
+ SQL Queries
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_sqlquery_create">1.
+ Creating SQL Queries
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_sqlquery_obj">2.
+ Retrieving Persistent Objects with SQL
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#jpa_overview_mapping">13.
+ Mapping Metadata
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_mapping_table">1.
+ Table
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_unq">2.
+ Unique Constraints
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_column">3.
+ Column
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_id">4.
+ Identity Mapping
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_sequence">5.
+ Generators
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_mapping_sequence_seqgen">5.1.
+ Sequence Generator
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_sequence_tablegen">5.2.
+ Table Generator
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_sequence_genex">5.3.
+ Example
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_mapping_inher">6.
+ Inheritance
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_mapping_inher_single">6.1.
+ Single Table
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_mapping_inher_single_adv">6.1.1.
+ Advantages
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_inher_single_disadv">6.1.2.
+ Disadvantages
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_mapping_inher_joined">6.2.
+ Joined
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_mapping_inher_joined_adv">6.2.1.
+ Advantages
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_inher_joined_disadv">6.2.2.
+ Disadvantages
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_mapping_inher_tpc">6.3.
+ Table Per Class
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_mapping_inher_tpc_adv">6.3.1.
+ Advantages
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_inher_tpc_disadv">6.3.2.
+ Disadvantages
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_mapping_inher_together">6.4.
+ Putting it All Together
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_mapping_discrim">7.
+ Discriminator
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_field">8.
+ Field Mapping
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_mapping_basic">8.1.
+ Basic Mapping
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_overview_mapping_lob">8.1.1.
+ LOBs
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_enum">8.1.2.
+ Enumerated
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_temporal">8.1.3.
+ Temporal Types
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_basic_example">8.1.4.
+ The Updated Mappings
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_mapping_secondary">8.2.
+ Secondary Tables
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_embed">8.3.
+ Embedded Mapping
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_rel">8.4.
+ Direct Relations
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_assoccoll">8.5.
+ Join Table
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_bidi">8.6.
+ Bidirectional Mapping
+ </a></span></dt><dt><span class="section"><a href="#jpa_overview_mapping_map">8.7.
+ Map Mapping
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#jpa_overview_mapping_full">9.
+ The Complete Mappings
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#jpa_overview_conclusion">14.
+ Conclusion
+ </a></span></dt></dl></dd><dt><span class="part"><a href="#ref_guide">3. Reference Guide</a></span></dt><dd><dl><dt><span class="chapter"><a href="#ref_guide_intro">1.
+ Introduction
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_intro_audience">1.
+ Intended Audience
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#ref_guide_conf">2.
+ Configuration
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_conf_intro">1.
+ Introduction
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_conf_specify">2.
+ Runtime Configuration
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_conf_devtools">3.
+ Command Line Configuration
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_conf_devtools_format">3.1.
+ Code Formatting
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_conf_plugins">4.
+ Plugin Configuration
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_conf_openjpa">5.
+ OpenJPA Properties
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#openjpa.AutoClear">5.1.
+ openjpa.AutoClear
+ </a></span></dt><dt><span class="section"><a href="#openjpa.AutoDetach">5.2.
+ openjpa.AutoDetach
+ </a></span></dt><dt><span class="section"><a href="#openjpa.BrokerFactory">5.3.
+ openjpa.BrokerFactory
+ </a></span></dt><dt><span class="section"><a href="#openjpa.BrokerImpl">5.4.
+ openjpa.BrokerImpl
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Callbacks">5.5. openjpa.Callbacks</a></span></dt><dt><span class="section"><a href="#openjpa.ClassResolver">5.6.
+ openjpa.ClassResolver
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Compatibility">5.7.
+ openjpa.Compatibility
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionDriverName">5.8.
+ openjpa.ConnectionDriverName
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Connection2DriverName">5.9.
+ openjpa.Connection2DriverName
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionFactory">5.10.
+ openjpa.ConnectionFactory
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionFactory2">5.11.
+ openjpa.ConnectionFactory2
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionFactoryName">5.12.
+ openjpa.ConnectionFactoryName
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionFactory2Name">5.13.
+ openjpa.ConnectionFactory2Name
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionFactoryMode">5.14.
+ openjpa.ConnectionFactoryMode
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionFactoryProperties">5.15.
+ openjpa.ConnectionFactoryProperties
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionFactory2Properties">5.16.
+ openjpa.ConnectionFactory2Properties
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionPassword">5.17.
+ openjpa.ConnectionPassword
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Connection2Password">5.18.
+ openjpa.Connection2Password
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionProperties">5.19.
+ openjpa.ConnectionProperties
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Connection2Properties">5.20.
+ openjpa.Connection2Properties
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionURL">5.21.
+ openjpa.ConnectionURL
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Connection2URL">5.22.
+ openjpa.Connection2URL
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionUserName">5.23.
+ openjpa.ConnectionUserName
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Connection2UserName">5.24.
+ openjpa.Connection2UserName
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ConnectionRetainMode">5.25.
+ openjpa.ConnectionRetainMode
+ </a></span></dt><dt><span class="section"><a href="#openjpa.DataCache">5.26.
+ openjpa.DataCache
+ </a></span></dt><dt><span class="section"><a href="#openjpa.DataCacheManager">5.27.
+ openjpa.DataCacheManager
+ </a></span></dt><dt><span class="section"><a href="#openjpa.DataCacheMode">5.28.
+ openjpa.DataCacheMode
+ </a></span></dt><dt><span class="section"><a href="#openjpa.DataCacheTimeout">5.29.
+ openjpa.DataCacheTimeout
+ </a></span></dt><dt><span class="section"><a href="#openjpa.DetachState">5.30.
+ openjpa.DetachState
+ </a></span></dt><dt><span class="section"><a href="#openjpa.DynamicDataStructs">5.31.
+ openjpa.DynamicDataStructs
+ </a></span></dt><dt><span class="section"><a href="#openjpa.DynamicEnhancementAgent">5.32. openjpa.DynamicEnhancementAgent</a></span></dt><dt><span class="section"><a href="#openjpa.FetchBatchSize">5.33.
+ openjpa.FetchBatchSize
+ </a></span></dt><dt><span class="section"><a href="#openjpa.EncryptionProvider">5.34.
+ openjpa.EncryptionProvider
+ </a></span></dt><dt><span class="section"><a href="#openjpa.FetchGroups">5.35.
+ openjpa.FetchGroups
+ </a></span></dt><dt><span class="section"><a href="#openjpa.FlushBeforeQueries">5.36.
+ openjpa.FlushBeforeQueries
+ </a></span></dt><dt><span class="section"><a href="#openjpa.IgnoreChanges">5.37.
+ openjpa.IgnoreChanges
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Id">5.38. openjpa.Id</a></span></dt><dt><span class="section"><a href="#openjpa.InitializeEagerly">5.39.
+ openjpa.InitializeEagerly
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Instrumentation">5.40.
+ openjpa.Instrumentation
+ </a></span></dt><dt><span class="section"><a href="#openjpa.InverseManager">5.41.
+ openjpa.InverseManager
+ </a></span></dt><dt><span class="section"><a href="#openjpa.LockManager">5.42.
+ openjpa.LockManager
+ </a></span></dt><dt><span class="section"><a href="#openjpa.LockTimeout">5.43.
+ openjpa.LockTimeout
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Log">5.44.
+ openjpa.Log
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ManagedRuntime">5.45.
+ openjpa.ManagedRuntime
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Mapping">5.46.
+ openjpa.Mapping
+ </a></span></dt><dt><span class="section"><a href="#openjpa.MaxFetchDepth">5.47.
+ openjpa.MaxFetchDepth
+ </a></span></dt><dt><span class="section"><a href="#openjpa.MetaDataFactory">5.48.
+ openjpa.MetaDataFactory
+ </a></span></dt><dt><span class="section"><a href="#openjpa.MetaDataRepository">5.49.
+ openjpa.MetaDataRepository
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Multithreaded">5.50.
+ openjpa.Multithreaded
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Optimistic">5.51.
+ openjpa.Optimistic
+ </a></span></dt><dt><span class="section"><a href="#openjpa.OptimizeIdCopy">5.52.
+ openjpa.OptimizeIdCopy
+ </a></span></dt><dt><span class="section"><a href="#openjpa.OrphanedKeyAction">5.53.
+ openjpa.OrphanedKeyAction
+ </a></span></dt><dt><span class="section"><a href="#openjpa.NontransactionalRead">5.54.
+ openjpa.NontransactionalRead
+ </a></span></dt><dt><span class="section"><a href="#openjpa.NontransactionalWrite">5.55.
+ openjpa.NontransactionalWrite
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ProxyManager">5.56.
+ openjpa.ProxyManager
+ </a></span></dt><dt><span class="section"><a href="#openjpa.PostLoadOnMerge">5.57.
+ openjpa.PostLoadOnMerge
+ </a></span></dt><dt><span class="section"><a href="#openjpa.QueryCache">5.58.
+ openjpa.QueryCache
+ </a></span></dt><dt><span class="section"><a href="#openjpa.QueryCompilationCache">5.59.
+ openjpa.QueryCompilationCache
+ </a></span></dt><dt><span class="section"><a href="#openjpa.ReadLockLevel">5.60.
+ openjpa.ReadLockLevel
+ </a></span></dt><dt><span class="section"><a href="#openjpa.RemoteCommitProvider">5.61.
+ openjpa.RemoteCommitProvider
+ </a></span></dt><dt><span class="section"><a href="#openjpa.RestoreState">5.62.
+ openjpa.RestoreState
+ </a></span></dt><dt><span class="section"><a href="#openjpa.RetainState">5.63.
+ openjpa.RetainState
+ </a></span></dt><dt><span class="section"><a href="#openjpa.RetryClassRegistration">5.64.
+ openjpa.RetryClassRegistration
+ </a></span></dt><dt><span class="section"><a href="#openjpa.RuntimeUnenhancedClasses">5.65. openjpa.RuntimeUnenhancedClasses</a></span></dt><dt><span class="section"><a href="#openjpa.SavepointManager">5.66.
+ openjpa.SavepointManager
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Sequence">5.67.
+ openjpa.Sequence
+ </a></span></dt><dt><span class="section"><a href="#openjpa.Specification">5.68.
+ openjpa.Specification
+ </a></span></dt><dt><span class="section"><a href="#openjpa.TransactionMode">5.69.
+ openjpa.TransactionMode
+ </a></span></dt><dt><span class="section"><a href="#openjpa.WriteLockLevel">5.70.
+ openjpa.WriteLockLevel
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_conf_jdbc">6.
+ OpenJPA JDBC Properties
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#openjpa.jdbc.ConnectionDecorators">6.1.
+ openjpa.jdbc.ConnectionDecorators
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.DBDictionary">6.2.
+ openjpa.jdbc.DBDictionary
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.DriverDataSource">6.3.
+ openjpa.jdbc.DriverDataSource
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.EagerFetchMode">6.4.
+ openjpa.jdbc.EagerFetchMode
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.FetchDirection">6.5.
+ openjpa.jdbc.FetchDirection
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.JDBCListeners">6.6.
+ openjpa.jdbc.JDBCListeners
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.LRSSize">6.7.
+ openjpa.jdbc.LRSSize
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.MappingDefaults">6.8.
+ openjpa.jdbc.MappingDefaults
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.MappingFactory">6.9.
+ openjpa.jdbc.MappingFactory
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.QuerySQLCache">6.10.
+ openjpa.jdbc.QuerySQLCache
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.ResultSetType">6.11.
+ openjpa.jdbc.ResultSetType
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.Schema">6.12.
+ openjpa.jdbc.Schema
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.SchemaFactory">6.13.
+ openjpa.jdbc.SchemaFactory
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.Schemas">6.14.
+ openjpa.jdbc.Schemas
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.SQLFactory">6.15.
+ openjpa.jdbc.SQLFactory
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.SubclassFetchMode">6.16.
+ openjpa.jdbc.SubclassFetchMode
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.SynchronizeMappings">6.17.
+ openjpa.jdbc.SynchronizeMappings
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.TransactionIsolation">6.18.
+ openjpa.jdbc.TransactionIsolation
+ </a></span></dt><dt><span class="section"><a href="#openjpa.jdbc.UpdateManager">6.19.
+ openjpa.jdbc.UpdateManager
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_spec_compatibility">6.20. Compatibility with Specification</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#ref_guide_logging">3.
+ Logging and Auditing
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_logging_channels">1.
+ Logging Channels
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_logging_openjpa">2.
+ OpenJPA Logging
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_logging_noop">3.
+ Disabling Logging
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_logging_log4j">4.
+ Log4J
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_logging_commons">5.
+ Apache Commons Logging
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_logging_jdk14">5.1.
+ JDK java.util.logging
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_logging_slf4j">6.
+ SLF4J
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_logging_custom">7.
+ Custom Log
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_audit">8. OpenJPA Audit</a></span></dt><dd><dl><dt><span class="section"><a href="#d5e9395">8.1. Configuration</a></span></dt><dt><span class="section"><a href="#d5e9417">8.2. Developing custom auditing</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#ref_guide_dbsetup">4.
+ JDBC
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_dbsetup_builtin">1.
+ Using the OpenJPA DataSource
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_dbsetup_auto">1.1.
+ Optional Connection Pooling
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_config">1.2.
+ Configuring the OpenJPA DataSource
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_dbcp">1.3.
+ Configuring Apache Commons DBCP
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_dbsetup_thirdparty">2.
+ Using a Third-Party DataSource
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_dbsetup_thirdparty_enlist">2.1.
+ Managed and XA DataSources
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_setDSatRuntime">2.2. Setting the DataSource at runtime</a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_dbsetup_setDSPerEM">2.2.1. Using different DataSources for each EntityManager</a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_dbsetup_setDSBenefits">2.2.1.1. Benefits</a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_setDSLimitations">2.2.1.2. Limitations</a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_setDSError">2.2.1.3. Error handling</a></span></dt></dl></dd></dl></dd></dl></dd><dt><span class="section"><a href="#ref_guide_dbsetup_sqlconn">3.
+ Runtime Access to DataSource
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_dbsupport">4.
+ Database Support
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_dbsetup_dbdictprops">4.1.
+ DBDictionary Properties
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_dbsupport_firebird">4.2.
+ FirebirdDictionary Properties
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_dbsupport_mysql">4.3.
+ MySQLDictionary Properties
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_dbsupport_oracle">4.4.
+ OracleDictionary Properties
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_dbsupport_sybase">4.5.
+ SybaseDictionary Properties
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_dbsupport_db2">4.6.
+ DB2 Properties
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_dbsupport_delim_id">4.7.
+ Delimited Identifiers Support
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_dbsetup_isolation">5.
+ Setting the Transaction Isolation
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_sql92">6.
+ Setting the SQL Join Syntax
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_multidb">7.
+ Accessing Multiple Databases
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_retain">8.
+ Configuring the Use of JDBC Connections
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_stmtbatch">9.
+ Statement Batching
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_dbsetup_lrs">10.
+ Large Result Sets
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_schema_def">11.
+ Default Schema
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_schema_info">12.
+ Schema Reflection
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_schema_info_list">12.1.
+ Schemas List
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_schema_info_factory">12.2.
+ Schema Factory
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_schema_schematool">13.
+ Schema Tool
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_schema_xml">14.
+ XML Schema Format
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#ref_guide_pc">5.
+ Persistent Classes
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_pc_pcclasses">1.
+ Persistent Class List
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_enhance">2.
+ Enhancement
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_pc_enhance_build">2.1.
+ Enhancing at Build Time
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_enhance_runtime_container">2.2.
+ Enhancing JPA Entities on Deployment
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_enhance_runtime">2.3.
+ Enhancing at Runtime
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_enhance_dynamic">2.4.
+ Enhancing Dynamically at Runtime
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_enhance_unenhanced_types">2.5.
+ Omitting the OpenJPA enhancer
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_pc_interfaces">3. Managed Interfaces</a></span></dt><dt><span class="section"><a href="#ref_guide_pc_oid">4.
+ Object Identity
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_pc_oid_datastore">4.1.
+ Datastore Identity
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_oid_entitypk">4.2.
+ Entities as Identity Fields
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_oid_application">4.3.
+ Application Identity Tool
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_oid_pkgen_autoinc">4.4.
+ Autoassign / Identity Strategy Caveats
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_inverses">5.
+ Managed Inverses
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_scos">6.
+ Persistent Fields
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_pc_scos_restore">6.1.
+ Restoring State
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_scos_order">6.2.
+ Typing and Ordering
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_calendar_timezone">6.3.
+ Calendar Fields and TimeZones
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_scos_proxy">6.4.
+ Proxies
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_pc_scos_proxy_smart">6.4.1.
+ Smart Proxies
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_scos_proxy_lrs">6.4.2.
+ Large Result Set Proxies
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_scos_proxy_custom">6.4.3.
+ Custom Proxies
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_pc_scos_proxy_serial">6.4.4.
+ Serialization
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_pc_extern">6.5.
+ Externalization
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_pc_extern_values">6.5.1.
+ External Values
+ </a></span></dt></dl></dd></dl></dd><dt><span class="section"><a href="#ref_guide_fetch">7.
+ Fetch Groups
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_fetch_custom">7.1.
+ Custom Fetch Groups
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_fetch_conf">7.2.
+ Custom Fetch Group Configuration
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_fetch_single_field">7.3.
+ Per-field Fetch Configuration
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_fetch_impl">7.4.
+ Implementation Notes
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_perfpack_eager">8.
+ Eager Fetching
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_perfpack_eager_conf">8.1.
+ Configuring Eager Fetching
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_perfpack_eager_consider">8.2.
+ Eager Fetching Considerations and Limitations
+ </a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#ref_guide_meta">6.
+ Metadata
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_meta_factory">1.
+ Metadata Factory
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_meta_repository">2. Metadata Repository</a></span></dt><dt><span class="section"><a href="#ref_guide_meta_jpa">3.
+ Additional JPA Metadata
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_meta_jpa_datastoreid">3.1.
+ Datastore Identity
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_meta_jpa_version">3.2.
+ Surrogate Version
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_meta_jpa_persistent">3.3.
+ Persistent Field Values
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_meta_jpa_persistent_coll">3.4. Persistent Collection Fields</a></span></dt><dt><span class="section"><a href="#ref_guide_meta_jpa_persistent_map">3.5. Persistent Map Fields</a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_meta_ext">4.
+ Metadata Extensions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_meta_class">4.1.
+ Class Extensions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#fetch-groups">4.1.1.
+ Fetch Groups
+ </a></span></dt><dt><span class="section"><a href="#data-cache">4.1.2.
+ Data Cache
+ </a></span></dt><dt><span class="section"><a href="#detached-state-field">4.1.3.
+ Detached State
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_meta_field">4.2.
+ Field Extensions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dependent">4.2.1.
+ Dependent
+ </a></span></dt><dt><span class="section"><a href="#load-fetch-group">4.2.2.
+ Load Fetch Group
+ </a></span></dt><dt><span class="section"><a href="#lrs">4.2.3.
+ LRS
+ </a></span></dt><dt><span class="section"><a href="#inverse-logical">4.2.4.
+ Inverse-Logical
+ </a></span></dt><dt><span class="section"><a href="#read-only">4.2.5.
+ Read-Only
+ </a></span></dt><dt><span class="section"><a href="#type">4.2.6.
+ Type
+ </a></span></dt><dt><span class="section"><a href="#externalizer">4.2.7.
+ Externalizer
+ </a></span></dt><dt><span class="section"><a href="#factory">4.2.8.
+ Factory
+ </a></span></dt><dt><span class="section"><a href="#external-values">4.2.9.
+ External Values
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_meta_example">4.3.
+ Example
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_meta_xml">4.4.
+ XML extensions
+ </a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#ref_guide_mapping">7.
+ Mapping
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_mapping_mappingtool">1.
+ Forward Mapping
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_mapping_mappingtool_examples">1.1.
+ Using the Mapping Tool
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_ddl_examples">1.2.
+ Generating DDL SQL
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_synch">1.3.
+ Runtime Forward Mapping
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_pc_reverse">2.
+ Reverse Mapping
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_pc_reverse_custom">2.1.
+ Customizing Reverse Mapping
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_mapping_middle">3.
+ Meet-in-the-Middle Mapping
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_defaults">4.
+ Mapping Defaults
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_factory">5.
+ Mapping Factory
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_notes_nonstdjoins">6.
+ Non-Standard Joins
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa">7.
+ Additional JPA Mappings
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_mapping_jpa_datastoreid">7.1.
+ Datastore Identity Mapping
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_version">7.2.
+ Surrogate Version Mapping
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_columns">7.3.
+ Multi-Column Mappings
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_fieldjoin">7.4.
+ Join Column Attribute Targets
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_embed">7.5.
+ Embedded Mapping
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_coll">7.6.
+ Collections
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_mapping_jpa_coll_table">7.6.1.
+ Container Table
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_coll_joincols">7.6.2.
+ Element Join Columns
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_coll_order">7.6.3.
+ Order Column
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_mapping_jpa_onemany">7.7.
+ One-Sided One-Many Mapping
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_map">7.8.
+ Maps
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_mapping_jpa_map_keycols">7.8.1. Key Columns</a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_map_keyjoincols">7.8.2. Key Join Columns</a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_map_embedkey">7.8.3. Key Embedded Mapping</a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_map_ex">7.8.4. Examples</a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_mapping_jpa_constraints">7.9.
+ Indexes and Constraints
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_mapping_jpa_index">7.9.1.
+ Indexes
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_fk">7.9.2.
+ Foreign Keys
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_jpa_unique">7.9.3.
+ Unique Constraints
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_xmlmapping">7.10.
+ XML Column Mapping
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_streamsupport">7.11.
+ LOB Streaming
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_mapping_limits">8.
+ Mapping Limitations
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_mapping_limits_tpc">8.1.
+ Table Per Class
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_mapping_ext">9.
+ Mapping Extensions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_mapping_ext_cls">9.1.
+ Class Extensions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#subclass-fetch-mode">9.1.1.
+ Subclass Fetch Mode
+ </a></span></dt><dt><span class="section"><a href="#class-strategy">9.1.2.
+ Strategy
+ </a></span></dt><dt><span class="section"><a href="#discriminator-strategy">9.1.3.
+ Discriminator Strategy
+ </a></span></dt><dt><span class="section"><a href="#version-strategy">9.1.4.
+ Version Strategy
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_mapping_ext_field">9.2.
+ Field Extensions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#eager-fetch-mode">9.2.1.
+ Eager Fetch Mode
+ </a></span></dt><dt><span class="section"><a href="#nonpolymorphic">9.2.2.
+ Nonpolymorphic
+ </a></span></dt><dt><span class="section"><a href="#class-criteria">9.2.3.
+ Class Criteria
+ </a></span></dt><dt><span class="section"><a href="#strategy">9.2.4.
+ Strategy
+ </a></span></dt></dl></dd></dl></dd><dt><span class="section"><a href="#ref_guide_mapping_custom">10.
+ Custom Mappings
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_mapping_custom_class">10.1.
+ Custom Class Mapping
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_custom_versdiscrim">10.2.
+ Custom Discriminator and Version Strategies
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_custom_field">10.3.
+ Custom Field Mapping
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_mapping_custom_vhandler">10.3.1.
+ Value Handlers
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_custom_fieldstrat">10.3.2.
+ Field Strategies
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_mapping_custom_field_conf">10.3.3.
+ Configuration
+ </a></span></dt></dl></dd></dl></dd><dt><span class="section"><a href="#ref_guide_orphan">11.
+ Orphaned Keys
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#ref_guide_deploy">8.
+ Deployment
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_deploy_factory">1.
+ Factory Deployment
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_deploy_factory_standalone">1.1.
+ Standalone Deployment
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_deploy_inject">1.2.
+ EntityManager Injection
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_enterprise_trans">2.
+ Integrating with the Transaction Manager
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_enterprise_xa">3.
+ XA Transactions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_enterprise_xa_req">3.1.
+ Using OpenJPA with XA Transactions
+ </a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#ref_guide_runtime">9.
+ Runtime Extensions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_runtime_arch">1.
+ Architecture
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_runtime_broker_finalization">1.1.
+ Broker Finalization
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_runtime_broker_extension">1.2.
+ Broker Customization and Eviction
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_runtime_jpa">2.
+ JPA Extensions
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_runtime_emfactory">2.1.
+ OpenJPAEntityManagerFactory
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_runtime_em">2.2.
+ OpenJPAEntityManager
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_runtime_jpaquery">2.3.
+ OpenJPAQuery
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_runtime_jpaextent">2.4.
+ Extent
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_runtime_jpacache">2.5.
+ StoreCache
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_runtime_jpaquerycache">2.6.
+ QueryResultCache
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_runtime_jpafetch">2.7.
+ FetchPlan
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_runtime_openjpaentitytransaction">2.8.
+ OpenJPAEntityTransaction
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_runtime_openjpapersistence">2.9.
+ OpenJPAPersistence
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_locking">3.
+ Object Locking
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_locking_default">3.1.
+ Configuring Default Locking
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_locking_runtime">3.2.
+ Configuring Lock Levels at Runtime
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_locking_apis">3.3.
+ Object Locking APIs
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_locking_lockmgr">3.4.
+ Lock Manager
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_locking_rules">3.5.
+ Rules for Locking Behavior
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_locking_issues">3.6.
+ Known Issues and Limitations
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_savepoints">4.
+ Savepoints
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#reg_guide_savepoints_using">4.1.
+ Using Savepoints
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_savepoints_conf">4.2.
+ Configuring Savepoints
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_enterprise_methodql">5.
+ MethodQL
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_sequence">6.
+ Generators
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_sequence_runtime">6.1.
+ Runtime Access
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_runtime_pm_event">7.
+ Transaction Events
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_enterprise_abstractstore">8.
+ Non-Relational Stores
+ </a></span></dt></dl></dd><dt><span class="chapter"><a href="#ref_guide_caching">10.
+ Caching
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_cache">1.
+ Data Cache
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_cache_conf">1.1.
+ Data Cache Configuration
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_data_cache">1.1.1.
+ openjpa.DataCache Configuration
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_shared_cache_mode_integration">1.1.2.
+ Integration with JPA standard shared cache mode
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_cache_distribution">1.1.3. Distributing instances across cache partitions</a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_cache_use">1.2.
+ Data Cache Usage
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_cache_use_JPA">1.2.1. Using the JPA standard Cache interface</a></span></dt><dt><span class="section"><a href="#ref_guide_cache_use_openJPA">1.2.2. Using the OpenJPA StoreCache extensions</a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_cache_statistics">1.3.
+ Cache Statistics
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_cache_query">1.4.
+ Query Cache
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_cache_extension">1.5.
+ Cache Extension
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_cache_notes">1.6.
+ Important Notes
+ </a></span></dt><dt><span class="section"><a href="#datastore_cache_issues">1.7.
+ Known Issues and Limitations
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_cache_querycomp">2.
+ Query Compilation Cache
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_cache_querysql">3. Prepared SQL Cache</a></span></dt></dl></dd><dt><span class="chapter"><a href="#ref_guide_encryption">11.
+ Encryption Provider
+ </a></span></dt><dt><span class="chapter"><a href="#ref_guide_remote">12.
+ Remote and Offline Operation
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_detach">1.
+ Detach and Attach
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_detach_behavior">1.1.
+ Detach Behavior
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_attach_behavior">1.2.
+ Attach Behavior
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_detach_graph">1.3.
+ Defining the Detached Object Graph
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_detach_state">1.3.1.
+ Detached State
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_detach_field">1.3.2.
+ Detached State Field
+ </a></span></dt></dl></dd></dl></dd><dt><span class="section"><a href="#ref_guide_event">2.
+ Remote Event Notification Framework
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_event_conf">2.1.
+ Remote Commit Provider Configuration
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_event_conf_jms">2.1.1.
+ JMS
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_event_conf_tcp">2.1.2.
+ TCP
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_event_conf_common">2.1.3.
+ Common Properties
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_event_customization">2.2.
+ Customization
+ </a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#ref_guide_slice">13.
+ Slice: Distributed Persistence
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#slice_overview">1. Overview</a></span></dt><dt><span class="section"><a href="#features_and_limitations">2. Salient Features</a></span></dt><dd><dl><dt><span class="section"><a href="#d5e16758">2.1. Transparency</a></span></dt><dt><span class="section"><a href="#d5e16764">2.2. Scaling</a></span></dt><dt><span class="section"><a href="#d5e16770">2.3. Distributed Query</a></span></dt><dt><span class="section"><a href="#d5e16793">2.4. Data Distribution</a></span></dt><dt><span class="section"><a href="#d5e16812">2.5. Data Replication</a></span></dt><dt><span class="section"><a href="#d5e16821">2.6. Heterogeneous Database</a></span></dt><dt><span class="section"><a href="#d5e16824">2.7. Distributed Transaction</a></span></dt><dt><span class="section"><a href="#collocation_constraint">2.8. Collocation Constraint</a></span></dt></dl></dd><dt><span class="section"><a href="#slice_configuration">3. Usage</a></span></dt><dd><dl><d
t><span class="section"><a href="#d5e16841">3.1. How to activate Slice Runtime?</a></span></dt><dt><span class="section"><a href="#d5e16845">3.2. How to configure each database slice?</a></span></dt><dt><span class="section"><a href="#distribution_policy">3.3. Implement DistributionPolicy interface</a></span></dt><dt><span class="section"><a href="#replication_policy">3.4. Implement ReplicationPolicy interface</a></span></dt></dl></dd><dt><span class="section"><a href="#d5e16899">4. Configuration Properties</a></span></dt><dd><dl><dt><span class="section"><a href="#d5e16904">4.1. Global Properties</a></span></dt><dd><dl><dt><span class="section"><a href="#d5e16906">4.1.1. openjpa.slice.DistributionPolicy</a></span></dt><dt><span class="section"><a href="#d5e16912">4.1.2. openjpa.slice.Lenient</a></span></dt><dt><span class="section"><a href="#d5e16919">4.1.3. openjpa.slice.Master</a></span></dt><dt><span class="section"><a href="#d5e16927">4.1.4. openjpa.slice.Names</a></span></dt><
dt><span class="section"><a href="#d5e16935">4.1.5. openjpa.slice.ThreadingPolicy</a></span></dt><dt><span class="section"><a href="#d5e16961">4.1.6. openjpa.slice.TransactionPolicy</a></span></dt></dl></dd><dt><span class="section"><a href="#d5e16979">4.2. Per-Slice Properties</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#ref_guide_integration">14.
+ Third Party Integration
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_integration_ant">1.
+ Apache Ant
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_integration_conf">1.1.
+ Common Ant Configuration Options
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_integration_enhance">1.2.
+ Enhancer Ant Task
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_integration_appidtool">1.3.
+ Application Identity Tool Ant Task
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_integration_mappingtool">1.4.
+ Mapping Tool Ant Task
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_integration_revmappingtool">1.5.
+ Reverse Mapping Tool Ant Task
+ </a></span></dt><dt><span class="section"><a href="#ref_guide_integration_schematool">1.6.
+ Schema Tool Ant Task
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_integration_dbcp">2.
+ Apache Commons DBCP
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_integration_dbcp_conf">2.1.
+ Apache Commons DBCP Configuration Options
+ </a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#ref_guide_optimization">15.
+ Optimization Guidelines
+ </a></span></dt><dt><span class="chapter"><a href="#ref_guide_instrumentation">16.
+ Instrumentation
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_instrumentation_config">1.
+ Configuration
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#ref_guide_instrumentation_config_jmx">1.1.
+ JMX Platform MBean Enablement
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#ref_guide_instrumentation_custom">2.
+ Custom Providers and Instruments
+ </a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="#appendices">4. Appendices</a></span></dt><dd><dl><dt><span class="appendix"><a href="#jpa_resources">1.
+ JPA Resources
+ </a></span></dt><dt><span class="appendix"><a href="#supported_databases">2.
+ Supported Databases
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbappendix">1.
+ Overview
+ </a></span></dt><dt><span class="section"><a href="#dbsupport">2.
+ Verified Database Matrix
+ </a></span></dt><dt><span class="section"><a href="#dbcompatible">3.
+ Compatible Database Matrix
+ </a></span></dt><dt><span class="section"><a href="#dbunverified">4.
+ Unverified Database Matrix
+ </a></span></dt><dt><span class="section"><a href="#dbsupport_derby">5.
+ Apache Derby
+ </a></span></dt><dt><span class="section"><a href="#dbsupport_interbase">6.
+ Borland Interbase
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_interbase_issues">6.1.
+ Known issues with Interbase
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_jdatastore">7.
+ JDataStore
+ </a></span></dt><dt><span class="section"><a href="#dbsupport_db2">8.
+ IBM DB2
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_db2_issues">8.1.
+ Known issues with DB2
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_empress">9.
+ Empress
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_empress_issues">9.1.
+ Known issues with Empress
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_h2">10.
+ H2 Database Engine
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_h2_issues">10.1.
+ Known issues with H2 Database Engine
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_hypersonic">11.
+ Hypersonic
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_hypersonic_issues">11.1.
+ Known issues with Hypersonic
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_firebird">12.
+ Firebird
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_firebird_issues">12.1.
+ Known issues with Firebird
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_informix">13.
+ Informix
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_informix_issues">13.1.
+ Known issues with Informix
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_ingres">14.
+ Ingres Database
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_ingres_issues">14.1.
+ Known issues with Ingres
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_intersystems_cache">15.
+ InterSystems Cache
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_intersystems_cache_issues">15.1.
+ Known issues with InterSystems Cache
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_access">16.
+ Microsoft Access
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_access_issues">16.1.
+ Known issues with Microsoft Access
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_sqlserver">17.
+ Microsoft SQL Server
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_sqlserver_issues">17.1.
+ Known issues with SQL Server
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_foxpro">18.
+ Microsoft FoxPro
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_foxpro_issues">18.1.
+ Known issues with Microsoft FoxPro
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_mysql">19.
+ MySQL
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_mysql_query_hints">19.1.
+ Using Query Hints with MySQL
+ </a></span></dt><dt><span class="section"><a href="#dbsupport_mysql_issues">19.2.
+ Known issues with MySQL
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_oracle">20.
+ Oracle
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_oracle_query_hints">20.1.
+ Using Query Hints with Oracle
+ </a></span></dt><dt><span class="section"><a href="#dbsupport_oracle_issues">20.2.
+ Known issues with Oracle
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_pointbase">21.
+ Pointbase
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_pointbase_issues">21.1.
+ Known issues with Pointbase
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_postgresql">22.
+ PostgreSQL
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_postgresql_issues">22.1.
+ Known issues with PostgreSQL
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_soliddb">23.
+ IBM solidDB
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_soliddb_table_types">23.1.
+ M-type tables vs. D-type tables
+ </a></span></dt><dt><span class="section"><a href="#dbsupport_soliddb_concurrency_control">23.2.
+ Concurrency control mechanism
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#dbsupport_sybase">24.
+ Sybase Adaptive Server
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#dbsupport_sybase_issues">24.1.
+ Known issues with Sybase
+ </a></span></dt></dl></dd></dl></dd><dt><span class="appendix"><a href="#migration_considerations">3.
+ Migration Considerations
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_2.0">1.
+ OpenJPA 2.0.0
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_2.0_incompatibilities">1.1.
+ Incompatibilities
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#getProperties">1.1.1.
+ getProperties()
+ </a></span></dt><dt><span class="section"><a href="#migration_detach_behavior">1.1.2.
+ Detach Behavior
+ </a></span></dt><dt><span class="section"><a href="#private_persistent_properties">1.1.3.
+ Use of private persistent properties
+ </a></span></dt><dt><span class="section"><a href="#setParameter">1.1.4.
+ Query.setParameter()
+ </a></span></dt><dt><span class="section"><a href="#serialization">1.1.5.
+ Serialization of Entities
+ </a></span></dt><dt><span class="section"><a href="#QuerySQLCache">1.1.6.
+ openjpa.jdbc.QuerySQLCache
+ </a></span></dt></dl></dd><dt><span class="section"><a href="#Disabling AutoOff Collection Tracking">1.2.
+ Disabling AutoOff Collection Tracking
+ </a></span></dt><dt><span class="section"><a href="#internal_differences">1.3.
+ Internal Behavioral Differences
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#prePostUpdate">1.3.1.
+ PreUpdate/PostUpdate Life Cycle Callbacks
+ </a></span></dt><dt><span class="section"><a href="#createemf">1.3.2.
+ createEntityManagerFactory Exceptions
+ </a></span></dt><dt><span class="section"><a href="#querycache">1.3.3.
+ openjpa.QueryCache default
+ </a></span></dt></dl></dd></dl></dd><dt><span class="section"><a href="#jpa_2.2">2.
+ OpenJPA 2.2.0
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_2.2_incompatibilities">2.1. Incompatibilities</a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_2.2_allocationSize">2.1.1.
+ allocationSize Property of Sequence Generator
+ </a></span></dt><dt><span class="section"><a href="#jpa_2.2_metamodelArrays">2.1.2.
+ MetaModel Attributes for Arrays
+ </a></span></dt><dt><span class="section"><a href="#jpa_2.2_SupportsSetClob">2.1.3.
+ supportsSetClob Property.
+ </a></span></dt><dt><span class="section"><a href="#jpa_2.2_UseNativeSequenceCache">2.1.4.
+ useNativeSequenceCache Property.
+ </a></span></dt><dt><span class="section"><a href="#jpa_2.2_cascadePersist">2.1.5.
+ Cascade persist behavior
+ </a></span></dt><dt><span class="section"><a href="#jpa_2.2_LifecycleEventManager">2.1.6.
+ Life Cycle Event Manager Callback Behavior
+ </a></span></dt><dt><span class="section"><a href="#jpa_2.2_sharedCacheMode">2.1.7.
+ shared-cache-mode Property
+ </a></span></dt></dl></dd></dl></dd><dt><span class="section"><a href="#jpa_2.3">3.
+ OpenJPA 2.3.0
+ </a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_2.3_incompatibilities">3.1. Incompatibilities</a></span></dt><dd><dl><dt><span class="section"><a href="#jpa_2.3_MappingTool">3.1.1.
+ MappingTool Behavior for DB2 and Derby
+ </a></span></dt><dt><span class="section"><a href="#jpa_2.3_RequiresSearchStringEscapeForLike">3.1.2.
+ RequiresSearchStringEscapeForLike DBDictionary Property
+ </a></span></dt><dt><span class="section"><a href="#ReturnNullOnEmptyAggregateResult">3.1.3.
+ Return value of aggregate functions in SELECT clause
+ </a></span></dt></dl></dd></dl></dd></dl></dd></dl></dd></dl></div><div class="list-of-tables"><p><b>List of Tables</b></p><dl><dt>2.1. <a href="#d5e131">
[... 40712 lines stripped ...]