diff --git a/src/main/java/com/manalejandro/arjion/controllers/MainController.java b/src/main/java/com/manalejandro/arjion/controllers/MainController.java index 0d2c796..dea9756 100644 --- a/src/main/java/com/manalejandro/arjion/controllers/MainController.java +++ b/src/main/java/com/manalejandro/arjion/controllers/MainController.java @@ -4,6 +4,7 @@ import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; +import java.text.Normalizer; import java.util.ArrayList; import com.manalejandro.arjion.model.Archivo; @@ -54,7 +55,9 @@ public class MainController { TikaConfig tikaConfig = TikaConfig.getDefaultConfig(); for (int i = 0; i < archivos.length; i++) { byte[] bytes = archivos[i].getBytes(); - Path path = Paths.get(uploadpath + archivos[i].getOriginalFilename()); + String normalized = Normalizer.normalize(archivos[i].getOriginalFilename(), Normalizer.Form.NFD), + filename = normalized.replaceAll("\\p{InCombiningDiacriticalMarks}+", ""); + Path path = Paths.get(uploadpath + filename); Files.write(path, bytes); Metadata metadata = new Metadata(); AutoDetectParser parser = new AutoDetectParser(tikaConfig); @@ -62,7 +65,7 @@ public class MainController { TikaInputStream stream = TikaInputStream.get(bytes); parser.parse(stream, handler, metadata, new ParseContext()); LanguageIdentifier identifier = new LanguageIdentifier(handler.toString()); - documentoVO.getArchivos().add(new Archivo(archivos[i].getOriginalFilename(), String.valueOf(archivos[i].getSize()), + documentoVO.getArchivos().add(new Archivo(filename, String.valueOf(archivos[i].getSize()), metadata.toString(), handler.toString(), identifier.getLanguage())); } model.addAttribute("documentoVO", documentoVO);