У меня возникла проблема с Websphere и RMS, вот что у меня есть:
- Windows 2003, пакет обновлений 2, 64-разрядная версия для предприятий.
- Microsoft Office Word 2003 SP3.
- Машина подключена к домену, и я вошел в систему под пользователем домена (с адресом электронной почты).
- Установлен RMS-клиент.
- RMS работает правильно при попытке применить его из самого Word.
- Websphere v6.1 (6.1.0.21), 32-разрядная версия Java: виртуальная машина IBM J9 (сборка 2.3, J2RE 1.5.0 IBM J9 2.3 Windows Server 2003 x86-32 j9vmwi322 3ifx-20080811 (JIT включен).
Я пытаюсь автоматизировать MS Word, используя библиотеку JACOB, и я разместил dll jacob (32) в папке system32, и я создал автономный Java-клиент, который открывает MS Word и открывает MS word и сделать некоторую автоматизацию (замену текста) и этот java-клиент работает корректно и вызов COM-приложения (MS Word) корректно и все ОК. После этого я попытался улучшить этот клиент, добавив политику RMS в документ Word, вызвав метод «ApplyPolicy», передав путь к файлу шаблона RMS XML. Я попробовал этот клиент, и он работает правильно.
После этого я улучшил этот клиент, преобразовал его в веб-проект и попытался развернуть его на Websphere 6.1 (после того, как я настроил библиотеку JACOB с помощью websphere, поместив dll JACOB внутри /bin для самой вебсферы). Но перед этим я удалил вызов "ApplyPolicy" и попробовал, и он работал правильно, файл MS Word открылся и текст был заменен, и файл результата сохранен правильно. После этого я восстановил вызов "ApplyPolicy" и попробовал, но сервер завис, а страница все еще загружалась, я проверил процесс с помощью диспетчера задач, я обнаружил, что там был процесс WINWORD.exe, и когда я попытался убить его, сервер вернулся и напечатал в своем журнале ошибку (Обнаружено исключение COM: At Invoke of: ApplyPolicy Description: Ошибка удаленного вызова процедуры.).
После расследования я обнаружил, что что, когда я запускаю автономное java-приложение и открываю диспетчер задач, там был процесс java.exe *32 и процесс winword.exe *32, но когда я преобразовал его в веб-приложение и запустил его изнутри веб-сферы и проверил диспетчером задач там уже был процесс java.exe *32 (запустился при запуске сервера) и когда я позвонил на свою страницу, то создался и завис процесс winword.exe (без 32) и в итоге сервер тоже завис. Поэтому, пожалуйста, помогите мне, любая помощь будет оценена.