<html>
    <head>
        <title>Eclipse WTP 3.0 M4 News</title>
    </head>
    <body>
        <h1>Eclipse Web Tools Platform 3.0 M4 - New and Noteworthy</h1>
        <p>
            The New Year is upon us, and while some committers are still enjoying their vacations,
            <b>you</b>
            can still ring in the new year with a new milestone of the Eclipse Web Tools Platform. Here are some of the more noteworthy features available in WTP 3.0 M4 (January 7, 2008).
            <a
                href="http://download.eclipse.org/webtools/downloads/drops/R3.0/S-3.0M4-20080105091323/">Download</a>
            it now!
        </p>
        <h2>Subprojects</h2>
        <ul>
        <!--
            <li>
                <a
                    href="common.php">Common Tools</a>
            </li>
        -->
            <li>
                <a
                    href="javaee.php">Java EE and EJB Tools</a>
            </li>
            <li>
                <a
                    href="jsf.php">JavaServer Faces Tools</a>
            </li>
            <li>
                <a
                    href="server.php">Server Tools</a>
            </li>
            <li>
                <a href="sourceeditors.php">Source Editing</a>
            </li>
            <li>
                <a
                    href="webservices.php">Web Services and WSDL Tools</a>
            </li>
        </ul>
        <p>
            Here are the
            <a
                href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=WebTools&amp;target_milestone=3.0+M4&amp;resolution=FIXED&amp;cmdtype=doit">bugs that were fixed</a>
            during this milestone (
            <a
                href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;product=Dali+JPA+Tools&amp;target_milestone=2.0+M4&amp;resolution=FIXED&amp;cmdtype=doit">JPA list</a>
            ).
        </p>
        <p>
            The above features are just the ones that are new since the last milestone build. Summaries for earlier builds:
            <ul>
                <li>
                    <a
                        href="../main.php">Full summaries for earlier milestones and releases.</a>
                </li>
            </ul>
        </p>
    </body>
</html>