Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java RMS和Websphere 6.1 32位存在问题_Java_Ms Word_Websphere 6.1_Jacob_Rms - Fatal编程技术网

Java RMS和Websphere 6.1 32位存在问题

Java RMS和Websphere 6.1 32位存在问题,java,ms-word,websphere-6.1,jacob,rms,Java,Ms Word,Websphere 6.1,Jacob,Rms,我在Websphere和RMS方面面临一个问题,以下是我的问题: Windows 2003,sp2,64位,企业版 微软Office word 2003 sp3 机器已连接到域,我已由域用户(使用电子邮件地址)登录 已安装RMS客户端 当尝试从Word it自身应用RMS时,RMS工作正常 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 j9

我在Websphere和RMS方面面临一个问题,以下是我的问题:

  • Windows 2003,sp2,64位,企业版
  • 微软Office word 2003 sp3
  • 机器已连接到域,我已由域用户(使用电子邮件地址)登录
  • 已安装RMS客户端
  • 当尝试从Word it自身应用RMS时,RMS工作正常
  • 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,我在system32文件夹中分配了雅各布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”的调用并尝试了,但服务器挂起,页面仍在加载,我使用任务管理器检查了该进程,发现有一个进程WINWORD.exe,当我试图杀死它时,服务器返回并在其日志中打印错误(在调用时遇到COM异常:ApplyPolicy说明:远程过程调用失败。)。
经过调查,我发现当我运行独立java应用程序并打开任务管理器时,有一个java.exe*32进程和winword.exe*32进程,但当我将其转换为web应用程序并从websphere内部运行它并检查任务管理器时,已经有一个java.exe*32进程(在服务器启动时启动)当我调用我的页面时,创建并挂起了一个winword.exe(没有32个)进程,结果服务器也挂起了。
因此,请帮助我,任何帮助都将不胜感激。

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