docx4j - NullPointerException em VariablePrepare.prepare ()

votos
0

Quando eu criar um .docx usando a versão online do Office365, então meu programa falha na chamada para VariablePrepare.prepare()

linhas de código relevante:

InputStream inputStream = new ByteArrayInputStream(docxFileContent);
WordprocessingMLPackage wordprocessingMLPackage = WordprocessingMLPackage.load(inputStream);
VariablePrepare.prepare(wordprocessingMLPackage);

rastreamento de pilha:

Caused by: java.lang.NullPointerException
    at org.docx4j.openpackaging.packages.WordprocessingMLPackage.transform(WordprocessingMLPackage.java:271)
    at org.docx4j.openpackaging.packages.WordprocessingMLPackage.filter(WordprocessingMLPackage.java:297)
    at org.docx4j.model.datastorage.migration.VariablePrepare.prepare(VariablePrepare.java:79)

Meu documento criado usando Office Online 365: https://drive.google.com/file/d/1MGZpsKZokmw6nyLbt_aAxsueUBl5tMnq/view?usp=sharing

Observe que quando você inspecionar as propriedades deste arquivo, ele está faltando valores para coisas básicas como Pages, Word Count, contagem de caráter, etc. Veja https://drive.google.com/file/d/1Vvuf2zJvGqigX6SMVu-C6EMsYXu0378I/view? usp = partilha . Se você abrir o documento com uma versão desktop do escritório, então esses valores são subitamente povoada eo acidente não ocorre mais. Este problema é específico para documentos provenientes de Office Online 365.

Publicado 27/11/2018 em 18:11
fonte usuário
Em outras línguas...                            


1 respostas

votos
0

Agora fixado em https://github.com/plutext/docx4j/commit/b877520c0a02804f00b2fce57d56405f045947f0

que pouco do código foi assumindo palavra / document.xml, o que é incorreto para o documento.

Essa correção será em docx4j 6.1.0 (e em um lançamento noturno, mais cedo).

Respondeu 28/11/2018 em 00:17
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more