Java lib для преобразования WordML в Word2002 - PullRequest
2 голосов
/ 14 июля 2010

Для проекта, над которым я работаю, мне нужно преобразовать поток WordML в Word 2002-совместимый формат .doc (не спрашивайте, почему, но довольно большая группа пользователей все еще использует Word 2002 с невозможным обновлением до последней версии).до 4 квартала 2010 г.).Я пытался исследовать множество вариантов и в основном зашел в тупик.

Мой пример использования: существует существующая веб-служба на основе Java (запущенная в Solaris под Tomcat), которая по запросу пользователя выполняет вызов сторонней службы.Этот сервис 3rdParty вернет документ PDF и документ WordML.Затем нам нужно преобразовать документ Word ML в формат Word 2002, и наш веб-сервис обновит страницу, чтобы связать ее как с документом PDF, так и с документом Word 2002, который затем может быть открыт пользователями веб-службы.

Aspose.Words for Javaбыла моей лучшей ставкой, однако она также вернула UnsupportedDocumentFormat исключение для WordML.Сначала я подумал, что это может быть мой документ, но все остальные документы тоже не сработали, а затем продолжили работу с Aspose, несмотря на документацию, WordML в Java не поддерживается в текущем выпуске (http://www.aspose.com/community/forums/248442/wordml-support/showthread.aspx#248442)

Я бы пошел по путинаписание службы .Net для преобразования - но там тоже есть несколько проблем - (а) Мой сервис [существующий] работает на Solaris Box (б) MS не рекомендует автоматизировать слова таким образом из-за плохой производительности многопоточности (c) Используйте Aspose.Words для .Net - однако это означает значительные затраты на оборудование + лицензии .Net и т. д.

Я изучил возможность найти такую ​​возможность для преобразования WordML-> RTF, но также не нашел подходящей библиотеки для этого.Помимо того, что WordML будет включать в себя некоторые здоровенные графики, которые мы еще не знаем, поддерживаются в RTF, и мы не можем найти их, поскольку в данный момент нам доступен только WordML с установкой Word 2002.

Итак, сводится к этому: есть ли библиотека, кроме Aspose.Words для Java доступны для преобразования WordML-> Word2002 [или rtf], которое не зависит от того, что хост Windows делает (оставьте в покое фактическую установку MS Word).

Извиняюсь за длинный вопрос, но я на самом деле невозможность выяснить любой вариант.Любая помощь / предложение / указатели на подходящую библиотеку будут очень полезны.Платные библиотеки могут подойти, если у нас есть возможность опробовать его заранее, чтобы подготовить аргументы для спонсора проекта.

Ответы [ 2 ]

1 голос
/ 14 июля 2010

Вы можете выполнить свои потребности с помощью Apache POI .Это облегчает разработчикам читать и писать Microsoft OLE 2 Compound Document с.Но это doesn't read or write RTF Documents.Вы можете read from WordML и write as Word 2002 format.Попробуйте ...

0 голосов
/ 19 октября 2010

docx4j может читать 2007 WordML. Вы можете попробовать написать RTF с помощью FOP или iText (я сам не пробовал).

...