Я хочу преобразовать docx в html с помощью poi. Я использую следующий код
...
XWPFDocument document = new XWPFDocument(is);
XHTMLOptions options = XHTMLOptions.create();
OutputStream out = new FileOutputStream(htmlFile);
XHTMLConverter.getInstance().convert(document, out, options);
...
в последней строке я получил исключение
java.lang.NoSuchMethodError: org.apache.poi.xwpf.usermodel.XWPFHyperlinkRun.<init>(Lorg/openxmlformats/schemas/wordprocessingml/x2006/main/CTHyperlink;Lorg/openxmlformats/schemas/wordprocessingml/x2006/main/CTR;Lorg/apache/poi/xwpf/usermodel/XWPFParagraph;)V
Я использую следующие библиотеки:
POI 3.10Final
org.apache.poi.xwpf.converter.core 1.0.4.jar
org.apache.poi.xwpf.converter.xhtml 1.0.4.jar
Проблема в том, что библиотеки core и xhtml используют POI версии 3.09, где есть конструктор XWPFHyperlinkRun(гиперссылка CTHyperlink, запуск CTR, XWPFParagraph p), но версия 3.10 имеет конструктор XWPFHyperlinkRun(гиперссылка CTHyperlink, запуск CTR, IRunBody p).
Я не могу сделать даунгрейд poi, потому что я использую функционал 3.10 в другом месте, а библиотеки core/xhtml не имеют более новых версий, чем 1.0.4. Я пытался использовать библиотеку docx4j, но у меня есть некоторые проблемы с ней, но я бы предпочел, чтобы была возможность использовать poi вместо другой библиотеки.
есть вариант решить эту проблему?
спасибо за ответы
org.apache.poi.xwpf.converter
— откуда на самом деле берутся эти банки? - person Gagravarr   schedule 15.12.2014