この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

WSDL 使用についての考慮事項

WSDL から Apex クラスを生成する場合、次の点に注意してください。

ヘッダーの対応付け

WSDL ドキュメントで定義されているヘッダーは、生成されたクラスのスタブの公開項目となります。これは、AJAX Toolkit および .NET の動作と似ています。

ランタイムイベントについて

Apex コードで外部サービスへのコールアウトを実行している場合、次のことを確認します。

  • HTTP 要求または Web サービスコールを行う場合のタイムアウト制限の詳細は、「コールアウトの制限事項」を参照してください。
  • Apex クラス内の循環参照は許可されていません。
  • Salesforce ドメインへの複数のループバック接続は許可されていません。
  • エンドポイントにアクセスできるようにするには、[設定] から、[クイック検索] ボックスに「リモートサイトの設定」と入力し、[リモートサイトの設定] を選択してそのエンドポイントを登録します。
  • データベース接続を独占しないよう、トランザクションが開始されないようにします。

変数名でサポートされていない文字について

WSDL ファイルには、Apex 変数名で使用できない要素名を使用できます。WSDL ファイルから Apex 変数名を生成する場合、次のルールが適用されます。

  • 要素名の最初の文字が英字でない場合、生成された Apex 変数名の先頭に文字 x が追加されます。
  • 要素名の最後の文字が Apex 変数名で使用できない場合、生成された Apex 変数名の最後に文字 x が追加されます。
  • 要素名に Apex 変数名で使用できない文字が含まれている場合、その文字は (_) に置き換えられます。
  • 要素名に Apex 変数名で使用できない文字が 2 文字続けて含まれている場合、最初の文字はアンダースコア (_) に置き換えられ、2 番目の文字は x に置き換えられます。これにより、Apex で許可されていない連続した 2 つのアンダースコアが変数名に含まれないようにします。
  • 2 つのパラメータ、a_a_x を使用する操作があるとします。生成される Apex には 2 つの変数があり、いずれも a_x という名前です。このクラスはコンパイルしません。手動で Apex を編集し、いずれかの変数名を変更します。

WSDL ファイルから生成したクラスのデバッグ

Salesforce では、SOAP API、.NET、および Axis でコードをテストします。別のツールを使用すると問題が発生する場合があります。

デバッグヘッダーを使用して、要求の XML を返し、SOAP メッセージに応答して問題の検出を行います。詳細は、「Apex の SOAP API および SOAP ヘッダー」を参照してください。