我正面临 Websphere 和 RMS 的问题,以下是我所拥有的:
- Windows 2003,sp2,64 位,企业版。
- 微软办公字 2003 sp3。
- 该机器已连接到域,并且我由域用户(使用电子邮件地址)登录。
- 已安装 RMS 客户端。
- 尝试从 Word it self 应用RMS 时,RMS 工作正常。
- Websphere v6.1 (6.1.0.21),32 位,Java 版本:IBM J9 VM(内部版本 2.3,J2RE 1.5.0 IBM J9 2.3 Windows Server 2003 x86-32 j9vmwi322 3ifx-20080811(启用 JIT)。
我正在尝试使用JACOB库自动化 MS Word,并在 system32 文件夹中分配了 jacob dll (32),并创建了一个独立的 java 客户端,它打开 MS Word,打开 MS Word 文件并进行一些自动化操作(文本替换),这个java客户端工作正常,正确调用COM应用程序(MS Word),一切正常。之后,我尝试通过调用传递 RMS XML 模板文件路径的方法“ ApplyPolicy ”在 Word 文档上添加 RMS 策略来改进此客户端。我试过这个客户端,它工作正常。
之后,我改进了该客户端并将其转换为 Web 项目并尝试将其部署在 Websphere 6.1 上(在我通过将 JACOB dll 放入 websphere 本身的 /bin 目录中配置了带有 websphere 的 JACOB 库之后)。但在此之前,我删除了“ApplyPolicy”调用并尝试了它,它工作正常,MS word 文件打开并替换了文本,结果文件被正确保存。之后我恢复了“ApplyPolicy”的调用并尝试了,但是服务器挂了,页面还在加载中,我使用TASK管理器检查了进程,我发现有一个进程WINWORD.exe,当我尝试时杀死它,服务器返回并在其日志中打印错误(遇到 COM 异常:在调用时:ApplyPolicy 描述:)。
查了一下发现我运行独立的java应用打开任务管理器有一个java.exe *32进程和winword.exe *32进程,但是当我转换成web应用运行从在 websphere 内部并检查了任务管理器,已经有一个进程 java.exe *32(在服务器启动时启动),当我调用我的页面时,创建并挂起一个 winword.exe(没有 32)进程,结果服务器也挂了。所以请帮助我,任何帮助将不胜感激。