Я прочитал руководство по началу работы с docx4j, но не думаю, что полностью понял всю концепцию.
Ну В любом случае... я уже пробовал [шаблон удаления Docx4j][1],
который отлично работал с данным документом, но затем у меня возникла та же проблема, когда я попробовал его на своем собственном шаблоне
Исключения говорят, что HashMap не содержит действительных ключей или значений и, следовательно, не заменяет заполнители.
Я заменил
Код: Выделить всё
В не понял пример с привязкой к данным в файле Getting_Started.pdf, поэтому у меня заканчиваются варианты...
Как я могу просто заменить некоторые строковые тексты из документа? p>
РЕДАКТИРОВАТЬ:
Я обнаружил, что если я добавлю текст в unmarshallFromTemplate.docx и сохраню его, он не заменит новые строки текста.
- Теги каким-то образом разделены на несколько тегов:
Код: Выделить всё
My favourite ice cream is ${DEGREE}.
ну в любом случае вот document.xml Template.docx, который я использую:
http://uploaded.net/file/vz4qr23o
РЕДАКТИРОВАТЬ 2:
Ну, ребята. Я нашел для себя вполне подходящий обходной путь и не знаю, почему на его поиски ушло так много времени.
Как я уже говорил: прогоны разделились, и причиной этого, по моему мнению, был ${}. Поэтому я просто использовал # перед заполнителями и переписал каждый заполнитель, чтобы все это выполнялось за один проход.
Пришлось пару раз переключиться на document.xml и переписать отрывки. но потом это сработало. Затем я просто использовал replace(placeholder, xml) и заменил текст маршаллированного документа.xml, а затем снова его демаршалировал.
Сработало.
Подробнее здесь: https://stackoverflow.com/questions/160 ... xt-in-java