Apache Tika Обработка исключений - PullRequest
0 голосов
/ 24 сентября 2018

вот мой код, который используется для извлечения контента и метаданных, к сожалению, этот код возникает только тогда, когда я передаю документ '.docx' для анализа - пока я выясняю, как это исправить, можете ли вы помочь?с обработкой ошибок / исключений.Нет проблем при разборе pdf

, вот код, приведенные ниже попытки / улов не помогают.мне нужно, чтобы код работал независимо от ошибки и просто регистрировал ошибку.

def extract (a: (String, PortableDataStream)) = {

val file : File = new File(a._1.drop(5))
val myparser : AutoDetectParser = new AutoDetectParser()
val stream : InputStream = new FileInputStream(file) 
val handler : WriteOutContentHandler = new WriteOutContentHandler(-1)
val metadata : Metadata = new Metadata()
val context : ParseContext = new ParseContext()
try {
myparser.parse(stream, handler, metadata, context)

stream.close
val headerrdd = handler.toString()
val meta = metadata.names()

metadata.add("txt", handler.toString())
val title = metadata.get("title")
}
catch {
case e: IOException => {
e.printstackTrace()
e.toString()
}
case e: TikaException => {
e.printstackTrace()
e.toString()
}
}
    //rest of the code to write output to file 
}

вот ошибка, когда я передаю .docx, который, скорее всего, является причиной отсутствия зависимостей (пытается исправить), но между темЯ хотел бы, чтобы код запускался при обработке ошибок java.lang.NoClassDefFoundError:org/apache.poi.openxml4j/exceptions/InvalidFormatException at org.apache.tika.parser.microsoft.ooxml.OOXMLParser.parse(OOXMLParser.java:82) at org.apache.tika.parser.CompositeParser.parser(CompositeParser.java:281) org.apache.tika.parser.CompositeParser.parser(CompositeParser.java:281) org.apache.tika.parser.AutoDetectParser.parser(AutoDetectParser.java:281)

...