diff --git a/src/main/java/org/apache/maven/doxia/DefaultConverter.java b/src/main/java/org/apache/maven/doxia/DefaultConverter.java
index b98c792..bfb149a 100644
--- a/src/main/java/org/apache/maven/doxia/DefaultConverter.java
+++ b/src/main/java/org/apache/maven/doxia/DefaultConverter.java
@@ -31,7 +31,6 @@
 import java.io.Reader;
 import java.io.Writer;
 import java.util.HashMap;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Locale;
 import java.util.Map;
@@ -166,6 +165,7 @@
     }
 
     /** {@inheritDoc} */
+    @SuppressWarnings( "unchecked" )
     public void convert( InputFileWrapper input, OutputFileWrapper output )
         throws UnsupportedFormatException, ConverterException
     {
@@ -510,7 +510,7 @@
             return;
         }
 
-        Map context = new HashMap();
+        Map<String, String> context = new HashMap<String, String>();
         context.put( "basedir", new File( "" ).getAbsolutePath() );
 
         ContainerConfiguration containerConfiguration = new DefaultContainerConfiguration();
diff --git a/src/main/java/org/apache/maven/doxia/cli/CLIManager.java b/src/main/java/org/apache/maven/doxia/cli/CLIManager.java
index 9ea035d..0443838 100644
--- a/src/main/java/org/apache/maven/doxia/cli/CLIManager.java
+++ b/src/main/java/org/apache/maven/doxia/cli/CLIManager.java
@@ -40,6 +40,7 @@
  * @author <a href="mailto:vincent.siveton@gmail.com">Vincent Siveton</a>
  * @version $Id$
  */
+@SuppressWarnings( "static-access" )
 class CLIManager
 {
     /** h character */
@@ -161,7 +162,7 @@
 
     private String[] cleanArgs( String[] args )
     {
-        List cleaned = new ArrayList();
+        List<String> cleaned = new ArrayList<String>();
 
         StringBuilder currentArg = null;
 
