Проблема при загрузке документа Word с помощью docx4jJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Проблема при загрузке документа Word с помощью docx4j

Сообщение Anonymous »

Я пытаюсь использовать docx4j для взаимодействия с текстовыми документами в своей программе (до того, как я использовал Apache POI). Но я столкнулся с проблемой в самом начале. Я скачал последнюю версию docx4j (11.4). Вот мой код:

Код: Выделить всё

String path = "input.docx";
File file = new File(path);
try {
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(file);
HashMap mappings = new HashMap();
VariablePrepare.prepare(wordMLPackage);
mappings. Put("", new SimpleDateFormat("d MMMM yyyy").format(new Date()));
mappings. Put("%", "Hello");
mappings. Put("#", "Word");

wordMLPackage.getMainDocumentPart().variableReplace(mappings);
wordMLPackage.save("output.docx");

} catch (Docx4JException e) {
System.out.println("Docx4JException");
throw new RuntimeException(e);
} catch (JAXBException e) {
System.out.println("JAXBException");
throw new RuntimeException(e);
} catch (Exception e) {
System.out.println("Exception");
throw new RuntimeException(e);
}

У меня возникла проблема с этой строкой, и я не понимаю, почему:

Код: Выделить всё

WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(file);
Вот журнал ошибок IntelliJ IDEA:

Исключение в потоке «Поток приложения JavaFX» " java.lang.NoSuchMethodError: 'org.apache.commons.compress.archivers.zip.ZipArchiveEntry org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.getNextEntry()'
в org.docx4j.openpackaging. io3.stores.ZipPartStore.(ZipPartStore.java:141)
на org.docx4j.openpackaging.packages.OpcPackage.load(OpcPackage.java:570)
на org.docx4j.openpackaging.packages.OpcPackage .load(OpcPackage.java:421)
в org.docx4j.openpackaging.packages.OpcPackage.load(OpcPackage.java:298)
в org.docx4j.openpackaging.packages.OpcPackage.load(OpcPackage .java:276)
на org.docx4j.openpackaging.packages.WordprocessingMLPackage.load(WordprocessingMLPackage.java:170)
на fr.analyse.assistant.model.Word.printingLetters(Word.java:307) )
at fr.analyse.assistant.controllers.VController.letter(VController.java:470)
at fr.analyse.assistant.controllers.VController.lambda$initialize$6(VController.java:215)
по адресу [email protected]/com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86)
по адресу [email protected]/com.sun.javafx. event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:232)
в [email protected]/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:189)
в javafx. [email protected]/com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59)
at [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher .java:58)
по адресу [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
по адресу [email protected]/com .sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
по адресу [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
по адресу [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
по адресу [email protected]/com.sun.javafx.event. EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
в [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
в javafx.base@ 21.0.1/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
по адресу [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java :56)
по адресу [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
по адресу [email protected]/com.sun .javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
по адресу [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
по адресу [email protected]/com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
по адресу [email protected]/com.sun.javafx.event.EventUtil. fireEvent(EventUtil.java:49)
по адресу [email protected]/javafx.event.Event.fireEvent(Event.java:198)
по адресу [email protected]/javafx. Scene.Node.fireEvent(Node.java:8875)
по адресу [email protected]/javafx.scene.control.Button.fire(Button.java:203)
по адресу javafx.controls@ 21.0.1/com.sun.javafx.scene.control.behavior.ButtonBehavior.mouseReleased(ButtonBehavior.java:207)
по адресу [email protected]/com.sun.javafx.scene.control.inputmap .InputMap.handle(InputMap.java:274)
в [email protected]/com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(CompositeEventHandler.java:247)
в javafx [email protected]/com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:80)
at [email protected]/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent( EventHandlerManager.java:232)
по адресу [email protected]/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:189)
по адресу [email protected]/ com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59)
по адресу [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)по адресу [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
по адресу [email protected]/com.sun.javafx.event .BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
в [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
в javafx.base @21.0.1/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
по адресу [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl. java:114)
по адресу [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
по адресу [email protected]/com. sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
по адресу [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
at [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
at [email protected]/com.sun.javafx.event.BasicEventDispatcher .dispatchEvent(BasicEventDispatcher.java:56)
в [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
в [email protected] .1/com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
по адресу [email protected]/com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java: 54)
по адресу [email protected]/javafx.event.Event.fireEvent(Event.java:198)
по адресу [email protected]/javafx.scene.Scene$MouseHandler. процесс(Scene.java:3984)
по адресу [email protected]/javafx.scene.Scene.processMouseEvent(Scene.java:1890)
по адресу [email protected]/javafx. Scene.Scene$ScenePeerListener.mouseEvent(Scene.java:2708)
по адресу [email protected]/com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:411)at [email protected]/com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:301)
at java.base/java.security.AccessController.doPrivileged (AccessController.java:400)
в [email protected]/com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$2(GlassViewEventHandler.java:450)
в javafx. [email protected]/com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(QuantumToolkit.java:424)
по адресу [email protected]/com.sun.javafx.tk.quantum.GlassViewEventHandler .handleMouseEvent(GlassViewEventHandler.java:449)
по адресу [email protected]/com.sun.glass.ui.View.handleMouseEvent(View.java:551)
по адресу [email protected] .1/com.sun.glass.ui.View.notifyMouse(View.java:937)
по адресу [email protected]/com.sun.glass.ui.win.WinApplication._runLoop(собственный метод )
по адресу [email protected]/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:185)
по адресу java.base/java.lang. Thread.run(Thread.java:1583)

Я искал в Google, почему это произошло, но ничего не нашел. Никаких статей по этой проблеме нет.
PS: Надеюсь, понятно

Подробнее здесь: https://stackoverflow.com/questions/785 ... ith-docx4j
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»