[DOXIA-546] DoxiaUtils#encodeId() produces invalid id

Simply use a dot instead of percent sign

git-svn-id: https://svn.apache.org/repos/asf/maven/doxia/doxia/trunk@1777819 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java b/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java
index b0c9ca2..b50c4b6 100644
--- a/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java
+++ b/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java
@@ -259,16 +259,8 @@
 
                 for ( int j = 0; j < bytes.length; ++j )
                 {
-                    String hex = byteToHex( bytes[j] );
-
-                    buffer.append( '%' );
-
-                    if ( hex.length() == 1 )
-                    {
-                        buffer.append( '0' );
-                    }
-
-                    buffer.append( hex );
+                    buffer.append( '.' );
+                    buffer.append( String.format( "%02X", bytes[j] ) );
                 }
             }
         }
diff --git a/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java b/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java
index 45b2a37..7b28d8e 100644
--- a/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java
+++ b/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java
@@ -159,10 +159,10 @@
         assertEquals( DoxiaUtils.encodeId( "a b-c123 " ), "a_b-c123" );
         assertEquals( DoxiaUtils.encodeId( "   anchor" ), "anchor" );
         assertEquals( DoxiaUtils.encodeId( "myAnchor" ), "myAnchor" );
-        assertEquals( DoxiaUtils.encodeId( "my&Anchor" ), "my%26Anchor" );
-        assertEquals( DoxiaUtils.encodeId( "H\u00E5kon" ), "H%c3%a5kon" );
+        assertEquals( DoxiaUtils.encodeId( "my&Anchor" ), "my.26Anchor" );
+        assertEquals( DoxiaUtils.encodeId( "H\u00E5kon" ), "H.C3.A5kon" );
         assertEquals( DoxiaUtils.encodeId( "H\u00E5kon", true ), "Hkon" );
-        assertEquals( DoxiaUtils.encodeId( "Theu\u00DFl" ), "Theu%c3%9fl" );
+        assertEquals( DoxiaUtils.encodeId( "Theu\u00DFl" ), "Theu.C3.9Fl" );
         assertEquals( DoxiaUtils.encodeId( "Theu\u00DFl", true ), "Theul" );
     }
 
@@ -188,6 +188,8 @@
         assertTrue( DoxiaUtils.isValidId( "a." ) );
         assertTrue( DoxiaUtils.isValidId( "index.html" ) );
         assertFalse( DoxiaUtils.isValidId( "Theu\u00DFl" ) );
+        assertTrue( DoxiaUtils.isValidId( "Theu.C3.9Fl" ) );
+        assertFalse( DoxiaUtils.isValidId( "Theu%C3%9Fl" ) );
     }
 
     /**