<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_252) on Fri Jul 16 09:38:40 UTC 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JAXBHelperContext (EclipseLink 3.0.2, API Reference)</title>
<meta name="date" content="2021-07-16">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="JAXBHelperContext (EclipseLink 3.0.2, API Reference)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">EclipseLink 3.0.2, API Reference</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBDataFactory.html" title="class in org.eclipse.persistence.sdo.helper.jaxb"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBList.html" title="class in org.eclipse.persistence.sdo.helper.jaxb"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/eclipse/persistence/sdo/helper/jaxb/JAXBHelperContext.html" target="_top">Frames</a></li>
<li><a href="JAXBHelperContext.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.classes.inherited.from.class.org.eclipse.persistence.sdo.helper.SDOHelperContext">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.org.eclipse.persistence.sdo.helper.SDOHelperContext">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.eclipse.persistence.sdo.helper.jaxb</div>
<h2 title="Class JAXBHelperContext" class="title">Class JAXBHelperContext</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html" title="class in org.eclipse.persistence.sdo.helper">org.eclipse.persistence.sdo.helper.SDOHelperContext</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.persistence.sdo.helper.jaxb.JAXBHelperContext</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>commonj.sdo.helper.HelperContext</dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">JAXBHelperContext</span>
extends <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html" title="class in org.eclipse.persistence.sdo.helper">SDOHelperContext</a></pre>
<div class="block"><p>The JAXBHelperContext is a bridge between POJOs and SDO DataObjects.  The bridge
 is based on their corresponding XML representations.  For the POJOs the XML
 representation is specified using JAXB annotations or object-to-XML mappings.</p>

 <p>The following steps are required to create the JAXBHelperContext.  The XML schema
 used in step #3 is the same one that the POJOs are mapped to.  This step has been
 separated so that SDO annotations could be added to the XML schema.
 <p>Step #1 - Create the JAXBContext</p>
 <pre>
 JAXBContext jaxbContext = JAXBContext.newInstance("com.example.customer");
 </pre>
 <p>Step #2 - Create the JAXBHelperContext</p>
 <pre>
 JAXBHelperContext jaxbHelperContext = new JAXBHelperContext(jaxbContext);
 </pre>
 <p>Step #3 - Create the SDO Metadata from an XML Schema</p>
 <pre>
 jaxbHelperContext.getXSDHelper().define(xmlSchema);
 </pre>

 <p>
 The JAXBHelperContext allows you to convert between POJOs and DataObjects using
 a wrap operation.
 <pre>
 Customer customer = new Customer();
 Address address new Address();
 address.setStreet("123 Any Street");
 customer.set(address);

 DataObject customerDO = jaxbHelperContext.wrap(customer);
 customerDO.getString("address/street");  // returns "123 Any Street"
 </pre>

 <p>
 The JAXBHelperContext allows you to convert between DataObjects and POJOs using
 an unwrap operation.
 <pre>
 Type customerType = jaxbHelperContext.getType(Customer.class);
 DataObject customerDO = jaxbHelperContext.getDataFactory().create(customerType);
 customerDO.set("first-name", "Jane");

 Customer customer = jaxbHelperContext.unwrap(customerDO);
 customer.getFirstName();  // returns "Jane"
 </pre>

 <p>
 Of course the POJOs may be JPA entities.  Below is an example of wrapping the
 results of a JPA query.
 <pre>
 EntityManagerFactory emf = Persistence.createEntityManagerFactory("CustomerExample");
 EntityManager em = emf.createEntityManager();
  List&lt;MyEntity&gt; entities = em.createQuery("SELECT e FROM MyEntity e WHERE ...").getResultList();
  List&lt;DataObject&gt; dataObjects = hc.wrap(entities);
 </pre></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.eclipse.persistence.sdo.helper.SDOHelperContext">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.eclipse.persistence.sdo.helper.<a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html" title="class in org.eclipse.persistence.sdo.helper">SDOHelperContext</a></h3>
<code><a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.HelperContextResolver.html" title="interface in org.eclipse.persistence.sdo.helper">SDOHelperContext.HelperContextResolver</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.MyNotificationFilter.html" title="class in org.eclipse.persistence.sdo.helper">SDOHelperContext.MyNotificationFilter</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.eclipse.persistence.sdo.helper.SDOHelperContext">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.persistence.sdo.helper.<a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html" title="class in org.eclipse.persistence.sdo.helper">SDOHelperContext</a></h3>
<code><a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#copyHelper">copyHelper</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#dataFactory">dataFactory</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#dataHelper">dataHelper</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#equalityHelper">equalityHelper</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#STRICT_TYPE_CHECKING_PROPERTY_NAME">STRICT_TYPE_CHECKING_PROPERTY_NAME</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#typeHelper">typeHelper</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#xmlHelper">xmlHelper</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#xsdHelper">xsdHelper</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBHelperContext.html#JAXBHelperContext-jakarta.xml.bind.JAXBContext-">JAXBHelperContext</a></span>(jakarta.xml.bind.JAXBContext&nbsp;aJAXBContext)</code>
<div class="block">Create a new instance of JAXBHelperContext</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBHelperContext.html#JAXBHelperContext-jakarta.xml.bind.JAXBContext-java.lang.ClassLoader-">JAXBHelperContext</a></span>(jakarta.xml.bind.JAXBContext&nbsp;aJAXBContext,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a>&nbsp;aClassLoader)</code>
<div class="block">Create a new instance of JAXBHelperContext</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBHelperContext.html#getClass-commonj.sdo.Type-">getClass</a></span>(commonj.sdo.Type&nbsp;type)</code>
<div class="block">Return the wrapped class corresponding to the SDO type.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>jakarta.xml.bind.JAXBContext</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBHelperContext.html#getJAXBContext--">getJAXBContext</a></span>()</code>
<div class="block">Return the JAXBContext.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>commonj.sdo.Type</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBHelperContext.html#getType-java.lang.Class-">getType</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;entityClass)</code>
<div class="block">Return the SDO type corresponding to the wrapped class.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBHelperContext.html#initialize-java.lang.ClassLoader-">initialize</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a>&nbsp;aClassLoader)</code>
<div class="block">Override the default helpers/factories, replacing them
 with JAXB aware ones where necessary.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBHelperContext.html#unwrap-java.util.Collection-">unwrap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;commonj.sdo.DataObject&gt;&nbsp;dataObjects)</code>
<div class="block">Perform the unwrap operation on each of the DataObjects in the collection,
 and return the results as a List.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBHelperContext.html#unwrap-commonj.sdo.DataObject-">unwrap</a></span>(commonj.sdo.DataObject&nbsp;dataObject)</code>
<div class="block">Return the POJO that is wrapped by the DataObject.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;commonj.sdo.DataObject&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBHelperContext.html#wrap-java.util.Collection-">wrap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;entities)</code>
<div class="block">Perform the wrap operation on each of the POJOs in the collection,
 and return the results as a List.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>commonj.sdo.DataObject</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBHelperContext.html#wrap-java.lang.Object-">wrap</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;entity)</code>
<div class="block">Return a DataObject that wraps a POJO.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.eclipse.persistence.sdo.helper.SDOHelperContext">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.persistence.sdo.helper.<a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html" title="class in org.eclipse.persistence.sdo.helper">SDOHelperContext</a></h3>
<code><a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#addAlias-java.lang.String-java.lang.String-">addAlias</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#createResolvable--">createResolvable</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#createResolvable-java.lang.Object-">createResolvable</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getCopyHelper--">getCopyHelper</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getDataFactory--">getDataFactory</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getDataHelper--">getDataHelper</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getEqualityHelper--">getEqualityHelper</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getHelperContext--">getHelperContext</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getHelperContext-java.lang.String-">getHelperContext</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getHelperContext-java.lang.String-java.lang.ClassLoader-">getHelperContext</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getHelperContextResolver--">getHelperContextResolver</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getIdentifier--">getIdentifier</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getProperty-java.lang.String-">getProperty</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getTypeHelper--">getTypeHelper</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getWrapperTypes--">getWrapperTypes</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getXMLHelper--">getXMLHelper</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#getXSDHelper--">getXSDHelper</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#hasHelperContext-java.lang.String-">hasHelperContext</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#isApplicationResolverSet--">isApplicationResolverSet</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#isStrictTypeCheckingEnabled--">isStrictTypeCheckingEnabled</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#makeDefaultContext--">makeDefaultContext</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#putHelperContext-java.lang.ClassLoader-commonj.sdo.helper.HelperContext-">putHelperContext</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#putHelperContext-commonj.sdo.helper.HelperContext-">putHelperContext</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#putWrapperTypes-java.util.Map-">putWrapperTypes</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#removeHelerContextResolver--">removeHelerContextResolver</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#removeHelperContext-java.lang.ClassLoader-">removeHelperContext</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#removeHelperContext-java.lang.String-java.lang.ClassLoader-">removeHelperContext</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#reset--">reset</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#setApplicationResolver-org.eclipse.persistence.sdo.helper.ApplicationResolver-">setApplicationResolver</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#setHelperContextResolver-java.lang.Object-">setHelperContextResolver</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#setHelperContextResolver-org.eclipse.persistence.sdo.helper.SDOHelperContext.HelperContextResolver-">setHelperContextResolver</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#setProperty-java.lang.String-java.lang.Object-">setProperty</a>, <a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#setStrictTypeCheckingEnabled-boolean-">setStrictTypeCheckingEnabled</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="JAXBHelperContext-jakarta.xml.bind.JAXBContext-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>JAXBHelperContext</h4>
<pre>public&nbsp;JAXBHelperContext(jakarta.xml.bind.JAXBContext&nbsp;aJAXBContext)</pre>
<div class="block">Create a new instance of JAXBHelperContext</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>aJAXBContext</code> - - The JAXBContext representing the class to XML schema mapping.</dd>
</dl>
</li>
</ul>
<a name="JAXBHelperContext-jakarta.xml.bind.JAXBContext-java.lang.ClassLoader-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>JAXBHelperContext</h4>
<pre>public&nbsp;JAXBHelperContext(jakarta.xml.bind.JAXBContext&nbsp;aJAXBContext,
                         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a>&nbsp;aClassLoader)</pre>
<div class="block">Create a new instance of JAXBHelperContext</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>aJAXBContext</code> - - The JAXBContext representing the class to XML schema mapping.</dd>
<dd><code>aClassLoader</code> - - The ClassLoader containing the generated SDO classes/interfaces (if any).</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="initialize-java.lang.ClassLoader-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialize</h4>
<pre>protected&nbsp;void&nbsp;initialize(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a>&nbsp;aClassLoader)</pre>
<div class="block">Override the default helpers/factories, replacing them
 with JAXB aware ones where necessary.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html#initialize-java.lang.ClassLoader-">initialize</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/eclipse/persistence/sdo/helper/SDOHelperContext.html" title="class in org.eclipse.persistence.sdo.helper">SDOHelperContext</a></code></dd>
</dl>
</li>
</ul>
<a name="getJAXBContext--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getJAXBContext</h4>
<pre>public&nbsp;jakarta.xml.bind.JAXBContext&nbsp;getJAXBContext()</pre>
<div class="block">Return the JAXBContext.  The JAXBContext represents the Java
 class to XML schema information for the POJOs.</div>
</li>
</ul>
<a name="getType-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getType</h4>
<pre>public&nbsp;commonj.sdo.Type&nbsp;getType(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;entityClass)</pre>
<div class="block">Return the SDO type corresponding to the wrapped class.
 <pre>
 Type customerType = jaxbHelperContext.getType(Customer.class);
 DataObject customerDO = jaxbHelperContext.getDataFactory().create(customerType);
 </pre></div>
</li>
</ul>
<a name="getClass-commonj.sdo.Type-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getClass</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;getClass(commonj.sdo.Type&nbsp;type)</pre>
<div class="block">Return the wrapped class corresponding to the SDO type.
 <pre>
 Type customerType = jaxbHelperContext.getTypeHelper().getType("urn:customer", "customer");
 Class customerClass = jaxbHelperContext.getClass(customerType);
 </pre></div>
</li>
</ul>
<a name="wrap-java.lang.Object-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>wrap</h4>
<pre>public&nbsp;commonj.sdo.DataObject&nbsp;wrap(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;entity)</pre>
<div class="block">Return a DataObject that wraps a POJO.  This call should be
 made on the root POJO.
 <pre>
 Customer customer = new Customer();
 Address address new Address();
 address.setStreet("123 Any Street");
 customer.set(address);

 DataObject customerDO = jaxbHelperContext.wrap(customer);
 customerDO.getString("address/street");  // returns "123 Any Street"
 </pre>
 Multiple calls to wrap for the same instance POJO return the
 same instance of DataObject, in other words the following is
 always true:
 <pre>
 jaxbHelperContext.wrap(customer123) == jaxbHelperContext.wrap(customer123)
 jaxbHelperContext.wrap(customer123) != jaxbHelperContext.wrap(customer456)
 </pre></div>
</li>
</ul>
<a name="wrap-java.util.Collection-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>wrap</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;commonj.sdo.DataObject&gt;&nbsp;wrap(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;entities)</pre>
<div class="block">Perform the wrap operation on each of the POJOs in the collection,
 and return the results as a List.</div>
</li>
</ul>
<a name="unwrap-commonj.sdo.DataObject-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unwrap</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;unwrap(commonj.sdo.DataObject&nbsp;dataObject)</pre>
<div class="block">Return the POJO that is wrapped by the DataObject.
 <pre>
 Type customerType = jaxbHelperContext.getType(Customer.class);
 DataObject customerDO = jaxbHelperContext.getDataFactory().create(customerType);
 DataObject addressDO = customerDO.create("address");
 addressDO.set("street", "123 Any Street");

 Customer customer = (Customer) jaxbHelperContext.unwrap(customerDO);
 customer.getAddress().getStreet();  // returns "123 Any Street"
 </pre>
 Multiple calls to unwrap for the same DataObject must return the
 same instance of Object, in other words the following is always true:
 <pre>
 jaxbHelperContext.unwrap(customerDO123) == jaxbHelperContext.unwrap(customerDO123)
 jaxbHelperContext.unwrap(customerDO123) != jaxbHelperContext.unwrap(customerDO456)
 customer123 == jaxbHelperContext.unwrap(jaxbHelperContext.wrap(customer123))
 </pre></div>
</li>
</ul>
<a name="unwrap-java.util.Collection-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>unwrap</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;unwrap(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;commonj.sdo.DataObject&gt;&nbsp;dataObjects)</pre>
<div class="block">Perform the unwrap operation on each of the DataObjects in the collection,
 and return the results as a List.</div>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">EclipseLink 3.0.2, API Reference</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBDataFactory.html" title="class in org.eclipse.persistence.sdo.helper.jaxb"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/eclipse/persistence/sdo/helper/jaxb/JAXBList.html" title="class in org.eclipse.persistence.sdo.helper.jaxb"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/eclipse/persistence/sdo/helper/jaxb/JAXBHelperContext.html" target="_top">Frames</a></li>
<li><a href="JAXBHelperContext.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.classes.inherited.from.class.org.eclipse.persistence.sdo.helper.SDOHelperContext">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.org.eclipse.persistence.sdo.helper.SDOHelperContext">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="http://www.eclipse.org/eclipselink">Eclipse.org - EclipseLink Project</a>. All rights reserved.</small></p>
</body>
</html>
