英語で読む

次の方法で共有


一般的なエラー

ここでは、BizTalk マッパーを使用してマップを作成しているときによく発生するエラー メッセージを示します。

日付の解析時にエラー イベント ID 324 が発生する

問題

マップでデータベース 値抽出機能 functoid を使用して日付フィールドを抽出すると、ドキュメントが送信ドキュメント定義に対する検証に失敗する可能性があります。 BizTalk Serverイベント ログに次のような検証エラーが記録される場合があります。

イベント ソース: BizTalk Server

イベント カテゴリ: ドキュメント処理

イベント ID: 324

説明:

BizTalk Server でエラーが発生しました。

詳細:

------------------------------

XML ドキュメントの検証に失敗しました。日付データ型として '10/12/1995' を解析中にエラーが発生しました。

保留キュー ID: "{A1127909-CA36-4359-B672-7CBA8B60BDAF}"

原因

(データ ソースから返された) 日付形式が、XML で規定されている ISO 8601 形式ではありません。

解決方法

この問題を解決するには、次のいずれかを実行します。

  • 送信ドキュメント定義を編集して、date データ型ではなく string データ型を使用します。

  • データベース値抽出 functoid の出力を ISO 8601 形式に変換するカスタム MicrosoftVisual Basic Script Functoid を作成します。

マップのコンパイル時に内部コンパイラ エラー (アドレス 53624FD6 の 0xc0000005) が発生する

問題

大きなスキーマ、マップ、またはオーケストレーションで構成された単一の BizTalk プロジェクトをコンパイルした場合、次のようなエラーが発生する可能性があります。

内部コンパイラ エラー (アドレス 53624FD6 で0xc0000005): 原因は "CODEGEN" である可能性があります。

原因

Visual Studio コンパイラには、1 つのプロジェクト内のすべての文字列の合計サイズに対して 16 メガバイトの制限があります。 BizTalk プロジェクトをコンパイルしている間、コンパイラはアセンブリ作成のスキーマ、マップ、およびオーケストレーションをシリアル化し、これによってすべての文字列の合計サイズが増加し、制限を超える可能性があります。

解決方法

この問題を解決するには、スキーマまたはマップを個別の BizTalk プロジェクトに分離します。

BizTalk アイテムの型名についてのエラーが発生する

問題

BizTalk プロジェクトで、 System.btm または Microsoft.btm というファイル名でマップを作成 します。 プロジェクトをビルドすると、BizTalk マッパーが次のようなエラーを生成します。

  • "型名 'SerializableAttribute' が存在しません..."

  • "型名 'NonSerializableAttribute' が存在しません..."

  • "型名 'SerializableAttributeAttribute' が存在しません..."

  • "型名 'XLANs' が存在しません..."

原因

[プロパティ] グリッドの [型名] には、SystemMicrosoft などの予約済みの .NET 名前空間を含めないようにする必要があります。

解決方法

この問題を解決するには、次のいずれかの対処方法を使用できます。

  • マップの名前を、.NET の予約語ではない文字列に変更します。 既定では、BizTalk プロジェクト システムは、それぞれの成果物の名前から 型名 を作成します。

    たとえば、 Map1.btm という名前の新しいマップを作成すると、 Type Name プロパティの値が Map1 に設定されます。 ただし、既存の BizTalk 成果物の名前を変更しても 、型名は変更されません。

  • BizTalk プロジェクトのアイテムのファイル名が .NET の予約された名前空間ではないことを確認してください。

BizTalk アイテムのファイル名についてのエラーが発生する

問題

BizTalk プロジェクトをビルドすると、BizTalk マッパーが次のようなエラーを生成します。

  • "ファイル ファイル <名> には、名前空間と型名のプロパティの値が重複しています。"

  • "名前空間 <名> には、'_' の定義が既に含まれています。

原因

BizTalk プロジェクトでは、次のことが検査されます。

  • 複数のアイテムが同じファイル名を持っている。 たとえば、 Map1.xsdMap1.btm などです。

  • ファイル名は、特殊文字 (~!@、など) のみで構成されます。

解決方法

この問題を解決するには、次のいずれかの対処方法を使用できます。

  • ファイルの名前を変更します。 BizTalk プロジェクトのすべてのアイテムのファイル名が一意であることを確認します。

  • BizTalk プロジェクトのすべてのアイテムの型名が一意であることを確認します。

BizTalk マッパーを含む C# ワークフロー プロジェクトを構築すると、EnvDTE.dll のバージョンの競合に関する警告が表示されます。

問題

BizTalk マッパー アクティビティを含む C# ワークフロー プロジェクトを構築すると、EnvDTE.dll のバージョンの競合に関する次の警告が常に表示されます。

"EnvDTE, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" と "EnvDTE, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" の間の競合を解決する方法がありません。 任意で "EnvDTE, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" を選択します。 競合を解決して警告を消去するために、app.config でアセンブリ "EnvDTE, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" をバージョン "7.0.3300.0" [] からバージョン "8.0.0.0" [C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\EnvDTE.dll] にマップし直してください。 C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1360,9): 警告MSB3247: 同じ依存アセンブリの異なるバージョン間で競合が見つかりました。

WorkflowConsoleApplication3 -> C:\Users\btslabs\Desktop\WorkflowConsoleApplication3\bin\Debug\WorkflowConsoleApplication3.exe

原因

これは、マッパー アクティビティが参照している Microsoft.BizTalk.Mapper.OM.dll が原因で発生します。

解決方法

警告を無視します。

参照

マップのトラブルシューティング