{% extends "basic.html" %}

{% block title %}Apache TomEE & OpenEJB{% endblock %}
{% block content %}
<section xmlns="http://www.w3.org/1999/html">

    <div class="alert-message">
        <strong>Feedback Welcome!</strong>
        We use your feedback to focus efforts, develop new features, and to make TomEE better for everyone.
        <a href="mailto:users@tomee.apache.org?subject=Feedback%20on%20TomEE%207.0.0-M3&body=We'd%20like%20to%20hear%20about%20anything%20you'd%20like%20to%20tell%20us.%20%20If%20you're%20short%20on%20ideas%2C%20here%20are%20some%3A%0A%0A%20-%20Ways%20we%20can%20speed%20up%20or%20improve%20your%20ability%20to%20evaluate%20TomEE%0A%20-%20Anything%20you%20found%20difficult%20or%20inconvenient%20about%20using%20TomEE%0A%20-%20Documentation%20you%20would%20like%20to%20see%0A%20-%20Features%20you%20would%20like%20to%20have%0A%20-%20Anything%20in%20general%20to%20improve%20TomEE%20or%20help%20us%20grow%0A%0AKeep%20in%20mind%20that%20out%20of%20every%20100%20people%20that%20try%20something%20out%2C%20maybe%20one%20will%20actually%20post%20about%20it.%20%20Feel%20incredibly%20encouraged%20to%20let%20us%20know%20about%20your%20experiences%20with%20TomEE%20even%20if%20you%20think%20we've%20heard%20it%20a%20hundred%20times.%20%20Odds%20are%20we%20have%20not%20heard%20it%20and%2C%20if%20we%20have%2C%20the%20most%20requested%20things%20are%20done%20first.%20%20So%20definitely%20let%20us%20know!%0A%0AApache%20TomEE%20is%20free%2C%20but%20you%20can%20pay%20us%20with%20feedback%20%3A)%0A%0ABest%20regards%2C%0AThe%20Apache%20TomEE%20community%0A">Help us grow!</a>
    </div>

	<div>
        <p><a href="tomee-7.0.0-M3.html">Apache TomEE 7.0.0-M3 released! Click here to read more...</a></p>
        <p><a href="tomee-7.0.0-M3-release-notes.html">Click here to see the 7.0.0-M3 Release Notes</a></p>
    </div>

    <div>
        <p>See also <a href="download/index.html">archived releases</a> for older versions</p>
    </div>
    <div class="page-header">
        <h1>Apache TomEE 7.0.0-M3
            <small>March 2016</small>
        </h1>
        <p>In order to guard against corrupted downloads/installations, it is highly recommended to <a href="http://www.apache.org/dev/release-signing#verifying-signature">verify the signature</a> of the release bundles against the public <a href="http://www.apache.org/dist/tomee/KEYS">KEYS</a> used by the Apache TomEE developers.</p>
    </div>

    <div class="row">
        <div class="span4">
            <h2>Web Profile</h2>

            <p>Apache TomEE Web Profile delivers Servlets, JSP, JSF, JTA, JPA, CDI, Bean Validation and EJB Lite</p>

            <p><a href="comparison.html">Comparison &raquo;</a></p>
            <br>
            <h2>JAX-RS</h2>

            <p>Apache TomEE JAX-RS delivers the Web Profile plus JAX-RS</p>

            <p><a href="comparison.html">Comparison &raquo;</a></p>
            <br>
            <h2>Plus</h2>

            <p>Apache TomEE Plus delivers all that is in the Web Profile and JAX-RS, plus EJB Full, Java EE Connector Architecture, JMS and JAX-WS.</p>

            <p><a href="comparison.html">Comparison &raquo;</a></p>
            <br>
            <h2>Plume</h2>

            <p>Apache TomEE Plume delivers all that is in the Plume Profile, but includes [Mojarra](https://javaserverfaces.java.net/) and [EclipseLink](http://www.eclipse.org/eclipselink/) support.</p>

            <p><a href="comparison.html">Comparison &raquo;</a></p>

        </div>
        <div class="span5">
            <h2>
                <small>Not Java EE7 Certified</small>
            </h2>
            <ul>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-webprofile.tar.gz">apache-tomee-7.0.0-M3-webprofile.tar.gz</a><br>
                    (<a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-webprofile.tar.gz.asc">asc</a> -
                    <a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-webprofile.tar.gz.md5">md5</a>)
                </li>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-webprofile.zip">apache-tomee-7.0.0-M3-webprofile.zip</a><br>
                    (<a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-webprofile.zip.asc">asc</a> -
                    <a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-webprofile.zip.md5">md5</a>)
                </li>
            </ul>
            <br>
            <h2>
                <small>Not Java EE7 Certified</small>
            </h2>
            <ul>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-jaxrs.tar.gz">apache-tomee-7.0.0-M3-jaxrs.tar.gz</a><br>
                    (<a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-jaxrs.tar.gz.asc">asc</a> -
                    <a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-jaxrsgz.md5">md5</a>)
                </li>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-jaxrs.zip">apache-tomee-7.0.0-M3-jaxrs.zip</a><br>
                    (<a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-jaxrs.zip.asc">asc</a> -
                    <a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-jaxrs.zip.md5">md5</a>)
                </li>
            </ul>
            <br>

            <h2>
                <small>Not Java EE7 Certified</small>
            </h2>
            <ul>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-plus.tar.gz">apache-tomee-7.0.0-M3-plus.tar.gz</a><br>
                    (<a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-plus.tar.gz.asc">asc</a>  -
                    <a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-plus.tar.gz.md5">md5</a>)
                </li>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-plus.zip">apache-tomee-7.0.0-M3-plus.zip</a><br>
                    (<a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-plus.zip.asc">asc</a> -
                    <a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-plus.zip.md5">md5</a>)
                </li>
            </ul>
            <ul>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-plume.tar.gz">apache-tomee-7.0.0-M3-plume.tar.gz</a><br>
                    (<a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-plume.tar.gz.asc">asc</a>  -
                    <a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-plume.tar.gz.md5">md5</a>)
                </li>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-plume.zip">apache-tomee-7.0.0-M3-plume.zip</a><br>
                    (<a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-plume.zip.asc">asc</a> -
                    <a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/apache-tomee-7.0.0-M3-plume.zip.md5">md5</a>)
                </li>
            </ul>

        </div>
        <div class="span7">
            <div class="hero-unit">
                <iframe width="280" height="233" src="http://www.youtube.com/embed/Lr8pxEACVRI" frameborder="0" allowfullscreen></iframe>
            </div>
        </div>
    </div>
</section>
<div class="row">
    <div class="span24">&nbsp;</div>
</div>
<section>
    <div class="page-header">
        <h2>Apache OpenEJB 7.0.0-M3
            <small>March 2016</small>
        </h2>
    </div>

    <div class="row">
        <div class="span4">
            <h3>Standalone</h3>

            <p>An "EJB" Server that can be run as a separate, standalone, server process. Contains EJB Full, CDI, JPA, JMS, JAX-WS, JAX-RS</p>

            <p><a href="comparison.html">Comparison &raquo;</a></p>
        </div>
        <div class="span12">
            <h3>&nbsp;</h3>
            <ul>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/openejb-standalone-7.0.0-M3.tar.gz">openejb-standalone-7.0.0-M3.tar.gz</a> (<a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/openejb-standalone-7.0.0-M3.tar.gz.asc">asc</a> <a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/openejb-standalone-7.0.0-M3.tar.gz.md5">md5</a>)
                </li>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/openejb-standalone-7.0.0-M3.zip">openejb-standalone-7.0.0-M3.zip</a> (<a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/openejb-standalone-7.0.0-M3.zip.asc">asc</a> <a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/openejb-standalone-7.0.0-M3.zip.md5">md5</a>)
                </li>
            </ul>
        </div>
    </div>

    <div class="row">
        <div class="span4">
            <h3>Drop-in WARs</h3>

            <p>A version of Apache OpenEJB that can be dropped into any Tomcat 7.0.54+ installation, effectively creating your own Apache TomEE Web Profile or Apache TomEE Plus.</p>
        </div>
        <div class="span12">
            <h3>&nbsp;</h3>
            <ul>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/tomee-webapp-7.0.0-M3.war">tomee-webapp-7.0.0-M3.war</a> (<a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/tomee-webapp-7.0.0-M3.war.asc">asc</a> <a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/tomee-webapp-7.0.0-M3.war.md5">md5</a>)
                </li>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/tomee-plus-webapp-7.0.0-M3.war">tomee-plus-webapp-7.0.0-M3.war</a>
                    (<a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/tomee-plus-webapp-7.0.0-M3.war.asc">asc</a> <a
                            href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/tomee-plus-webapp-7.0.0-M3.war.md5">md5</a>)
                </li>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/tomee-plume-webapp-7.0.0-M3.war">tomee-plume-webapp-7.0.0-M3.war</a>
                    (<a href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/tomee-plume-webapp-7.0.0-M3.war.asc">asc</a> <a
                            href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/tomee-plume-webapp-7.0.0-M3.war.md5">md5</a>)
                </li>
            </ul>
        </div>
    </div>
</section>
<div class="row">
    <div class="span24">&nbsp;</div>
</div>
<section>
    <div class="page-header">
        <h2>Other</h2>
    </div>
    <div class="row">
        <div class="span4">
            <h3>TomEE WebAccess</h3>

            <p>A web application that gives direct access to your TomEE runtime. It provides a console capable of executing 
                dynamic JavaScript or Groovy code. It can also be used to have a quick look into the contents of the 
                "logs" directory. Simply drop this war file into a TomEE <strong>JAX-RS</strong> or TomEE <strong>Plus</strong> 
				server.</p>

        </div>
        <div class="span12">
            <h3>&nbsp;</h3>
            <ul>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/tomee-webaccess-7.0.0-M3.war">tomee-webaccess-7.0.0-M3.war</a> (<a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/tomee-webaccess-7.0.0-M3.war.asc">asc</a> <a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/tomee-webaccess-7.0.0-M3.war.md5">md5</a>)
                </li>
            </ul>
        </div>
    </div>
    <div class="row">
        <div class="span4">
            <h3>Source</h3>

            <p>This is the complete source bundle. If you are interested in actively developing Apache TomEE then please look [here](dev/source-code.html)</p>

        </div>
        <div class="span12">
            <h3>&nbsp;</h3>
            <ul>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/openejb-7.0.0-M3-source-release.zip">openejb-7.0.0-M3-source-release.zip</a> (<a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/openejb-7.0.0-M3-source-release.zip.asc">asc</a> <a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/openejb-7.0.0-M3-source-release.zip.md5">md5</a>)
                </li>
            </ul>
        </div>
    </div>
    <div class="row">
        <div class="span4">
            <h3>Examples</h3>

            <p>Currently, we have over 80 examples of various aspects of Java EE 6 ranging from EJB, CDI, JAX-RS and more.  If you're learning Java EE, this is your secret weapon.</p>
        </div>
        <div class="span12">
            <h3>&nbsp;</h3>
            <ul>
                <li><a href="examples-trunk">Browse Online</a></li>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/examples-7.0.0-M3-src.tar.gz">examples-7.0.0-M3-src.tar.gz</a> (<a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/examples-7.0.0-M3-src.tar.gz.asc">asc</a> <a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/examples-7.0.0-M3-src.tar.gz.md5">md5</a>)
                </li>
                <li><a href="http://www.apache.org/dyn/closer.cgi/tomee/tomee-7.0.0-M3/examples-7.0.0-M3-src.zip">examples-7.0.0-M3-src.zip</a> (<a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/examples-7.0.0-M3-src.zip.asc">asc</a> <a
                        href="https://dist.apache.org/repos/dist/release/tomee/tomee-7.0.0-M3/examples-7.0.0-M3-src.zip.md5">md5</a>)
                </li>
            </ul>
        </div>
    </div>
</section>

{% endblock %}
