RMS 和 Websphere 6.1 32 位的问题

发布于 2024-09-14 15:42:18 字数 1257 浏览 8 评论 0原文

我遇到了 Websphere 和 RMS 的问题,以下是我所拥有的:

  • Windows 2003,sp2,64 位,企业版。
  • 微软 Office Word 2003 sp3。
  • 该机器连接到域,并且我由域用户(带有电子邮件地址)登录。
  • RMS 客户端已安装。
  • 当尝试从 Word 本身应用 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),一切正常。 之后,我尝试通过调用方法“ApplyPolicy”传递 RMS XML 模板文件的路径来改进此客户端,在 Word 文档上添加 RMS 策略。我尝试了这个客户端,它工作正常。
之后,我改进了该客户端并将其转换为 Web 项目,并尝试将其部署在 Websphere 6.1 上(在我通过将 JACOB dll 放入 websphere 本身的 /bin 目录中,使用 websphere 配置了 JACOB 库之后)。但在此之前,我删除了“ApplyPolicy”调用并尝试了它,它工作正常,MS Word 文件打开,文本替换,结果文件正确保存。之后我恢复了“ApplyPolicy”的调用并尝试了它,但是服务器挂了,并且页面仍在加载,我使用任务管理器检查了进程,发现有一个进程WINWORD.exe,当我尝试杀死它,服务器返回并在其日志中打印错误(遇到 COM 异常:调用:ApplyPolicy 描述:远程过程调用失败。)。
经过调查,我发现当我运行独立的java应用程序并打开任务管理器时,有一个java.exe * 32进程和winword.exe * 32进程,但是当我将其转换为Web应用程序并从在 websphere 内部并检查任务管理器,已经有一个进程 java.exe *32 (在服务器启动时启动),当我调用我的页面时,创建了一个 winword.exe (没有 32)进程并挂起,结果服务器也挂了。 所以请帮助我,任何帮助将不胜感激。

I'm facing a problem with Websphere and RMS, followings are what I have:

  • Windows 2003, sp2, 64 bit, enterprise edition.
  • Microsoft Office word 2003 sp3.
  • The machine is connected to a domain, and I logged-in by a domain user (with email address).
  • RMS client installed.
  • RMS is worked correctly when trying to apply it from Word it self.
  • Websphere v6.1 (6.1.0.21), 32 bit, Java version : IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Windows Server 2003 x86-32 j9vmwi322
    3ifx-20080811 (JIT enabled).

I'm trying to automate the MS word using JACOB library and I allocated the jacob dll (32) in the system32 folder, and I created a stand-alone java client which open MS Word, and open MS word file and do some automation (text-replacing) and this java-client is worked correctly and call the COM application (MS Word) correctly and everything is OK.
After that I tried to improve this client by adding the RMS policy on the word document by invoking the method "ApplyPolicy" passing the path of RMS XML template file. I tried this client and it's working correctly.
After that I improved that client and converted it to a Web-Project and tried to deploy it on Websphere 6.1 (after i configured the JACOB library with websphere by putting the JACOB dll inside the /bin directory for websphere itself). But before that I removed the "ApplyPolicy" invocation and tried it, and it worked correctly, the MS word file opened and the text-replaced and the result file is saved correctly. After that I restored the invocation of "ApplyPolicy" and tried it, but the server hanged, and the page was still loading, I checked the process using TASK manager, I found that there were a process WINWORD.exe, and when I tried to kill it, the server returned back and printed error in it's log (A COM exception has been encountered: At Invoke of: ApplyPolicy Description: The remote procedure call failed.).
After investigating I found that when I run the stand-alone java application and opened the task manager, there was a java.exe *32 process and winword.exe *32 process, but when I converted it to a web application and run it from inside the websphere and checked the task manager there was already a process java.exe *32 (started at the server started up) and when I called my page, a winword.exe (without 32) process created and hanged and as a result the server hanged also.
So please help me, any help will be appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦行七里 2024-09-21 15:42:18

亲爱的,幸运的是,我解决了这个问题,如下所示:
原因不是 64 位环境,而是运行服务器的用户...好吧,我会解释一下:
IBM Websphere Application Engine 服务 配置为由本地系统启动,因此 WASService.exejava.exe 服务由本地系统启动,当 jacob 运行并调用 msword.exe 时,msword.exe 也由本地系统启动,到目前为止一切正常,但自从我调用“< strong>ApplyPolicy”方法,该方法将 RMS 应用于文档,因此 msword.exe 尝试使用本地系统应用策略,这是错误的,因为当您尝试应用 RMS 时,您必须由您的用户应用它由它记录到系统(域用户),系统可以将 RMS 策略应用于文档。因此,为了解决这个问题,我将负责运行“IBM Websphere Application Engine 服务”的用户从本地系统更改为真实域用户(去运行 -> services.exe :搜索 IBM 服务并更改登录用户),现在一切正常。

Dears, Fortunately, I solved this problem as following:
The reason was not the 64-bit environment but the user which is running the server... OK I'll explain:
The IBM Websphere Application Engine service was configured to be started by the local system, so the WASService.exe and the java.exe services are started by the local system and when jacob runs and calls msword.exe the msword.exe started by local system also, till now everything is OK but since I was invoking the "ApplyPolicy" method which apply the RMS on the document so the msword.exe was trying to apply policy using local system and that is wrong, because when you are trying to apply RMS you must apply it by the user you logged by it to the system (domain user), which can apply the RMS policy over a document. So to solve the problem I changed the user who is responsible for running the "IBM Websphere Application Engine service" from local system to real domain user (go to run -> services.exe : search for IBM service and changed the logon user), and everything is OK now.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文