diff --git a/src/main/java/org/apache/maven/plugins/war/AbstractWarMojo.java b/src/main/java/org/apache/maven/plugins/war/AbstractWarMojo.java
index 6a345bf..2892c5c 100644
--- a/src/main/java/org/apache/maven/plugins/war/AbstractWarMojo.java
+++ b/src/main/java/org/apache/maven/plugins/war/AbstractWarMojo.java
@@ -283,7 +283,7 @@
      * @since 2.1-alpha-2
      */
     @Parameter( defaultValue = "false" )
-    private boolean filteringDeploymentDescriptors = false;
+    private boolean filteringDeploymentDescriptors;
 
     /**
      * To escape interpolated values with Windows path <code>c:\foo\bar</code> will be replaced with
@@ -292,7 +292,7 @@
      * @since 2.1-alpha-2
      */
     @Parameter( defaultValue = "false" )
-    private boolean escapedBackslashesInFilePath = false;
+    private boolean escapedBackslashesInFilePath;
 
     /**
      * Expression preceded with this String won't be interpolated. <code>\${foo}</code> will be replaced with
@@ -324,7 +324,7 @@
      * @since 2.4
      */
     @Parameter( defaultValue = "false" )
-    private boolean supportMultiLineFiltering = false;
+    private boolean supportMultiLineFiltering;
 
     /**
      * use jvmChmod rather that cli chmod and forking process
diff --git a/src/main/java/org/apache/maven/plugins/war/WarMojo.java b/src/main/java/org/apache/maven/plugins/war/WarMojo.java
index 5a60370..2b2e700 100644
--- a/src/main/java/org/apache/maven/plugins/war/WarMojo.java
+++ b/src/main/java/org/apache/maven/plugins/war/WarMojo.java
@@ -109,7 +109,7 @@
      * it to the local repository instead of the default one in an execution.
      */
     @Parameter( defaultValue = "true" )
-    private boolean primaryArtifact = true;
+    private boolean primaryArtifact;
 
     /**
      * Whether or not to fail the build if the <code>web.xml</code> file is missing. Set to <code>false</code> if you
@@ -119,7 +119,7 @@
      * @since 2.1-alpha-2
      */
     @Parameter( defaultValue = "true" )
-    private boolean failOnMissingWebXml = true;
+    private boolean failOnMissingWebXml;
 
     /**
      * Whether classes (that is the content of the WEB-INF/classes directory) should be attached to the project as an
@@ -144,7 +144,7 @@
      * @since 2.1-alpha-2
      */
     @Parameter( defaultValue = "false" )
-    private boolean attachClasses = false;
+    private boolean attachClasses;
 
     /**
      * The classifier to use for the attached classes artifact.
@@ -152,7 +152,7 @@
      * @since 2.1-alpha-2
      */
     @Parameter( defaultValue = "classes" )
-    private String classesClassifier = "classes";
+    private String classesClassifier;
 
     /**
      * You can skip the execution of the plugin if you need to. Its use is NOT RECOMMENDED, but quite convenient on
diff --git a/src/test/java/org/apache/maven/plugins/war/WarMojoTest.java b/src/test/java/org/apache/maven/plugins/war/WarMojoTest.java
index df94f89..75af475 100644
--- a/src/test/java/org/apache/maven/plugins/war/WarMojoTest.java
+++ b/src/test/java/org/apache/maven/plugins/war/WarMojoTest.java
@@ -373,6 +373,7 @@
         setVariableValueToObject( mojo, "warName", warName );
         mojo.setWebXml( new File( xmlSource, "web.xml" ) );
         mojo.setAttachClasses( true );
+        mojo.setClassesClassifier( "classes" );
 
         mojo.execute();
 
