<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!--

    Copyright (c) 2020 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0 which is available at
    http://www.eclipse.org/legal/epl-2.0,
    or the Eclipse Distribution License v. 1.0 which is available at
    http://www.eclipse.org/org/documents/edl-v10.php.

    SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause

-->

<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
        <title>About EclipseLink 3.0</title>
    </head>
    <body lang="EN-US">
        <h1>EclipseLink 3.0</h1>
        <p>Target Date - TBD 2019</p>
        <h2>About</h2>
        <p>The <a href="http://www.eclipse.org/eclipselink">EclipseLink</a> project's
            goal is to provide a complete persistence framework that is both comprehensive
            and universal. It will run in any Java environment and read and write objects
            to virtually any type of data source, including relational databases, and XML.
            EclipseLink will focus on providing leading edge support, including advanced
            feature extensions, for the dominant persistence standards for each target data
            source; Java Persistence API (JPA) for relational databases, Java API for XML
            Binding (JAXB) for XML, Service Data Objects (SDO), and Database Web services
            (DBWS). </p>

        <p>For tips on getting started with EclipseLink, please see the following resources:
        </p>
        <ul>
            <li> <a href="http://www.eclipse.org/eclipselink/releases/3.0.php">EclipseLink 3.0 Release Notes</a></li>
            <li> <a href="http://www.eclipse.org/eclipselink/documentation">Documentation</a></li>
            <li> <a href="http://wiki.eclipse.org/EclipseLink/Examples">Examples and How To</a></li>
        </ul>
        <h3>License</h3>

        <p>
            The Eclipse Foundation makes available all content in this plug-in
            (&quot;Content&quot;). Unless otherwise indicated below, the Content
            is provided to you under the terms and conditions of the Eclipse
            Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
            available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
            For purposes of the EPL, &quot;Program&quot; will mean the Content.
        </p>

        <p>
            If you did not receive this Content directly from the Eclipse
            Foundation, the Content is being redistributed by another party
            (&quot;Redistributor&quot;) and different terms and conditions may
            apply to your use of any object code in the Content. Check the
            Redistributor's license that was provided with the Content. If no such
            license exists, contact the Redistributor. Unless otherwise indicated
            below, the terms and conditions of the EPL still apply to any source
            code in the Content and such source code may be obtained at <a
                href="http://www.eclipse.org/">http://www.eclipse.org</a>.
        </p>
        <h3>Third Party Content</h3>
        <p>The Content includes items that have been sourced from third
            parties as set out below. If you did not receive this Content directly
            from the Eclipse Foundation, the following is provided for
            informational purposes only, and you should look to the
            Redistributor's license for terms and conditions of use.</p>

        <ul>
            <li>Foundation Dependencies
                <ul>
                    <li><a href="#JSON">Java API for JSON Processing - Reference Implementation</a></li>
                </ul>
            </li>
            <li>EclipseLink JPA
                <ul>
                    <li><a href="#ANTLR">ANTLR</a></li>
                    <li><a href="#JPA22">Java Persistence API (JPA) 2.2</a></li>
                    <li><a href="#JSON">Java API for JSON Processing - Reference Implementation</a></li>
                </ul>
            </li>
            <li>EclipseLink MOXy
                <ul>
                    <li><a href="#JAXB">Java Architecture for XML Binding (JAXB)</a></li>
                    <li><a href="#MAIL">Java Mail</a></li>
                    <li><a href="#JSON">Java API for JSON Processing - Reference Implementation</a></li>
                </ul>
            </li>
            <li>EclipseLink SDO
                <ul>
                    <li><a href="#SDO">Service Data Objects (SDO)</a></li>
                </ul>
            </li>
            <li>EclipseLink DBWS
                <ul>
                    <li><a href="#Servlet">Java Servlet 2.4 (or higher)</a></li>
                </ul>
            </li>
            <li>Utilities
                <ul>
                    <li><a href="#JCA">Java Connector</a></li>
                    <li><a href="#WSDL4J">WSDL4J 1.6.2 </a></li>
                </ul>
            </li>
        </ul>
        <hr />
        <h4><a name="ANTLR" id="ANTLR"></a>ANTLR v3.5.2</h4>
        <blockquote>
            <p>The <a href="https://www.antlr3.org/">ANTLR library</a> (<a href="https://www.antlr3.org/license.html">license</a>)
                is included within EclipseLink Project to enable parsing of the Java Persistence
                Query language (JP QL). The ANTLR library is re-packaged within the project
                in the org.eclipse.persistence.internal.libraries.antlr.* packages. </p>
            <p>The source is available with the project's git repository. The binaries
                are distributed within the eclipselink.jar and in the org.eclipse.persistence.antlr_3.5.2.v*.jar
                bundle.</p>
        </blockquote>
        <h4><a name="JSON" id="JSON"></a>JSON Processing v1.1.5</h4>
        <blockquote>
            <p>The <a href="https://github.com/eclipse-ee4j/jsonp">JSON Processing</a> (<a href="https://github.com/eclipse-ee4j/jsonp/blob/1.1.5-RELEASE/LICENSE.md">license</a>)
                is included within EclipseLink Project to enable parsing of JSON files.</p>
            <p>The source is available with the project's git repository.</p>
        </blockquote>
        <h4><a name="JAXB" id="JAXB"></a>Java Architecture for XML Binding (JAXB) v2.2</h4>
        <blockquote>
            <p>The <a href="http://jaxb.java.net">JAXB libraries</a> distributed
                under <a href="http://glassfish.dev.java.net/public/CDDLv1.0.html">CDDL v1.0</a>
                are included within the EclipseLink Project to enable the MOXy component's
                implementation of JAXB.</p>
            <p>JAXB Libraries: </p>
            <ul>
                <li>jakarta.xml.bind-api.jar</li>
                <li>jaxb-osgi.jar</li>
            </ul>
        </blockquote>
        <h4><a name="JPA22" id="JPA2"></a>Java Persistence (JPA) 2.2</h4>
        <blockquote>
            <p>EclipseLink is the Java Persistence (JPA) 2.2 Reference Implementation
                (<a href="http://jcp.org/en/jsr/detail?id=338">JSR 338</a>).  The JPA 2.2
                specification API is included in EclipseLink under the <a href="https://www.eclipse.org/legal/epl-v20.html">EPL</a> and <a href="http://www.eclipse.org/org/documents/edl-v10.php">EDL</a> licenses.</p>
        </blockquote>
        <h4><a name="MAIL" id="MAIL"></a>Java Mail v1.4.0</h4>
        <blockquote>
            <p>The Java Mail library (mail.jar) can be downloaded from <a href="http://java.sun.com/products/javamail/javamail-1_4.html">java.sun.com</a>
                under <a href="http://glassfish.dev.java.net/public/CDDLv1.0.html">CDDL
                    v1.0</a> and is included within the EclipseLink Project distribution
                to support Web Services attachment handling in the MOXy component. It is only
                required when using Java SE 5 (Java Mail is included in Java SE 6).</p>
        </blockquote>
        <h4><a name="SDO" id="SDO"></a>Service Data Objects (SDO) v2.1.1</h4>
        <blockquote>
            <p>The <a href="http://jcp.org/aboutJava/communityprocess/pr/jsr235/index.html">Service
                    Data Objects (SDO) API</a> is distributed under a <a href="http://glassfish.dev.java.net/public/CDDLv1.0.html"> CDDLv1.0 </a> and  <a href="http://jcp.org/aboutJava/communityprocess/pr/jsr235/index.html">custom
                    license</a>. It provides the standard API implemented by the EclipseLink Project's SDO component.</p>
        </blockquote>
        <h4><a name="JCA" id="JCA"></a>Java Connector v1.6</h4>
        <blockquote>
            <p>The JCA 1.6 API is distributed under <a href="http://glassfish.dev.java.net/public/CDDLv1.0.html">
                    CDDLv1.0 </a>. </p>
            <p>This jar is being shipped and required by the Workbench only. When using
                EclipseLink in a container where JCA integration is required that container
                will provide the necessary API libraries.</p>
        </blockquote>
        <h4><a name="SERVLET" id="SERVLET"></a>Java Servlet 2.4</h4>
        <blockquote>
            <p>The <a href="http://jcp.org/aboutJava/communityprocess/final/jsr154/index.html">Java Servlet 2.4 specification</a>
                is distributed under the  <a href="http://www.apache.org/licenses/LICENSE-2.0.html">Apache 2.0 license</a>. The source code is part of the <a href="http://svn.apache.org/repos/asf/tomcat/trunk/java/javax/servlet/">Apache Tomcat project</a>
                <p>This jar is only required at design time for the DBWS Builder utility.</p>
        </blockquote>
        <h4><a name="WSDL4J" id="WSDL4J"></a>WSDL4j v1.6.2</h4>
        <blockquote>
            <p>WSDL4J 1.6.2 is available for download from the <a href="http://sourceforge.net/projects/wsdl4j">wsdl4j
                    project</a>. It distributed under <a href="http://opensource.org/licenses/cpl1.0.php">
                    CPLv1.0 </a>. </p>
            <p>This jar is only required at design time for the DBWS Builder utility.</p>
        </blockquote>
        <p></p>
    </body>
</html>
