<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">

<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>

                                <td>

                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="http://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">JBoss Community</a></h1>
                                                                </td>

                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px;  -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
    m2e(clipse)-wtp 0.14.0 : New & Noteworthy
</h3>
<span style="margin-bottom: 10px;">
    modified by <a href="http://community.jboss.org/people/fbricon">Fred Bricon</a> in <i>JBoss Tools</i> - <a href="http://community.jboss.org/community/tools/blog/2011/09/30/m2eclipse-wtp-0140-new-noteworthy">View the full blog post</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">

<div class="jive-rendered-content"><p>Maven Integration for Eclipse WTP 0.14.0, a.k.a m2eclipse-wtp, a.k.a m2e-wtp is out the door. This new release brings its share of new features and enhancements, as well as a bunch of bug fixes. The complete release notes are available <a class="jive-link-external-small" href="https://issues.sonatype.org/secure/ReleaseNote.jspa?projectId=10310&amp;version=11250">here</a>. </p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>m2e-wtp 0.14.0 works with Eclipse Helios and Indigo, requires at least m2e 1.0 and mavenarchiver plugin &gt; 0.14.0 (0.15.0 should be automatically installed). As usual, m2e-wtp can be installed from :</p><ul><li style="text-align: start;"> the Maven Discovery mechanism : Window &gt; Preferences &gt; Maven &gt; Discovery &gt; Open catalog</li><li style="text-align: start;"> the <a class="jive-link-external-small" href="http://marketplace.eclipse.org/content/maven-integration-eclipse-wtp">Eclipse Marketplace</a> : Help &gt; Eclipse Marketplace</li><li style="text-align: start;"> the update site : <strong><a class="jive-link-external-small" href="http://download.jboss.org/jbosstools/updates/m2eclipse-wtp/">http://download.jboss.org/jbosstools/updates/m2eclipse-wtp/</a></strong></li></ul><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>So <span id="internal-source-marker_0.6966659519821405">what's new and noteworthy in 0.14.0? Let's see :</span></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h3><span style="color: #666699;">New support for Application Client projects<br/></span></h3><p>Application Client packaging has been introduced with the new <a class="jive-link-external-small" href="http://maven.apache.org/plugins/maven-acr-plugin/">maven-acr-plugin</a>. Support for app-client type dependencies has been <a class="jive-link-external-small" href="http://jira.codehaus.org/browse/MEAR-137">added in maven-ear-plugin 2.6</a>. Since Application Client projects are natively supported in WTP, we added a new configurator for app-client projects. When an app-client project is imported / configured via m2e, the Application Client Facet will be automatically installed, its version inferred from the contents of META-INF/application-client.xml. Filtering of the deployment descriptor is supported.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><pre class="jive-pre"><code class="jive-code jive-xml"><span class="jive-xml-tag">&lt;plugin&gt;</span>
&#160; <span class="jive-xml-tag">&lt;groupId&gt;</span>org.apache.maven.plugins<span class="jive-xml-tag">&lt;/groupId&gt;</span>
&#160; <span class="jive-xml-tag">&lt;artifactId&gt;</span>maven-acr-plugin<span class="jive-xml-tag">&lt;/artifactId&gt;</span>
&#160; <span class="jive-xml-tag">&lt;version&gt;</span>1.0<span class="jive-xml-tag">&lt;/version&gt;</span>
&#160; <span class="jive-xml-tag">&lt;extensions&gt;</span>true<span class="jive-xml-tag">&lt;/extensions&gt;</span>
&#160; <span class="jive-xml-tag">&lt;configuration&gt;</span>
&#160;&#160;&#160; <span class="jive-xml-tag">&lt;archive&gt;</span>
&#160;&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;manifest&gt;</span>
&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;mainClass&gt;</span>foo.bar.appclient.Main<span class="jive-xml-tag">&lt;/mainClass&gt;</span>
&#160;&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;/manifest&gt;</span>
&#160;&#160;&#160; <span class="jive-xml-tag">&lt;/archive&gt;</span>
&#160;&#160;&#160; <span class="jive-xml-tag">&lt;filterDeploymentDescriptor&gt;</span>true<span class="jive-xml-tag">&lt;/filterDeploymentDescriptor&gt;</span>
&#160; <span class="jive-xml-tag">&lt;/configuration&gt;</span>
<span class="jive-xml-tag">&lt;/plugin&gt;</span>
</code></pre><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/38-4192-17064/appclient.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/38-4192-17064/450-252/appclient.png </span></a></p><h3><span style="color: #666699;">New support for Web Fragment projects<br/></span></h3><p>If a project contains a META-INF/web-fragment.xml in it's compilation output folder, the Web Fragment Facet is automatically installed upon maven project configuration (the Utility Facet is removed if necessary). Note that, as per the Java EE6 spec - and WTP is very picky about it-, Web Fragment projects *must* use Java 1.6. Failure to comply will fail the configuration and an error marker will be displayed.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/38-4192-17065/webfragment.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/38-4192-17065/450-252/webfragment.png </span></a></p><h3><span style="color: #666699;">The use of target/m2e-wtp/web-resources is now optional<br/></span></h3><p id="wiki-content">Remember, <code>target/m2e-wtp/web-resources/</code><a class="jive-link-external-small" href="https://github.com/sonatype/m2eclipse-wtp/wiki/What-is-this-web-resources-folder%3F"> is used to allow the deployment of automatically generated web resources with WTP</a>.</p><div id="template"><p>On some occasions however, having <code>target/m2e-wtp/web-resources/</code> might cause some troubles (incompatibilities with WTP editors, <a class="jive-link-external-small" href="https://issues.sonatype.org/browse/MECLIPSEWTP-136">IBM RAD</a>, <a class="jive-link-external-small" href="https://issues.sonatype.org/browse/MECLIPSEWTP-180">using Servlet.getRealPath(...)</a> in your code). </p><p>As a workaround, you can choose to not use <code>target/m2e-wtp/web-resources/</code> and generate the pom.properties and MANIFEST.MF files in your source directory instead (It'll be your responsibility to add these files to your SCM ignore list).</p><p>In order to remove <code>target/m2e-wtp/web-resources/</code> from the list of deployed folders, you need to change some preferences :</p><ul><li>on your project only : right-click on the project &gt; Properties &gt; Maven &gt; WTP : check "Enable Project Specific Settings" and uncheck "Maven Archiver generates files under the build directory"</li><li>on the whole workspace : Window &gt; Preferences &gt; Maven &gt; WTP : uncheck "Maven Archiver generates files under the build directory"</li></ul></div><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/38-4192-17067/war-preferences.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/38-4192-17067/450-400/war-preferences.png </span></a></p><p>Please note that <strong>this setting will be overridden if web resource filtering is in use</strong>, that is if the maven-war-plugin <a class="jive-link-external-small" href="http://maven.apache.org/plugins/maven-war-plugin/examples/adding-filtering-webresources.html">configuration</a> declares <code>&lt;webResources&gt;</code> or sets <code>&lt;filterDeploymentDescriptor&gt;</code> to true. The reason is simple : you don't want to see your source files overwritten by the filtering mechanism (and it would also lead to some not-so-funny build loops). </p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h3><span style="color: #666699;">Custom file name mapping for web project dependencies<br/></span></h3><p>Since the maven-war-plugin allows file name customization for librairies and TLDs, based on patterns (<a class="jive-link-external-small" href="http://maven.apache.org/plugins/maven-war-plugin/examples/file-name-mapping.html">http://maven.apache.org/plugins/maven-war-plugin/examples/file-name-mapping.html)</a>, we added the the same feature in m2e-wtp. That will allow you to use a version-less name mapping for dependencies, like :</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><pre ___default_attr="xml" class="jive_text_macro jive_macro_code"><p class="line" id="LC16"> <span class="nt">&lt;plugin&gt;</span></p><p class="line" id="LC17">&#160; <span class="nt">&lt;groupId&gt;</span>org.apache.maven.plugins<span class="nt">&lt;/groupId&gt;</span></p><p class="line" id="LC18">&#160; <span class="nt">&lt;artifactId&gt;</span>maven-war-plugin<span class="nt">&lt;/artifactId&gt;</span></p><p class="line" id="LC19">&#160; <span class="nt">&lt;version&gt;</span>2.1.1<span class="nt">&lt;/version&gt;</span></p><p class="line" id="LC20">&#160; <span class="nt">&lt;configuration&gt;</span></p><p class="line" id="LC21">&#160;&#160;&#160; <span class="nt">&lt;outputFileNameMapping&gt;</span>@{groupId}@-@{artifactId}@.@{extension}@<span class="nt">&lt;/outputFileNameMapping&gt;</span></p><p class="line" id="LC22"><span class="nt">&#160; &lt;/configuration&gt;</span></p><p class="line" id="LC23"><span class="nt">&lt;/plugin&gt;</span></p></pre><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>The trick here is, in order to support non default filename mappings of dependencies listed in the Maven Library, the artifact is copied to the build directory (the target/ folder by default) under its new name. So if you happen to run a clean build of your project, wiping out that directory, you will need to manually run "Maven &gt; Update Project configuration" on your project.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h3><span style="color: #666699;">Option to not publish overlay changes automatically<br/></span></h3><p>In order to support publishing of overlay changes automatically, m2e-wtp aggressively cleared the cache of the servers your application is deployed to. However, The overlay feature still being in an experimental state, we decided to be more conservative with regard to server publishing, so a new "Automatically republish servers on overlay modification" preference has been added to <strong>Window &gt; Preferences &gt; Server &gt; Overlays</strong>. </p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/38-4192-17066/overlay-republishing-preference.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/38-4192-17066/450-394/overlay-republishing-preference.png </span></a></p><p>Overlays support is not bound to Maven, that's why it's under the Server preferences.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h3><span style="color: #666699;">Support for the new tag="defaultRootSource" introduced in WTP 3.3.1<br/></span></h3><p>When several source folders are declared in the .settings/org.eclipse.wst.common.component file, WTP prior to 3.3.1 (Indigo SR1) tended to generate files (web.xml, faces-config.xml, ...) in the first folder it found. Since web projects define <em>target/m2e-wtp/web-resources</em> as the first source folder (<em>target/m2e-wtp/ear-resources/</em> for EAR projects), that would cause some issues. In WTP 3.3.1, a new tag has been introduced, designed to indicate which source folder should be used by default, when files need to be looked for / generated. m2e-wtp now adds this tag when WTP 3.3.1 is installed : </p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><pre class="jive-pre"><code class="jive-code jive-xml"><span class="jive-xml-tag">&lt;project-modules id="moduleCoreId" project-version="1.5.0"&gt;</span>
&#160;&#160;&#160; <span class="jive-xml-tag">&lt;wb-module deploy-name="web-0.0.1-SNAPSHOT"&gt;</span>
&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/&gt;</span>
&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/&gt;</span>
&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/&gt;</span>
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;property name="context-root" value="multi-web"/&gt;</span>
&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="jive-xml-tag">&lt;property name="java-output-path" value="/multi-web/target/classes"/&gt;</span>
&#160;&#160;&#160; <span class="jive-xml-tag">&lt;/wb-module&gt;</span>
<span class="jive-xml-tag">&lt;/project-modules&gt;</span>
</code></pre><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h3><span style="color: #666699;">A bit of documentation<br/></span></h3><p><span>As many projects, unfortunately, m2e-wtp doesn't shine in the documentation area. I've been using the github Wiki (</span><a class="jive-link-external-small" href="https://github.com/sonatype/m2eclipse-wtp/wiki" target="_blank">https://github.com/sonatype/m2eclipse-wtp/wiki</a><span>) to start a relatively modest FAQ. I'm planning on adding more content in the near future, but I'm also hoping the community at large will want to contribute some docs of its own. You just need a github account to be able to edit the Wiki.</span></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>As always, if you find any issue, please open a bug report at <a class="jive-link-external-small" href="https://issues.sonatype.org/browse/MECLIPSEWTP">https://issues.sonatype.org/browse/MECLIPSEWTP</a> (and don't forget to attach some test projects). </p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>Happy coding.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>Fred.</p><p><a class="jive-link-external-small" href="https://twitter.com/#%21/fbricon">https://twitter.com/#!/fbricon</a></p></div>

<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
    <p style="margin: 0;">Comment by <a href="http://community.jboss.org/community/tools/blog/2011/09/30/m2eclipse-wtp-0140-new-noteworthy">going to Community</a></p>

</div></td>
                        </tr>
                    </tbody>
                </table>


                </td>
            </tr>
        </tbody>
    </table>

</div>

</body>
</html>