Delphi XEのSOAPサーバーとクライアントアプリケーションのVCL + indyデモ?


151

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

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

Delphi XEまたはDelphi 2010で、以前のSOAPDMServerWAD+SoapDMClientデモと同じように、Delphi XEで機能し、少なくともDelphi SOAP Serverアプリケーションウィザードからの最小限のUIを使用して同様のデモを行ったことがあれば、それは完璧です。

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

Update2下記の私自身の回答を参照してください。リンクはすぐに機能するコードで提供されます。


3
[オフトピック]数か月前にDelphiでかなりシンプルなSOAPクライアントを作成する必要があり、かなりの頭痛と生産性の浪費であることが判明したので、その間に別の方法を探すことをお勧めします。
ComputerSaysNo

13
@Dorin-WSDLインポーターを使用すると、SOAPクライアントを非常に簡単に作成できます。
Robert Love

8
@Robertそれは頭痛を与えているその部分ではありません、それはドキュメンテーションとデモの欠如などです。私が理解したことから、私にあまり役立たなかった単純なクライアントのためにSOAPについて多くを学ばなければなりませんでしたJavaの方が簡単ですが、試したことはありません=>私はDelphiのハードユーザーです。
ComputerSaysNo

5
最も簡単な石鹸は.net wcfです
非表示

5
edn.embarcadero.com/article/40973にチュートリアルビデオがあります。関係ありますか?
Alex

回答:


39

SOAPのデモ一式をCodeCentralに28789として投稿しました。

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

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

2007年のデモの基本的な問題は2つあります。

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

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

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

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

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

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


1
努力のブラボー!修正済みのデモを投稿できない場合は、おそらくdiff / patchでできますか?
Chris Thornton

8
これは、オープンソースコミュニティの古い原則です。自分のかゆみを掻き消し、結果を共有してください。うまくいけば、それがすべての人に利益をもたらすだけでなく、時間の経過とともに、私たちだけではできないことを一緒に行うことができるコミュニティを構築できます。問題が見つかった場合は、バグレポートを送ってください。
Warren P
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.