<?xml version="1.0" encoding="utf-8" standalone="yes" ?> 
<?xml-stylesheet type="text/xsl" href="project-plan-render.xsl"?>
<!--?xml-stylesheet type="text/xsl" href="project-plan-render.xsl"?-->
<p:plan xmlns:p="http://www.eclipse.org/project/plan" xmlns="http://www.w3.org/1999/xhtml">
  <p:release projectid="m2e-wtp" version="0.18.0"/>
  <p:introduction>
    <p>m2e-wtp aims at providing a tight integration between Apache Maven and Maven Integration for Eclipse (a.k.a m2e) on one hand and
    and the Eclipse Web Tools Project (a.k.a WTP) on the other hand.
    </p>
    <div>
      m2e-wtp provides a number of features designed to improve the productivity of Java EE developers using Apache Maven as their build tool :
      <ul>
      <li><strong>Project configurators :</strong> translate Maven plugin configuration to WTP settings for war, ejb, rar, app-client, ear packagings.
       Optional configurators are also available to allow configuration of Java EE facets such as JPA, JAX-RS and JSF</li>
      <li><strong>Eclipse to Maven Project converters :</strong> maps WTP settings of existing Java EE projects to their maven plugin configuration equivalent</li>
      <li><strong>Web resource filtering :</strong>Dynamically modifies the content of web resources at build time and instantly deploys them on a server</li> 
	  <li><strong>War overlays :</strong>Shares the same web resources (images, css ...) across different web applications</li>
      </ul>
    </div>
  </p:introduction>
  <p:release_deliverables>
    <ul>
      <li>m2e-wtp feature</li>
      <li>m2e-wtp optional JPA feature</li>
      <li>m2e-wtp optional JSF feature</li>
      <li>m2e-wtp optional JAX-RS feature</li>      
      <li>m2e-wtp SDK (source archive) feature</li>
    </ul>
  </p:release_deliverables>
  <p:release_milestones>
    <p:preamble>
      <p>
        Release milestones will be occurring at roughly 6 week
        intervals and will part of the
        <a href="http://wiki.eclipse.org/Kepler/Simultaneous_Release_Plan">
          Kepler Simultaneous Release
        </a>
        train.
      </p>
    </p:preamble>
    <!--
    <p:milestone date="21/12/2012" milestone="0.17.0.M1">
      <div>0.17.0.M4</div>
    </p:milestone>
    <p:milestone date="20/03/2013" milestone="0.17.0.RC1">
      <div>0.17.0.M4</div>
    </p:milestone>
    -->
    <p:milestone date="20/03/2013" milestone="0.18.0.M4">
      <div>0.18.0.M4</div>
    </p:milestone>
    
  </p:release_milestones>
  <p:target_environments>
    <p>m2e-wtp is tested on Java 6 and Java 7</p>
    <p>m2e-wtp is compatible with Eclipse 3.7.2, 3.8, 4.2 and Eclipse
      4.3 and is generally expected to work on each of these Eclipse
      platforms.
    </p>
    <p>The JPA configurator for m2e-wtp is compatible with Eclipse
      4.3.
    </p>

    <p:internationalization>
      <p>Internationalization and Localization will be supported in a future release. 
      The current user interface is displayed in English only.  
      </p>
    </p:internationalization>
  </p:target_environments>
  <p:compatibility_with_previous_releases>
    <h3>Compatibility with Sonatype m2eclipse-wtp 0.15.x and previous releases</h3>
    <p>
      <strong>API Contract Compatibility :</strong>
      To comply with the Eclipse Foundation requirements, all the m2eclipse-wtp java packages
       have been moved from org.maven.ide.eclipse.wtp to the org.eclipse.m2e.wtp
      namespace. 
      However, all project configurator ids have been kept to ensure minimal disruption with 3rd party adopters and existing custom m2e lifecycle mappings.  
    </p>
    <p>
      <strong>Workspace Compatibility:</strong>
      No compatibility layer will be provided for non-default workspace preferences set in earlier versions of m2eclipse-wtp. However m2e-wtp default workspace settings behave the same as previous in m2eclipse-wtp.  
    </p>
    <p>
      <strong>Project Compatibility:</strong>
      No compatibility layer will be provided for non-default project preferences set in earlier versions of m2eclipse-wtp. However m2e-wtp default project settings behave the same as in previous m2eclipse-wtp.
    </p>
  </p:compatibility_with_previous_releases>
  <p:themes_and_priorities>
    <p:preamble>
    </p:preamble>
    <p:theme name="Encourage community participation">
      <p:committed>
        <ul>
          <li>
            <strong>Agile open source project</strong>
            m2e-wtp, as a sub-project of m2e, is an agile open source project 
            and as such does not have feature and/or bugfix roadmap. 
            We encourage community members to come forward with ideas how to 
            improve m2e-wtp and generally plan to prioritize patches review over other m2e-wtp development activities. 
          </li>
        </ul>
      </p:committed>
    </p:theme>
    <p:theme name="Close collaboration with the M2E and WTP projects">
      <p:committed>
        <ul>
          <li>
            <strong>Cross-project collaboration</strong>
            In order to implement new maven features into m2e-wtp or fix bugs, 
            we continuously help improve both m2e's and WTP's APIs, 
            working closely with core developers of both projects,
            by contributing patches, raising bug or enhancement requests. 
            </li>
        </ul>
      </p:committed>
    </p:theme>
    <!-- 
    <p:theme name="Mature Eclipse.org project">
      <p:committed>
        <ul>
          <li>Move m2e-wtp to Eclipse Foundation</li>
        </ul>
      </p:committed>
      <p:proposed>
        <ul>
          <li>Graduate from incubation</li>
          <li>Join the "Java EE" Eclipse distribution for Kepler</li>
        </ul>
      </p:proposed>
    </p:theme>
     -->
     
  </p:themes_and_priorities>
</p:plan>
