anchor.diff:          <version>${maven.war.plugin.version}</version>
           <configuration>
             <warName>${project.artifactId}</warName>
  +          <outputFileNameMapping>@{artifactId}@-@{baseVersion}@@{dashClassifier?}@.@{extension}@</outputFileNameMapping>
   
             <!--
  -            List of files to leave out of the .war file:
  +            List of files to leave out of the WAR file:
               1. GWT client-only classes confuse Hibernate and Weld's
  -            classpath scanners
  +               classpath scanners
               2. The existence of log4j.properties interferes with JBoss
  -            Logging configuration
  +               Logging configuration
              -->
             <packagingExcludes>**/client/**/*.class,**/log4j.properties</packagingExcludes>
           </configuration>
         </plugin>
   ---------
   
  -The first configuration tweak changes the name of the generated .war
  +The first configuration tweak changes the name of the generated WAR
   file to just __projectname__.war rather than the default
   __projectname__-__version__.war. We find this more convenient to work
   with, because the deployment URL remains stable that way. If you
  -prefer keeping the version number in the .war file name, feel free to
  +prefer to have the version number in the WAR file name, feel free to
   omit the `<warName>` setting.
  +
  +The `<outputFileNameMapping>` tells the WAR plugin exactly what names
  +to give JAR files it copies into `target/WEB-INF/lib/`. This is
  +necessary because Eclipse and Maven sometimes use slightly different
  +names, and you end up with duplicate libraries on your classpath. This
  +duplication can cause ``Ambiguous bean reference'' errors from Weld
  +when your server-side app is starting up.
   
   The `<packagingExcludes>` setting is vital, though: this keeps the
   client-side-only classes off the web server. Anything that scans your
  
positive.code: 
  === UberFire servlet
  
  The UberFireServlet is responsible for serving the application's GWT
  host page, which is mapped to the URL
  `/UberFireTutorial/UberFire.html`. Users are directed to this page
  after a successful login.
  
  The servlet works by processing the FreeMarker template
  `app.html.template` and serving the result to the client.
  
  === Errai servlet
  
  The ErraiServlet is responsible for the communication bus that allows
  two-way-push communication between the client and the server.
  
  == Set up UberFire security
  
negative.code:   </dependencyManagement>
  ---------
  
  So that takes care of pinning all the sensitive dependency
  _versions_. Now let's declare the libraries we'll be using. Insert all
  of this after the `<dependencyManagement>` section:
  
  [source,xml]
  ---------
  