You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nutch.apache.org by ma...@apache.org on 2011/06/28 17:59:47 UTC

svn commit: r1140695 - in /nutch/branches/branch-1.4: CHANGES.txt src/java/org/apache/nutch/util/EncodingDetector.java

Author: markus
Date: Tue Jun 28 15:59:47 2011
New Revision: 1140695

URL: http://svn.apache.org/viewvc?rev=1140695&view=rev
Log:
NUTCH-1012 Cannot handle illegal charset

Modified:
    nutch/branches/branch-1.4/CHANGES.txt
    nutch/branches/branch-1.4/src/java/org/apache/nutch/util/EncodingDetector.java

Modified: nutch/branches/branch-1.4/CHANGES.txt
URL: http://svn.apache.org/viewvc/nutch/branches/branch-1.4/CHANGES.txt?rev=1140695&r1=1140694&r2=1140695&view=diff
==============================================================================
--- nutch/branches/branch-1.4/CHANGES.txt (original)
+++ nutch/branches/branch-1.4/CHANGES.txt Tue Jun 28 15:59:47 2011
@@ -2,6 +2,8 @@ Nutch Change Log
 
 Release 1.4 - Current development
 
+* NUTCH-1012 Cannot handle illegal charset $charset (markus)
+
 * NUTCH-1022 Upgrade version number of Nutch agent in conf (markus)
 
 * NUTCH-295 Description for fetcher.threads.fetch property (kubes via markus)

Modified: nutch/branches/branch-1.4/src/java/org/apache/nutch/util/EncodingDetector.java
URL: http://svn.apache.org/viewvc/nutch/branches/branch-1.4/src/java/org/apache/nutch/util/EncodingDetector.java?rev=1140695&r1=1140694&r2=1140695&view=diff
==============================================================================
--- nutch/branches/branch-1.4/src/java/org/apache/nutch/util/EncodingDetector.java (original)
+++ nutch/branches/branch-1.4/src/java/org/apache/nutch/util/EncodingDetector.java Tue Jun 28 15:59:47 2011
@@ -307,11 +307,16 @@ public class EncodingDetector {
   }
 
   public static String resolveEncodingAlias(String encoding) {
-    if (encoding == null || !Charset.isSupported(encoding))
+    try {
+      if (encoding == null || !Charset.isSupported(encoding))
+        return null;
+      String canonicalName = new String(Charset.forName(encoding).name());
+      return ALIASES.containsKey(canonicalName) ? ALIASES.get(canonicalName)
+                                                : canonicalName;
+    } catch (Exception e) {
+      LOG.warn("Invalid encoding " + encoding + " detected, using default.");
       return null;
-    String canonicalName = new String(Charset.forName(encoding).name());
-    return ALIASES.containsKey(canonicalName) ? ALIASES.get(canonicalName)
-                                              : canonicalName;
+    }
   }
 
   /**