0

私は Websphere と RMS で問題に直面しています。私が持っているものは次のとおりです。

  • Windows 2003、sp2、64 ビット、エンタープライズ エディション。
  • マイクロソフト オフィス ワード 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ワードを自動化しようとしており、jacob dll(32)をsystem32フォルダーに割り当て、MS Wordを開き、MSワードファイルを開いて自動化を行うスタンドアロンのJavaクライアントを作成しました( text-replaceing)、この Java クライアントは正しく動作し、COM アプリケーション (MS Word) を正しく呼び出すと、すべて問題ありません。その後、RMS XML テンプレート ファイルのパスを渡すメソッド「 ApplyPolicy 」を呼び出して、word ドキュメントに RMS ポリシーを追加することで、このクライアントを改善しようとしました。このクライアントを試してみましたが、正しく動作しています。
その後、私はそのクライアントを改善し、それを Web プロジェクトに変換し、Websphere 6.1 にデプロイしようとしました (Websphere 自体の /bin ディレクトリ内に JACOB dll を配置して、Websphere で JACOB ライブラリを構成した後)。しかし、その前に「ApplyPolicy」呼び出しを削除して試してみたところ、正しく機能し、MS Word ファイルが開かれ、テキストが置き換えられ、結果ファイルが正しく保存されました。その後、「ApplyPolicy」の呼び出しを復元して試してみましたが、サーバーがハングアップし、ページがロードされたままになり、TASK マネージャーを使用してプロセスを確認したところ、プロセス WINWORD.exe が存在することがわかり、実行しようとするとそれを殺すと、サーバーは戻ってきて、そのログにエラーを出力しました ( A COM 例外が発生しました: At Invoke of: ApplyPolicy 説明:)。
調べてみると、スタンドアローンのJavaアプリを実行してタスクマネージャーを開くとjava.exe *32プロセスとwinword.exe *32プロセスがあったのですが、Webアプリに変換してから実行するとWebsphere内でタスクマネージャーを確認すると、すでにプロセスjava.exe * 32(サーバーの起動時に開始)があり、ページを呼び出すと、winword.exe(32なし)プロセスが作成されてハングし、その結果、サーバーもハングアップしました。だから私を助けてください、どんな助けも大歓迎です。

4

1 に答える 1

0

親愛なる、幸いなことに、この問題は次のように解決しました: 理由は 64 ビット環境ではなく、サーバーを実行しているユーザーでした... OK 説明します:
IBM Websphere Application Engine サービスは、local systemであるため、WASService.exejava.exeサービスはローカル システムによって開始され、jacob が実行されて msword.exe が呼び出されると msword.exe もローカル システムによって開始されます。これまではすべて問題ありませんでしたが、 " ApplyPolicy" ドキュメントに RMS を適用する方法では、msword.exe はローカル システムを使用してポリシーを適用しようとしていましたが、これは間違っています。RMS を適用しようとするときは、システムにログインしたユーザーによって適用する必要があるためです (ドキュメントに RMS ポリシーを適用できるドメイン ユーザー) そこで、この問題を解決するために、「IBM Websphere Application Engine サービス」の実行を担当するユーザーを、ローカル システムから実際のドメイン ユーザーに変更しました ( [実行] -> [サービス] に移動します)。 .exe : IBM サービスを検索し、ログオン ユーザーを変更しました)。これですべて問題ありません。

于 2010-08-18T08:06:55.090 に答える