ブレインセラーズ・ドットコム | brainsellers.com

Brainsellers.com biz-Stream サポート情報


セキュリティ更新適用後のWebサービスサーバ .NETクライアントのエラー発生に関して

2007年08月31日

Windows UpdateなどでMicrosoft社の「セキュリティ更新プログラム (KB931212)」適用後、VB.NETによりWebサービスサーバクライアントアプリケーションが正しく動作しないケースが発生します。

この現象の原因及び対応策に関して説明いたします。

対象バージョン: 4.3以降

1. 対象環境

対象環境: Webサービスサーバのクライアントアプリケーションを、VB.NET等の.NET Framework 2.0 を使用して作成した後、「セキュリティ更新プログラム」 (KB931212)を適用した場合。


2. 発生する現象

Webサービスサーバのクライアントコード実行時、以下のエラーが発生します。

「InvalidOperationException: XML ドキュメントでエラーが発生しました。」


3. 原因

VB.NETよりWebサービスサーバを利用する場合には以下の手順を実行します。

  • ① WSE(Web Services Enhancements 3.0)によりWebサービスサーバのWSDLからスタブコードを生成
  • ② 生成されたスタブコードからVisual Studio 2005によりクラスライブラリを作成
  • ③ ②で作成したプロジェクトの参照設定を行う
  • ④ スタブコードの修正を行う
  • ⑤ 新たにWebサイトを作成し、ASPXファイルを追加
  • ⑥ ⑤で作成したWebサイトにて参照設定を行う


詳細はマニュアル「Webサービスサーバ ユーザガイド 6.3.3 VB.NET(WSE3)を使った例」を参照下さい。

「セキュリティ更新プログラム (KB931212)」を適用後は.NET Framework 2.0のランタイムが更新され、適用前に生成したスタブコードでは正常に動作しません。また、①で生成したスタブコードは適用前と適用後では異なるものになります。

このため、「セキュリティ更新プログラム (KB931212)」を適用した場合には、①~⑥を以下の「4. 対処方法」に従い再度実行します。


4. 対処方法

マニュアル「Webサービスサーバユーザガイド 6.3.3 VB.NET(WSE3)を使った例」にて以下の手順を実行します

● ①~③を実行する。
「セキュリティ更新プログラム (KB931212)」適用前と同じ処理を行います。
この①で生成されるスタブコードは適用前とは異なるものとなります。

● ④スタブコードの一部修正を行う。
スタブコードが異なるものとなるため、未修整のコードおよび修正後のコードは以下のようになります。

【置換前のコード】


GetBodyObject(typeof( (A) ), this.SoapServiceAttribute.TargetNamespace)

【置換後のコード】


GetBodyObject(typeof( (A) ),"http://schemas.brainsellers.com/webservices/ (B) /2006-10")

● ⑤~⑥を実行する。


5. その他

● Webサービスサーバに関しての変更は不要です。
● 「セキュリティ更新プログラム (KB931212)」をアンインストールすることにより以前のスタブコードでも正常に動作します。

ページの先頭へ

copyright©2005 brainsellers.com Corp. All rights reserved.