152

Delphiには以前はWebサービスのデモフォルダが含まれていましたが、現在は含まれていないようです。

Delphi 7デモプロジェクト(SOAPDMServerWADUIがほとんどないサーバーSOAPDMClient)を試したところ、Delphi7でも機能させることができませんでした。

DelphiXEまたはDelphi2010で、SOAPDMServerWAD+SoapDMClientDelphi XEで動作し、少なくともDelphi SOAPサーバーアプリケーションウィザードからの最小限のUIを使用して、古いデモと同じ同様のデモを実行したことがある場合は、それが最適です。

更新:デモはDelphi 2010まで表示されますが、廃止されたWAD(web-app-debugger)を使用しているため、新しいIndyに移植しようとしましたが、runtime/web-app-development-harnessing-code機能しないようです。デモは実行されますが、サーバーにはユーザーインターフェイスがなく、HTTPサーバーを実行していないようです(通常のWebブラウザーを使用して、http://localhost:port/URLを介してテストされています。ちなみに、デモをグーグルで検索すると、このURLが表示されます。 1時間も経たないうちに聞いたのですが、怖いです、グーグル。

Update2以下の私自身の答えを参照してください。動作するコードへのリンクがまもなく登場します。

4

1 に答える 1

41

アイテム28789としてCodeCentralにSOAPのデモの完全なセットを投稿しました。

これらには、フォルダからのDelphi 2007時代のSOAPデモがすべて含まれてWebServicesおり、古いWADサーバーを新しいINDY VCLサーバーに変換するなど、DelphiXEおよびXE2用に更新されています。そうでないことを除いて、あなたはそれが印象的だったと思うでしょう。本当に簡単です。ウィザードを使用して新しいプロジェクトを作成し、Webサービスインターフェイスと実装ユニット、および古いデモに属するその他のユニットをプロジェクトに追加するだけです。それらがプロジェクトに追加されると、それらは機能します。 基本的なデモSOAPサーバーはDelphiで非常に簡単に構築できます。デモが機能するようになると、変更や拡張が非常に簡単になります。

上記の質問に最もよく答えるデモは、SOAPDataModuleサブフォルダーにあります。

2007年のデモの基本的な問題は次の2つです。

  1. WAD(Webアプリデバッガー)はなくなりました。最適なデモ目的のために、Indyサーバーを使用して新しいサーバーを作成する必要があります。これにより、IISでWAD(廃止された)を使用したり、ISAPI環境をセットアップしたりする必要がなくなります。これは、デモ目的にはほとんど理想的ではありません。私が作成した新しいデモプロジェクトはSoapDMServerINDYと呼ばれ、データモジュール(datamod_u.pas)、VCLフォームのユーザーインターフェイスユニット(IndyServerVCLFormUnit.pas)、およびIndyServerWebモジュールで構成されていますIndyServerWebModule.pas

  2. Delphi 2007デモは、デモ実行可能ファイルが含まれているDebug / Win32サブフォルダーを持つという新しい方法のおかげで壊れました。さらに上に進む必要がありますが、データファイルが見つからない場合にエラーメッセージが表示されるようにデモサーバーを修正し、不思議な「XML解析エラー」からあなたを救いました。また、いくつかのデモにエラーチェックを追加して、このデモを機能させるにはInterbaseをインストールする必要があることを示しています。これは、一部のデモではInterbaseをインストールして実行する必要があり、IBLOCALというエイリアスが存在する必要があるためです。できれば、存在するように呼び出されたテーブルEMPLOYEE

ここに画像の説明を入力してください

このデモの要素は、サーバー(SoapDMServerINDY、SOAPDMServerWADのコードに基づく)と、デモに接続して2ページあるクライアントSOAPDMClientで、1ページにはDBGrid +データセットリモーティングを介した基本的なデータアクセスが表示され、2番目のページにはこのページは、カスタムSOAPメソッドを呼び出す方法を示しています。

デモを使用するには:サーバーを起動し、[スタート]ボタンをクリックしてから、クライアントを起動して[接続]をクリックする必要があります。

ここに画像の説明を入力してください

于 2012-03-26T21:02:29.493 に答える